Test Cases

Create Test Case

Changed on

Creates a simulation test case for the specified agent. Define the scenario using user persona, goals, and evaluation criteria. Returns the created test case, including its testCaseId for subsequent get, update, delete, and batch-run calls.

post/v1/test-cases

Request

  • Base URL
    https://api.sigmamind.ai
  • Auth
    API key in header X-API-Key

Request body

labelstring

A human-readable name or label for the test case, used to identify it in reports and dashboards.

agentIdstring required

The unique identifier of the Agent that will respond during the chat simulation.

mockToolDatastring[]

A list of identifiers of mock tool data to bind to this test case. Each entry is a mockToolDataId.

userPromptstring required

A prompt that defines the persona and intent of the simulated user. This drives the user-side messages throughout the conversation.

attemptinteger

The number of times this test case should be executed. Each run is an independent simulation. Defaults to 1.

successCriteriastring[] required

Ordered goals for this simulation. Each item is evaluated on its own. A single string is accepted and stored as a one-item list.

Example request

{
  "label": "Angry Customer - Cancellation Flow",
  "agentId": "agent_D5D0p7TUs66TTAEAx",
  "mockData": [
    {
      "variableName": "customer_name",
      "value": "John Doe"
    },
    {
      "variableName": "account_status",
      "value": "active"
    }
  ],
  "mockToolData": [
    "mock_dpKjqjKnY3z6gABF"
  ],
  "userPrompt": "You are an angry customer who wants to cancel their subscription.",
  "attempt": 5,
  "successCriteria": [
    "Agent was able to successfully look up the order.",
    "Agent was able to successfully close the call."
  ]
}

Response

Created

testCaseIdstring

The unique identifier of the test case.

labelstring

A human-readable name or label for the test case, used to identify it in reports and dashboards.

workspaceIdstring

The unique identifier of the workspace under which this test case was created.

llmModelstring

The LLM model used to generate Agent responses during the simulation.

userPromptstring

The prompt that defined the persona and intent of the simulated user, driving the user-side messages throughout the conversation.

attemptinteger

The number of times this test case was configured to run as independent simulation attempts.

successCriteriastring[]

Ordered goals used to evaluate the agent after each simulation run.

Example response

{
  "testCaseId": "tc_d17T6uReChpyfFeP",
  "label": "Angry Customer - Cancellation Flow",
  "agent": {
    "name": "New AI Agent",
    "agentId": "agent_D5D0p7TUs66TTAEAx",
    "status": "Live"
  },
  "workspaceId": "org_V6eZ2zg8ziDx5pft",
  "llmModel": "gpt-5.6-luna",
  "mockData": [
    {
      "variableName": "customer_name",
      "value": "John Doe"
    },
    {
      "variableName": "account_status",
      "value": "active"
    }
  ],
  "mockToolData": [
    {
      "toolAlias": "get_order",
      "mockToolDataId": "mock_dpKjqjKnY3z6gABF",
      "name": "Success - Empty List",
      "statusCode": 200
    }
  ],
  "userPrompt": "You are an angry customer who wants to cancel your subscription.",
  "attempt": 5,
  "successCriteria": [
    "Agent was able to successfully look up the order.",
    "Agent was able to successfully close the call."
  ]
}

Changes

    • breaking

      the request property type changed from string to array

    • breaking

      the response's property type changed from string to array for status

    • warning

      removed the request property

    • info

      added the new optional request property

    • info

      added the optional property to the response with the status