openapi: 3.0.1 info: title: Coval Agents Simulations API description: Simulation and evaluation API for AI voice and chat agents. Manage agents, test sets and test cases, personas, metrics and their thresholds and baselines, simulation runs, run templates, scheduled runs, individual simulations, reports, and production conversations. All paths are relative to the production base URL https://api.coval.dev/v1 and authenticated with the X-API-Key header. Endpoints in this document are drawn from Coval's live per-resource OpenAPI specifications served from https://api.coval.dev/v1/openapi. termsOfService: https://coval.dev/terms contact: name: Coval API Support email: support@coval.dev url: https://docs.coval.dev license: name: Proprietary url: https://coval.dev/terms version: 1.0.0 servers: - url: https://api.coval.dev/v1 description: Production API security: - ApiKeyAuth: [] tags: - name: Simulations description: Inspect individual simulation results. paths: /simulations: get: operationId: listSimulations summary: List simulations tags: - Simulations parameters: - name: run_id in: query schema: type: string - $ref: '#/components/parameters/Limit' - $ref: '#/components/parameters/Cursor' responses: '200': description: A list of simulations. /simulations/{simulation_id}: parameters: - $ref: '#/components/parameters/SimulationId' get: operationId: getSimulation summary: Get simulation tags: - Simulations responses: '200': description: The requested simulation, including transcript and metadata. patch: operationId: updateSimulation summary: Update simulation tags: - Simulations requestBody: required: true content: application/json: schema: type: object responses: '200': description: Updated simulation. delete: operationId: deleteSimulation summary: Delete or cancel simulation tags: - Simulations responses: '204': description: Simulation deleted or cancelled. /simulations/{simulation_id}/resimulate: parameters: - $ref: '#/components/parameters/SimulationId' post: operationId: resimulateSimulation summary: Rerun a simulation tags: - Simulations responses: '201': description: Re-simulation started. /simulations/{simulation_id}/audio: parameters: - $ref: '#/components/parameters/SimulationId' get: operationId: getAudioURL summary: Get audio file URL tags: - Simulations responses: '200': description: A URL to the simulation audio file. /simulations/{simulation_id}/metrics: parameters: - $ref: '#/components/parameters/SimulationId' get: operationId: listSimulationMetrics summary: List metrics tags: - Simulations responses: '200': description: A list of metric outputs for the simulation. /simulations/{simulation_id}/metrics/{metric_output_id}: parameters: - $ref: '#/components/parameters/SimulationId' - name: metric_output_id in: path required: true schema: type: string get: operationId: getSimulationMetric summary: Get simulation metric output(s) tags: - Simulations responses: '200': description: A single simulation metric output. components: parameters: Cursor: name: cursor in: query description: Pagination cursor. schema: type: string SimulationId: name: simulation_id in: path required: true schema: type: string Limit: name: limit in: query description: Maximum number of items to return. schema: type: integer securitySchemes: ApiKeyAuth: type: apiKey in: header name: X-API-Key description: Organization API key for authentication.