LangWatch Simulation Runs API

The Simulation Runs API from LangWatch — 3 operation(s) for simulation runs.

Documentation

Specifications

OpenAPI Specification

langwatch-simulation-runs-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: LangWatch Agents Simulation Runs API
  version: 1.0.0
  description: LangWatch openapi spec
servers:
- url: https://app.langwatch.ai
security:
- project_api_key: []
tags:
- name: Simulation Runs
paths:
  /api/simulation-runs:
    get:
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  runs:
                    type: array
                    items:
                      type: object
                      properties:
                        scenarioId:
                          type: string
                        batchRunId:
                          type: string
                        scenarioRunId:
                          type: string
                        name:
                          type:
                          - string
                          - 'null'
                        description:
                          type:
                          - string
                          - 'null'
                        status:
                          type: string
                        results:
                          type:
                          - object
                          - 'null'
                          properties:
                            verdict:
                              type:
                              - string
                              - 'null'
                            reasoning:
                              type:
                              - string
                              - 'null'
                            metCriteria:
                              type: array
                              items:
                                type: string
                            unmetCriteria:
                              type: array
                              items:
                                type: string
                            error:
                              type:
                              - string
                              - 'null'
                        messages:
                          type: array
                          items:
                            type: object
                            properties:
                              role:
                                type: string
                              content:
                                type: string
                            required:
                            - role
                            - content
                        timestamp:
                          type: number
                        updatedAt:
                          type: number
                        durationInMs:
                          type: number
                        totalCost:
                          type: number
                        platformUrl:
                          type: string
                          format: uri
                      required:
                      - scenarioId
                      - batchRunId
                      - scenarioRunId
                      - name
                      - description
                      - status
                      - results
                      - messages
                      - timestamp
                      - updatedAt
                      - durationInMs
                      - platformUrl
                  hasMore:
                    type: boolean
                  nextCursor:
                    type: string
                required:
                - runs
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
      operationId: getApiSimulation-runs
      parameters:
      - in: query
        name: scenarioSetId
        schema:
          type: string
      - in: query
        name: batchRunId
        schema:
          type: string
      - in: query
        name: limit
        schema:
          type: integer
          exclusiveMinimum: 0
          maximum: 100
          default: 20
      - in: query
        name: cursor
        schema:
          type: string
      description: List simulation runs, optionally filtered by scenarioSetId or batchRunId
      tags:
      - Simulation Runs
  /api/simulation-runs/batches/list:
    get:
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  batches:
                    type: array
                    items:
                      type: object
                      properties:
                        batchRunId:
                          type: string
                        totalCount:
                          type: number
                        passCount:
                          type: number
                        failCount:
                          type: number
                        runningCount:
                          type: number
                        stalledCount:
                          type: number
                        lastRunAt:
                          type: number
                        lastUpdatedAt:
                          type: number
                        firstCompletedAt:
                          type:
                          - number
                          - 'null'
                        allCompletedAt:
                          type:
                          - number
                          - 'null'
                      required:
                      - batchRunId
                      - totalCount
                      - passCount
                      - failCount
                      - runningCount
                      - stalledCount
                      - lastRunAt
                      - lastUpdatedAt
                      - firstCompletedAt
                      - allCompletedAt
                  hasMore:
                    type: boolean
                  nextCursor:
                    type: string
                required:
                - batches
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
      operationId: getApiSimulation-runsBatchesList
      parameters:
      - in: query
        name: scenarioSetId
        schema:
          type: string
        required: true
      - in: query
        name: limit
        schema:
          type: integer
          exclusiveMinimum: 0
          maximum: 50
          default: 10
        required: false
      - in: query
        name: cursor
        schema:
          type: string
        required: false
      description: List batch summaries for a scenario set (pass/fail counts per batch)
      tags:
      - Simulation Runs
  /api/simulation-runs/{scenarioRunId}:
    get:
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  scenarioId:
                    type: string
                  batchRunId:
                    type: string
                  scenarioRunId:
                    type: string
                  name:
                    type:
                    - string
                    - 'null'
                  description:
                    type:
                    - string
                    - 'null'
                  status:
                    type: string
                  results:
                    type:
                    - object
                    - 'null'
                    properties:
                      verdict:
                        type:
                        - string
                        - 'null'
                      reasoning:
                        type:
                        - string
                        - 'null'
                      metCriteria:
                        type: array
                        items:
                          type: string
                      unmetCriteria:
                        type: array
                        items:
                          type: string
                      error:
                        type:
                        - string
                        - 'null'
                  messages:
                    type: array
                    items:
                      type: object
                      properties:
                        role:
                          type: string
                        content:
                          type: string
                      required:
                      - role
                      - content
                  timestamp:
                    type: number
                  updatedAt:
                    type: number
                  durationInMs:
                    type: number
                  totalCost:
                    type: number
                  platformUrl:
                    type: string
                    format: uri
                required:
                - scenarioId
                - batchRunId
                - scenarioRunId
                - name
                - description
                - status
                - results
                - messages
                - timestamp
                - updatedAt
                - durationInMs
                - platformUrl
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
        '404':
          description: Run not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                required:
                - error
      operationId: getApiSimulation-runsByScenarioRunId
      parameters:
      - schema:
          type: string
        in: path
        name: scenarioRunId
        required: true
      description: Get a single simulation run by its ID
      tags:
      - Simulation Runs
components:
  securitySchemes:
    project_api_key:
      type: apiKey
      in: header
      name: X-Auth-Token
      description: 'Project API key for sending traces and accessing project-scoped resources. Format: sk-lw-... (no underscore). Obtain one by creating a project via the Admin API or the LangWatch UI.'
    admin_api_key:
      type: http
      scheme: bearer
      description: 'Admin API key for organization-level operations (managing projects, API keys). Create one in Settings > API Keys or via POST /api/api-keys. Format: sk-lw-{id}_{secret}.'