> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.uponai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create test case definition

> Create a simulation test case definition for a response engine.



## OpenAPI

````yaml /openapi.json post /api/test-case-definitions
openapi: 3.1.0
info:
  title: UponAI Platform API
  version: '2026-04-20'
  description: >-
    Programmatic control plane for configuring UponAI agents, LLM
    configurations, conversation flows, knowledge bases, calls, chats, voices,
    and test tooling. All endpoints require a bearer token obtained from your
    profile settings.
servers:
  - url: https://api.upon-ai.com
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Calls
    description: Initiate and manage UponAI powered voice and web calls.
  - name: Agents
    description: Configure agents that power calls and web sessions.
  - name: LLM Models
    description: Manage reusable large language model configurations for agents.
  - name: Chat Agents
    description: Configure agents for browser and messaging chat sessions.
  - name: Chats
    description: Start and manage live chat sessions.
  - name: Conversation Flows
    description: Build and maintain reusable dialog graphs for agents.
  - name: Knowledge Bases
    description: Store and curate grounded knowledge sources.
  - name: Voices
    description: Discover, search, add, and clone speech synthesis voices.
  - name: Test Case Definitions
    description: Define simulation test cases for response engines.
  - name: Test Runs
    description: Retrieve results for individual and batch test runs.
  - name: Account
    description: Account level utilities and limits.
  - name: Phone Numbers
    description: List and assign phone numbers to agents.
paths:
  /api/test-case-definitions:
    post:
      tags:
        - Test Case Definitions
      summary: Create test case definition
      description: Create a simulation test case definition for a response engine.
      parameters:
        - $ref: '#/components/parameters/XActorType'
        - $ref: '#/components/parameters/XProviderId'
        - $ref: '#/components/parameters/XTenantId'
        - $ref: '#/components/parameters/XImpersonationReason'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TestCaseDefinition'
      responses:
        '201':
          description: Created test case definition.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestCaseDefinition'
components:
  parameters:
    XActorType:
      name: X-Actor-Type
      in: header
      required: false
      schema:
        type: string
        enum:
          - platform_admin
          - provider_admin
          - tenant_admin
          - end_user
      description: Optional actor type for privileged white-label context selection.
    XProviderId:
      name: X-Provider-Id
      in: header
      required: false
      schema:
        type: integer
      description: Optional provider scope identifier for privileged multi-tenant access.
    XTenantId:
      name: X-Tenant-Id
      in: header
      required: false
      schema:
        type: integer
      description: Optional tenant/workspace context override.
    XImpersonationReason:
      name: X-Impersonation-Reason
      in: header
      required: false
      schema:
        type: string
      description: >-
        Required for privileged tenant-scoped requests when actor type is
        platform or provider admin.
  schemas:
    TestCaseDefinition:
      type: object
      properties:
        test_case_definition_id:
          type: string
        workspaceId:
          type: integer
        type:
          type: string
          enum:
            - llm
            - conversation-flow
        llm_id:
          type: string
          nullable: true
        conversation_flow_id:
          type: string
          nullable: true
        version:
          type: integer
          nullable: true
        name:
          type: string
        description:
          type: string
          nullable: true
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Generate tokens from your profile settings at app.uponai.com.

````