openapi: 3.1.0
info:
title: Platform API
version: 1.0.0
servers:
- url: https://api.synthflow.ai/v2
- url: https://api.us.synthflow.ai/v2
- url: https://api.eu.synthflow.ai/v2
tags:
- name: ''
paths:
/assistants:
post:
operationId: create-assistant
summary: Create an agent
description: ''
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/create-assistant_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Create-assistantRequestBadRequestError'
requestBody:
content:
application/json:
schema:
type: object
properties:
end_call_reasons:
type: array
items:
type: string
description: 'Deprecated: use end_call_reasons_v2 instead. Custom conditions that trigger automatic call termination (simple string array format).'
description:
type: string
description: Agent description.
phone_number:
type: string
description: The phone number attached to the agent.
external_webhook_url:
type: string
description: URL of the webhook that should receive data after the call, such as the transcript.
is_recording:
type: boolean
description: Whether the conversation should be recorded.
max_duration:
$ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaMaxDuration'
voicemail_message:
$ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaVoicemailMessage'
description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`.
type:
$ref: '#/components/schemas/type'
name:
$ref: '#/components/schemas/name'
agent:
$ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgent'
inbound_call_webhook_url:
type: string
description: 'The URL for your inbound webhook. For more details on inbound webhooks, see About inbound call webhooks.
'
required:
- type
- name
- agent
/assistants/{model_id}:
put:
operationId: update-assistant
summary: Update an agent
description: "Use this endpoint to update an agent's name, phone number, or other parameters. \n Only the provided parameters will be updated, and others won't be removed or changed."
tags:
- ''
parameters:
- name: model_id
in: path
required: true
schema:
$ref: '#/components/schemas/model_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/update-assistant_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Update-assistantRequestBadRequestError'
requestBody:
content:
application/json:
schema:
type: object
properties:
end_call_reasons:
type: array
items:
type: string
description: 'Deprecated: use end_call_reasons_v2 instead. Custom conditions that trigger automatic call termination (simple string array format).'
description:
type: string
description: Agent description.
phone_number:
type: string
description: The phone number attached to the agent.
external_webhook_url:
type: string
description: URL of the webhook that should receive data after the call, such as the transcript.
is_recording:
type: boolean
description: Whether the conversation should be recorded.
max_duration:
$ref: '#/components/schemas/AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaMaxDuration'
voicemail_message:
$ref: '#/components/schemas/AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaVoicemailMessage'
description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`.
name:
$ref: '#/components/schemas/name'
agent:
$ref: '#/components/schemas/Agent'
delete:
operationId: delete-assistant
summary: Delete an agent
description: Use this endpoint to delete an agent.
tags:
- ''
parameters:
- name: model_id
in: path
required: true
schema:
$ref: '#/components/schemas/model_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/delete-assistant_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Delete-assistantRequestBadRequestError'
get:
operationId: get-assistant
summary: Get an agent
description: ''
tags:
- ''
parameters:
- name: model_id
in: path
required: true
schema:
$ref: '#/components/schemas/model_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/get-assistant_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-assistantRequestBadRequestError'
/assistants/:
get:
operationId: list-assistant
summary: List agents
description: Lists all agents you have in your account.
tags:
- ''
parameters:
- name: limit
in: query
description: Agents displayed per page.
required: false
schema:
type: integer
default: 20
- name: offset
in: query
description: Index of the first agent to be returned.
required: false
schema:
type: integer
default: 0
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/list-assistant_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/List-assistantRequestBadRequestError'
/assistants/{model_id}/phone_numbers:
put:
operationId: attach-phone-numbers-to-assistant
summary: Attach phone numbers to an outbound agent
description: Attach multiple outbound phone numbers to an agent by phone numbers or by slugs.
tags:
- ''
parameters:
- name: model_id
in: path
required: true
schema:
$ref: '#/components/schemas/model_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/attach-phone-numbers-to-assistant_Response_200'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Attach-phone-numbers-to-assistantRequestNotFoundError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/attach-phone-numbers-to-assistant_Request'
/assistants/{model_id}/phone_numbers/{phone_number_slug}:
delete:
operationId: detach-phone-number-from-assistant
summary: Detach phone number from an outbound agent
description: Remove one attached outbound phone number from an agent.
tags:
- ''
parameters:
- name: model_id
in: path
required: true
schema:
$ref: '#/components/schemas/model_id'
- name: phone_number_slug
in: path
description: Phone number slug to remove from the agent.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/detach-phone-number-from-assistant_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Detach-phone-number-from-assistantRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Detach-phone-number-from-assistantRequestNotFoundError'
/calls:
post:
operationId: voice-call
summary: Make a call
description: Initiates a real-time phone call through the AI agent.
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/voice-call_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Voice-callRequestBadRequestError'
requestBody:
content:
application/json:
schema:
type: object
properties:
model_id:
$ref: '#/components/schemas/model_id'
phone:
type: string
description: Call recipient's phone number.
from_phone_number:
type: string
description: Optional outbound caller ID. Must match a phone number attached to the outbound agent.
name:
type: string
description: Call recipient's name.
custom_variables:
type: array
items:
$ref: '#/components/schemas/CallsPostRequestBodyContentApplicationJsonSchemaCustomVariablesItems'
description: Key-Value pairs of custom variables that you can dynamically inject into the prompt. [Learn more](/custom-variables).
lead_email:
type: string
description: The customer's email that can be used to book an appointment.
lead_timezone:
type: string
description: The customer's time zone that can be used to book an appointment. For a list of all available time zones, see [Time zones](/time-zones).
prompt:
type: string
description: The prompt that the agent will use.
greeting:
type: string
description: The greeting the agent will use.
required:
- model_id
- phone
- name
get:
operationId: list-calls
summary: List calls
description: Returns a paginated list of calls for the specified model. You can optionally filter by time window, status, duration range, or phone number.
tags:
- ''
parameters:
- name: model_id
in: query
description: The calls for the specified model ID will be returned
required: true
schema:
type: string
- name: limit
in: query
description: How many calls will be displayed in every page, default is 20
required: false
schema:
type: integer
- name: offset
in: query
description: Index of the first call to be returned.
required: false
schema:
type: integer
- name: from_date
in: query
description: 'Begin timestamp (milliseconds since epoch) of the call. Available after the call starts. Example: 1732546200000'
required: false
schema:
type: integer
format: int64
- name: to_date
in: query
description: 'End timestamp (milliseconds since epoch) of the call. Available after the call ends. Example: 1732546200000'
required: false
schema:
type: integer
format: int64
- name: call_status
in: query
description: Status of call.
required: false
schema:
type: string
- name: duration_min
in: query
description: Only retrieve calls with duration greater than or equal to this value (seconds).
required: false
schema:
type: integer
- name: duration_max
in: query
description: Only retrieve calls with duration less than or equal to this value (seconds).
required: false
schema:
type: integer
- name: lead_phone_number
in: query
description: Phone number of the caller or callee (E.164 format preferred) and URL-encode the leading "+" (e.g. %2B14155552671)
required: false
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/list-calls_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/List-callsRequestBadRequestError'
/calls/{call_id}:
get:
operationId: get-phone-call
summary: Get a call
description: Retrieve the transcript and other metadata for a phone call.
tags:
- ''
parameters:
- name: call_id
in: path
required: true
schema:
$ref: '#/components/schemas/call_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/get-phone-call_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-phone-callRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-phone-callRequestNotFoundError'
/simulation_cases:
post:
operationId: create-simulation-case
summary: Create a simulation case
description: Create a new simulation case for a workspace.
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/create-simulation-case_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Create-simulation-caseRequestBadRequestError'
'422':
description: '422'
content:
application/json:
schema:
$ref: '#/components/schemas/Create-simulation-caseRequestUnprocessableEntityError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SimulationCaseCreateIn'
get:
operationId: list-simulation-cases
summary: List simulation cases
description: List simulation cases with pagination and optional filtering.
tags:
- ''
parameters:
- name: page_number
in: query
description: Page number.
required: false
schema:
type: integer
default: 1
- name: page_size
in: query
description: Number of items per page.
required: false
schema:
type: integer
default: 10
- name: search
in: query
description: Search term for simulation case names.
required: false
schema:
type: string
- name: simulation_case_type
in: query
description: Filter by simulation case type.
required: false
schema:
$ref: '#/components/schemas/SimulationCasesGetParametersSimulationCaseType'
- name: suite_id
in: query
description: Filter by simulation suite ID.
required: false
schema:
type: string
format: uuid
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/list-simulation-cases_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/List-simulation-casesRequestBadRequestError'
/simulation_cases/{simulation_case_id}:
get:
operationId: get-simulation-case
summary: Get a simulation case
description: Retrieve a simulation case by ID.
tags:
- ''
parameters:
- name: simulation_case_id
in: path
description: Simulation case ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/get-simulation-case_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-simulation-caseRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-simulation-caseRequestNotFoundError'
put:
operationId: update-simulation-case
summary: Update a simulation case
description: Update an existing simulation case.
tags:
- ''
parameters:
- name: simulation_case_id
in: path
description: Simulation case ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/update-simulation-case_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Update-simulation-caseRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Update-simulation-caseRequestNotFoundError'
'422':
description: '422'
content:
application/json:
schema:
$ref: '#/components/schemas/Update-simulation-caseRequestUnprocessableEntityError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SimulationCaseUpdateIn'
delete:
operationId: delete-simulation-case
summary: Delete a simulation case
description: Delete a simulation case by ID.
tags:
- ''
parameters:
- name: simulation_case_id
in: path
description: Simulation case ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'204':
description: '204'
content:
application/json:
schema:
type: object
properties: {}
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Delete-simulation-caseRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Delete-simulation-caseRequestNotFoundError'
/simulation_cases/generate:
post:
operationId: generate-simulation-cases
summary: Generate test cases
description: Generate test cases for an agent. Supports both custom prompt and flow designer agents. You can optionally specify scenarios to ensure the generated tests cover specific situations. The response is streamed as NDJSON, providing progress and results incrementally.
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
type: string
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Generate-simulation-casesRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Generate-simulation-casesRequestNotFoundError'
'422':
description: '422'
content:
application/json:
schema:
$ref: '#/components/schemas/Generate-simulation-casesRequestUnprocessableEntityError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SimulationCaseGenerateIn'
/simulation_cases/by_agent:
get:
operationId: list-simulation-cases-by-agent
summary: List simulation cases by agent
description: List all simulation cases created for a specific agent.
tags:
- ''
parameters:
- name: agent_id
in: query
description: Agent ID whose cases to list.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/list-simulation-cases-by-agent_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/List-simulation-cases-by-agentRequestBadRequestError'
/simulation_suites:
post:
operationId: create-simulation-suite
summary: Create a simulation suite
description: Create a new simulation suite attached to a specific agent. The suite can only be executed on the agent specified by model_id.
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/create-simulation-suite_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Create-simulation-suiteRequestBadRequestError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SimulationSuiteCreateIn'
get:
operationId: list-simulation-suites
summary: List simulation suites
description: List simulation suites with pagination and optional filtering.
tags:
- ''
parameters:
- name: page_number
in: query
description: Page number.
required: false
schema:
type: integer
default: 1
- name: page_size
in: query
description: Number of items per page.
required: false
schema:
type: integer
default: 10
- name: search
in: query
description: Search term for simulation suite names.
required: false
schema:
type: string
- name: model_ids
in: query
description: Filter by list of model IDs.
required: false
schema:
type: array
items:
type: string
- name: start_date
in: query
description: Filter by created_at >= start_date (ISO format).
required: false
schema:
type: string
format: date-time
- name: end_date
in: query
description: Filter by created_at <= end_date (ISO format).
required: false
schema:
type: string
format: date-time
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/list-simulation-suites_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/List-simulation-suitesRequestBadRequestError'
/simulation_suites/{suite_id}:
get:
operationId: get-simulation-suite
summary: Get a simulation suite
description: Retrieve a simulation suite by ID.
tags:
- ''
parameters:
- name: suite_id
in: path
description: Simulation suite ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/get-simulation-suite_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-simulation-suiteRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-simulation-suiteRequestNotFoundError'
put:
operationId: update-simulation-suite
summary: Update a simulation suite
description: Update an existing simulation suite.
tags:
- ''
parameters:
- name: suite_id
in: path
description: Simulation suite ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/update-simulation-suite_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Update-simulation-suiteRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Update-simulation-suiteRequestNotFoundError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SimulationSuiteUpdateIn'
delete:
operationId: delete-simulation-suite
summary: Delete a simulation suite
description: Delete a simulation suite by ID.
tags:
- ''
parameters:
- name: suite_id
in: path
description: Simulation suite ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'204':
description: '204'
content:
application/json:
schema:
type: object
properties: {}
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Delete-simulation-suiteRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Delete-simulation-suiteRequestNotFoundError'
/simulation_suites/{suite_id}/execute:
post:
operationId: execute-simulation-suite
summary: Execute a simulation suite
description: Execute all test cases in a suite. The suite runs on the agent it was created for (determined by the suite's model_id).
tags:
- ''
parameters:
- name: suite_id
in: path
description: Simulation suite ID.
required: true
schema:
type: string
- name: target_agent_id
in: query
description: Target agent ID. Must match the suite's model_id.
required: true
schema:
type: string
- name: max_turns
in: query
description: Maximum number of turns per simulation.
required: false
schema:
type: integer
default: 20
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/execute-simulation-suite_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Execute-simulation-suiteRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Execute-simulation-suiteRequestNotFoundError'
/simulation_scenarios:
post:
operationId: create-simulation-scenario
summary: Create a simulation scenario
description: Create a new simulation scenario. Scenarios are templates used when generating test cases to ensure coverage of specific situations.
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/create-simulation-scenario_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Create-simulation-scenarioRequestBadRequestError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SimulationScenarioCreateIn'
get:
operationId: list-simulation-scenarios
summary: List simulation scenarios
description: List simulation scenarios with pagination and optional filtering.
tags:
- ''
parameters:
- name: page_number
in: query
description: Page number.
required: false
schema:
type: integer
default: 1
- name: page_size
in: query
description: Number of items per page.
required: false
schema:
type: integer
default: 10
- name: search
in: query
description: Search term for simulation scenario names.
required: false
schema:
type: string
- name: start_date
in: query
description: Filter by created_at >= start_date (ISO format).
required: false
schema:
type: string
format: date-time
- name: end_date
in: query
description: Filter by created_at <= end_date (ISO format).
required: false
schema:
type: string
format: date-time
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/list-simulation-scenarios_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/List-simulation-scenariosRequestBadRequestError'
/simulation_scenarios/{scenario_id}:
get:
operationId: get-simulation-scenario
summary: Get a simulation scenario
description: Retrieve a simulation scenario by ID.
tags:
- ''
parameters:
- name: scenario_id
in: path
description: Simulation scenario ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/get-simulation-scenario_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-simulation-scenarioRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-simulation-scenarioRequestNotFoundError'
put:
operationId: update-simulation-scenario
summary: Update a simulation scenario
description: Update an existing simulation scenario.
tags:
- ''
parameters:
- name: scenario_id
in: path
description: Simulation scenario ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/update-simulation-scenario_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Update-simulation-scenarioRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Update-simulation-scenarioRequestNotFoundError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SimulationScenarioUpdateIn'
delete:
operationId: delete-simulation-scenario
summary: Delete a simulation scenario
description: Delete a simulation scenario by ID.
tags:
- ''
parameters:
- name: scenario_id
in: path
description: Simulation scenario ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'204':
description: '204'
content:
application/json:
schema:
type: object
properties: {}
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Delete-simulation-scenarioRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Delete-simulation-scenarioRequestNotFoundError'
/simulations:
post:
operationId: start-simulation
summary: Start a simulation
description: Start a new simulation using a simulation case.
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/start-simulation_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Start-simulationRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Start-simulationRequestNotFoundError'
'422':
description: '422'
content:
application/json:
schema:
$ref: '#/components/schemas/Start-simulationRequestUnprocessableEntityError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SimulationCreateIn'
get:
operationId: list-simulations
summary: List simulations
description: List simulations with pagination and optional filters.
tags:
- ''
parameters:
- name: page_number
in: query
description: Page number.
required: false
schema:
type: integer
default: 1
- name: page_size
in: query
description: Number of items per page.
required: false
schema:
type: integer
default: 10
- name: simulation_session_id
in: query
description: Filter by simulation session ID.
required: false
schema:
type: string
format: uuid
- name: status
in: query
description: Filter by simulation status.
required: false
schema:
$ref: '#/components/schemas/SimulationsGetParametersStatus'
- name: start_date
in: query
description: Filter by simulation created_at >= start_date (ISO 8601).
required: false
schema:
type: string
format: date-time
- name: end_date
in: query
description: Filter by simulation created_at <= end_date (ISO 8601).
required: false
schema:
type: string
format: date-time
- name: target_agent_id
in: query
description: Filter by target agent ID.
required: false
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/list-simulations_Response_200'
'422':
description: '422'
content:
application/json:
schema:
$ref: '#/components/schemas/List-simulationsRequestUnprocessableEntityError'
/simulations/sessions:
get:
operationId: list-simulation-sessions
summary: List simulation sessions
description: List simulation sessions with pagination and optional filters.
tags:
- ''
parameters:
- name: page_number
in: query
description: Page number.
required: false
schema:
type: integer
default: 1
- name: page_size
in: query
description: Number of items per page.
required: false
schema:
type: integer
default: 10
- name: target_agent_id
in: query
description: Filter by target agent ID.
required: false
schema:
type: string
- name: start_date
in: query
description: Filter by simulation created_at >= start_date (ISO 8601).
required: false
schema:
type: string
format: date-time
- name: end_date
in: query
description: Filter by simulation created_at <= end_date (ISO 8601).
required: false
schema:
type: string
format: date-time
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/list-simulation-sessions_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/List-simulation-sessionsRequestBadRequestError'
/simulations/session/{simulation_session_id}:
get:
operationId: get-simulation-session
summary: Get a simulation session
description: Retrieve simulation session details by ID.
tags:
- ''
parameters:
- name: simulation_session_id
in: path
description: Simulation session ID.
required: true
schema:
type: string
format: uuid
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/get-simulation-session_Response_200'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-simulation-sessionRequestNotFoundError'
'422':
description: '422'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-simulation-sessionRequestUnprocessableEntityError'
/simulations/{simulation_id}:
get:
operationId: get-simulation
summary: Get a simulation
description: Retrieve a simulation by ID.
tags:
- ''
parameters:
- name: simulation_id
in: path
description: Simulation ID.
required: true
schema:
type: string
format: uuid
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/get-simulation_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-simulationRequestBadRequestError'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-simulationRequestNotFoundError'
'422':
description: '422'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-simulationRequestUnprocessableEntityError'
/actions:
get:
operationId: list-actions
summary: List actions
description: ''
tags:
- ''
parameters:
- name: limit
in: query
description: Actions displayed per page.
required: false
schema:
type: integer
default: 20
- name: offset
in: query
description: Index of the first action to be returned.
required: false
schema:
type: integer
default: 0
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/list-actions_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/List-actionsRequestBadRequestError'
post:
operationId: create-action
summary: Create an action
description: ''
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/create-action_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Create-actionRequestBadRequestError'
requestBody:
content:
application/json:
schema:
type: object
properties:
REAL_TIME_BOOKING:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBooking'
INFORMATION_EXTRACTOR:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaInformationExtractor'
LIVE_TRANSFER:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaLiveTransfer'
SEND_SMS:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaSendSms'
INCALL_SMS:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaIncallSms'
INCALL_WHATSAPP:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaIncallWhatsapp'
CUSTOM_ACTION:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaCustomAction'
CUSTOM_EVAL:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaCustomEval'
/actions/initialize:
post:
operationId: initialize-action
summary: Initialize a custom action
description: ''
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/initialize-action_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Initialize-actionRequestBadRequestError'
requestBody:
content:
application/json:
schema:
type: object
properties:
action_id:
type: string
description: The action id that will be initialized
variables:
type: array
items:
$ref: '#/components/schemas/ActionsInitializePostRequestBodyContentApplicationJsonSchemaVariablesItems'
required:
- action_id
/actions/{action_id}:
put:
operationId: update-action
summary: Update an action
description: ''
tags:
- ''
parameters:
- name: action_id
in: path
description: To find an action's ID, go to its page in your Synthflow dashboard.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/update-action_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Update-actionRequestBadRequestError'
requestBody:
content:
application/json:
schema:
type: object
properties:
REAL_TIME_BOOKING:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBooking'
INFORMATION_EXTRACTOR:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaInformationExtractor'
LIVE_TRANSFER:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaLiveTransfer'
SEND_SMS:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaSendSms'
INCALL_SMS:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaIncallSms'
INCALL_WHATSAPP:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaIncallWhatsapp'
CUSTOM_ACTION:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomAction'
delete:
operationId: delete-action
summary: Delete an action
description: ''
tags:
- ''
parameters:
- name: action_id
in: path
description: To find an action's ID, go to its page in your Synthflow dashboard.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/delete-action_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Delete-actionRequestBadRequestError'
get:
operationId: get-action
summary: Get an action
description: Retrieves metadata about an action.
tags:
- ''
parameters:
- name: action_id
in: path
description: To find an action's ID, go to its page in your Synthflow dashboard.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/get-action_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-actionRequestBadRequestError'
/actions/attach:
post:
operationId: attach-action
summary: Attach an action
description: ''
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/attach-action_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Attach-actionRequestBadRequestError'
requestBody:
content:
application/json:
schema:
type: object
properties:
model_id:
type: string
description: The ID of the agent you want to attach an action to.
actions:
type: array
items:
type: string
description: To find an action's ID, go to its page in your Synthflow dashboard.
required:
- model_id
/actions/detach:
post:
operationId: detach-action
summary: Detach an action
description: ''
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/detach-action_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Detach-actionRequestBadRequestError'
requestBody:
content:
application/json:
schema:
type: object
properties:
model_id:
type: string
description: The ID of the agent you want to detach an action from.
actions:
type: array
items:
type: string
description: To find an action's ID, go to its page in your Synthflow dashboard.
required:
- model_id
/analytics/:
get:
operationId: analytics-export
summary: Export analytics data
description: 'Export analytics programmatically for blending with your BI dashboards or internal reporting tools.
### Troubleshooting
* If you are not seeing data for a specific agent, double-check the model_id you are using. Make sure the agent is active.
* Date range errors: limit the query to a maximum of 120 days.
* Unauthorized API access: double-check your API key.'
tags:
- ''
parameters:
- name: from_date
in: query
description: 'The start date and time for the date range for which you want to export analytics data. If you don''t specify the date range, it''ll default to the past 7 days. The maximum date range is 120 days. Example: 2025-11-25T14:30:00Z'
required: false
schema:
type: string
format: date-time
- name: to_date
in: query
description: 'The end date and time for the date range for which you want to export analytics data. Example: 2025-11-25T14:30:00Z'
required: false
schema:
type: string
format: date-time
- name: model_id
in: query
description: If you want to export data for a specific agent, use its model ID. You can find it on the agent's page in your dashboard.
required: false
schema:
type: string
- name: type_of_call
in: query
description: Filter calls by agent type (`inbound`, `outbound` or `widget`).
required: false
schema:
$ref: '#/components/schemas/AnalyticsGetParametersTypeOfCall'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/analyticsExport_Response_200'
/voices:
get:
operationId: get-voices
summary: Get voices
description: Lists all the voices assigned to a workspace.
tags:
- ''
parameters:
- name: workspace
in: query
description: Workspace ID. You can find it in your dashboard.
required: true
schema:
type: string
- name: limit
in: query
description: Voices displayed per page.
required: false
schema:
type: integer
default: 50
- name: offset
in: query
description: Index of the first voice to be returned.
required: false
schema:
type: integer
default: 0
- name: search
in: query
description: Search voices by name.
required: false
schema:
type: string
- name: provider
in: query
description: Voice provider to filter by.
required: false
schema:
$ref: '#/components/schemas/VoicesGetParametersProvider'
default: elevenlabs
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/get-voices_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-voicesRequestBadRequestError'
/knowledge_base:
get:
operationId: list-knowledge-bases
summary: List knowledge bases
description: Retrieves knowledge bases for the workspace.
tags:
- ''
parameters:
- name: limit
in: query
description: Number of knowledge bases to return per page.
required: false
schema:
type: integer
default: 25
- name: offset
in: query
description: Index of the first knowledge base to return.
required: false
schema:
type: integer
default: 0
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/list-knowledge-bases_Response_200'
post:
operationId: create-knowledge-base
summary: Create a knowledge base
description: Creates a new knowledge base and returns its ID.
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/create-knowledge-base_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Create-knowledge-baseRequestBadRequestError'
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name of the knowledge base.
rag_use_condition:
type: string
description: When this knowledge base should be used.
/knowledge_base/{id}:
get:
operationId: get-knowledge-base
summary: Get a knowledge base
description: Retrieves the knowledge base's name and use condition.
tags:
- ''
parameters:
- name: id
in: path
required: true
schema:
$ref: '#/components/schemas/knowledge_base_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/get-knowledge-base_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-knowledge-baseRequestBadRequestError'
put:
operationId: update-knowledge-base
summary: Update a knowledge base
description: ''
tags:
- ''
parameters:
- name: id
in: path
required: true
schema:
$ref: '#/components/schemas/knowledge_base_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/update-knowledge-base_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Update-knowledge-baseRequestBadRequestError'
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name of the knowledge base.
rag_use_condition:
type: string
description: When this knowledge base should be used.
delete:
operationId: delete-knowledge-base
summary: Delete a knowledge base
description: ''
tags:
- ''
parameters:
- name: id
in: path
required: true
schema:
$ref: '#/components/schemas/knowledge_base_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/delete-knowledge-base_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Delete-knowledge-baseRequestBadRequestError'
/knowledge_base/{knowledge_base_id}/attach:
post:
operationId: attach-knowledge-base
summary: Attach a knowledge base
description: ''
tags:
- ''
parameters:
- name: knowledge_base_id
in: path
required: true
schema:
$ref: '#/components/schemas/knowledge_base_id'
- name: model_id
in: query
description: id of the agent to which knowledge base needs to be attached
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/attach-knowledge-base_Response_200'
/knowledge_base/{knowledge_base_id}/detach:
post:
operationId: detach-knowledge-base
summary: Detach a knowledge base
description: ''
tags:
- ''
parameters:
- name: knowledge_base_id
in: path
required: true
schema:
$ref: '#/components/schemas/knowledge_base_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/detach-knowledge-base_Response_200'
requestBody:
content:
application/json:
schema:
type: object
properties:
model_id:
type: string
description: id of an agent from which knowledge base needs to be detached
required:
- model_id
/knowledge_base/{knowledge_base_id}/sources:
get:
operationId: list-knowledge-base-sources
summary: List knowledge base sources
description: Returns a paginated list of sources for the specified knowledge base.
tags:
- ''
parameters:
- name: knowledge_base_id
in: path
required: true
schema:
$ref: '#/components/schemas/knowledge_base_id'
- name: limit
in: query
description: Maximum number of sources to return per page.
required: false
schema:
type: integer
default: 20
- name: offset
in: query
description: Number of sources to skip before starting to return results.
required: false
schema:
type: integer
default: 0
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/listKnowledgeBaseSources_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/ListKnowledgeBaseSourcesRequestBadRequestError'
post:
operationId: attach-document-to-source
summary: Add a knowledge base source
tags:
- ''
parameters:
- name: knowledge_base_id
in: path
required: true
schema:
$ref: '#/components/schemas/knowledge_base_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/attachDocumentToSource_Response_200'
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Source name.
type:
$ref: '#/components/schemas/KnowledgeBaseKnowledgeBaseIdSourcesPostRequestBodyContentApplicationJsonSchemaType'
description: Source type.
url:
type: string
description: Source URL. Required when type is `pdf` (URL to a hosted PDF file) or `web` (URL to a website to scrape)
content:
type: string
description: The full text content for the knowledge base source. Required when type is `text`
/knowledge_base/{knowledge_base_id}/sources/{source_id}:
put:
operationId: update-knowledge-base-source
summary: Update a knowledge base source
description: 'Update an existing knowledge base source by source ID. The updatable fields depend on the existing source type:
- `link` / `file`: `url`
- `text`: `content`
You can always update `name`.
'
tags:
- ''
parameters:
- name: knowledge_base_id
in: path
required: true
schema:
$ref: '#/components/schemas/knowledge_base_id'
- name: source_id
in: path
description: Source ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/update-knowledge-base-source_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Update-knowledge-base-sourceRequestBadRequestError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/update-knowledge-base-source_Request'
delete:
operationId: knowledge-base-source-delete
summary: Delete a knowledge base source
description: ''
tags:
- ''
parameters:
- name: knowledge_base_id
in: path
required: true
schema:
$ref: '#/components/schemas/knowledge_base_id'
- name: source_id
in: path
description: Source ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/knowledgeBaseSourceDelete_Response_200'
/phonebooks:
post:
operationId: create-a-phone-book
summary: Create a phone book
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/createAPhoneBook_Response_200'
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Phone book name.
required:
- name
get:
operationId: list-phone-books
summary: List phone books
description: List all phone books in your workspace.
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/listPhoneBooks_Response_200'
/phonebooks/{phone_book_id}:
delete:
operationId: delete-a-phone-book
summary: Delete a phone book
tags:
- ''
parameters:
- name: phone_book_id
in: path
description: The ID of the phone book you want to delete.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/deleteAPhoneBook_Response_200'
/phonebooks/{phone_book_id}/entries:
post:
operationId: create-a-phone-book-entry
summary: Create a phone book entry
tags:
- ''
parameters:
- name: phone_book_id
in: path
description: Phone book ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/createAPhoneBookEntry_Response_200'
requestBody:
content:
application/json:
schema:
type: object
properties:
phone_number:
type: string
transfer_condition:
type: string
required:
- phone_number
- transfer_condition
/phonebooks/{phone_book_id}/entries/{entry_id}:
delete:
operationId: delete-a-phone-book-entry
summary: Delete a phone book entry
tags:
- ''
parameters:
- name: phone_book_id
in: path
description: Phone book ID.
required: true
schema:
type: string
- name: entry_id
in: path
description: The ID of the phone book entry you want to delete.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: Successful response
/subaccounts:
post:
operationId: create-subaccount
summary: Create a subaccount
description: ''
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/create-subaccount_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Create-subaccountRequestBadRequestError'
requestBody:
content:
application/json:
schema:
type: object
properties:
subaccount_name:
type: string
description: The name for the new subaccount. This should be a unique identifier that distinguishes it from other subaccounts within the main account.
user_email:
type: string
description: This is the email address of the user you wish to invite to the subaccount. When this optional parameter is filled in, a "sign in" link will be generated and sent back in the response. The user can use this link to sign in and set up their account.
twilio_account_sid:
type: string
description: This is the Twilio SID of the subaccount.
twilio_auth_token:
type: string
description: This is the Twilio Token of the subaccount.
concurrency:
type: integer
description: The maximum number of calls the subaccount can handle at the same time.
max_agents:
type:
- integer
- 'null'
description: The maximum number of agents the subaccount is allowed to create. Null if no limit is set.
max_minutes:
type:
- integer
- 'null'
description: The maximum number of minutes allocated to this subaccount. Null if no limit is set.
max_workflow_runs:
type:
- integer
- 'null'
description: The maximum number of workflow runs allocated to this subaccount. Null if no limit is set.
grant_permissions:
type: array
items:
$ref: '#/components/schemas/SubaccountsPostRequestBodyContentApplicationJsonSchemaGrantPermissionsItems'
description: Permissions to grant to the subaccount. Duplicate values are not allowed, and any value also present in `revoke_permissions` is rejected by the API.
revoke_permissions:
type: array
items:
$ref: '#/components/schemas/SubaccountsPostRequestBodyContentApplicationJsonSchemaRevokePermissionsItems'
description: Permissions to revoke from the subaccount. Duplicate values are not allowed, and any value also present in `grant_permissions` is rejected by the API.
required:
- subaccount_name
/subaccounts/{subaccount_id}:
put:
operationId: update-subaccount
summary: Update a subaccount
description: ''
tags:
- ''
parameters:
- name: subaccount_id
in: path
required: true
schema:
$ref: '#/components/schemas/subaccount_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/update-subaccount_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Update-subaccountRequestBadRequestError'
requestBody:
content:
application/json:
schema:
type: object
properties:
subaccount_name:
type: string
description: The name for the new subaccount. This should be a unique identifier that distinguishes it from other subaccounts within the main account.
invite_user_email:
type: string
description: This is the email address of the user you wish to invite to the subaccount. When this optional parameter is filled in, a "sign in" link will be generated and sent back in the response. The user can use this link to sign in and set up their account.
pricing_tiers_attach:
type: array
items:
$ref: '#/components/schemas/SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaPricingTiersAttachItems'
description: Pricing tier IDs that this subaccount can choose from when selecting a subscription plan.
pricing_tiers_detach:
type: array
items:
$ref: '#/components/schemas/SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaPricingTiersDetachItems'
description: Pricing tiers will be removed from this subaccount and will no longer be available for selection when choosing a subscription plan.
import_subscription:
$ref: '#/components/schemas/SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaImportSubscription'
description: This section is used when you want to import an existing Stripe subscription for the subaccount
twilio_account_sid:
type: string
description: This is the Twilio SID of the subaccount.
twilio_auth_token:
type: string
description: This is the Twilio Token of the subaccount.
concurrency:
type: integer
description: The maximum calls the subaccount can handle at once.
max_agents:
type:
- integer
- 'null'
description: The maximum number of agents the subaccount is allowed to create. Null if no limit is set.
max_minutes:
type:
- integer
- 'null'
description: The maximum number of minutes allocated to this subaccount. Null if no limit is set.
max_workflow_runs:
type:
- integer
- 'null'
description: The maximum number of workflow runs allocated to this subaccount. Null if no limit is set.
grant_permissions:
type: array
items:
$ref: '#/components/schemas/SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaGrantPermissionsItems'
description: Permissions to grant to the subaccount. Duplicate values are not allowed, and any value also present in `revoke_permissions` is rejected by the API.
revoke_permissions:
type: array
items:
$ref: '#/components/schemas/SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaRevokePermissionsItems'
description: Permissions to revoke from the subaccount. Duplicate values are not allowed, and any value also present in `grant_permissions` is rejected by the API.
operation_type:
$ref: '#/components/schemas/SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaOperationType'
description: The type of operation to perform. You can import objects from the parent workspace to a subaccount or return objects from a subaccount in some cases.
products:
$ref: '#/components/schemas/SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaProducts'
description: Objects to be imported to or returned from the subaccount_id
delete:
operationId: delete-subaccount
summary: Delete a subaccount
description: Deletes a subaccount by ID.
tags:
- ''
parameters:
- name: subaccount_id
in: path
required: true
schema:
$ref: '#/components/schemas/subaccount_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/delete-subaccount_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Delete-subaccountRequestBadRequestError'
get:
operationId: get-subaccount
summary: Get a subaccount
description: Retrieves detailed metadata about a specific subaccount by ID.
tags:
- ''
parameters:
- name: subaccount_id
in: path
required: true
schema:
$ref: '#/components/schemas/subaccount_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/get-subaccount_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/Get-subaccountRequestBadRequestError'
/subaccounts/:
get:
operationId: list-subaccounts
summary: List subaccounts
description: ''
tags:
- ''
parameters:
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/list-subaccounts_Response_200'
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/List-subaccountsRequestBadRequestError'
/contacts:
get:
operationId: list-contacts
summary: List contacts
tags:
- ''
parameters:
- name: search
in: query
description: The contact's phone number.
required: false
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/list-contacts_Response_200'
/contacts/{contact_id}:
get:
operationId: get-a-contact
summary: Get a contact
tags:
- ''
parameters:
- name: contact_id
in: path
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/getAContact_Response_200'
delete:
operationId: delete-a-contact
summary: Delete a contact
tags:
- ''
parameters:
- name: contact_id
in: path
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/deleteAContact_Response_200'
/memory_stores:
get:
operationId: list-memory-stores
summary: List memory stores
tags:
- ''
parameters:
- name: search
in: query
description: The memory store's title.
required: false
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/list-memory-stores_Response_200'
/memory_stores/{memory_store_id}:
patch:
operationId: update-a-memory-store
summary: Update a memory store
tags:
- ''
parameters:
- name: memory_store_id
in: path
required: true
schema:
$ref: '#/components/schemas/memory_store_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/updateAMemoryStore_Response_200'
requestBody:
content:
application/json:
schema:
type: object
properties:
title:
type: string
description: Memory store name.
description:
type: string
description: Memory store description.
delete:
operationId: delete-a-memory-store
summary: Delete a memory store
tags:
- ''
parameters:
- name: memory_store_id
in: path
required: true
schema:
$ref: '#/components/schemas/memory_store_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/deleteAMemoryStore_Response_200'
get:
operationId: get-a-memory-store
summary: Get a memory store
tags:
- ''
parameters:
- name: memory_store_id
in: path
description: The memory store's ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/getAMemoryStore_Response_200'
/memory_stores/{memory_store_id}/assistants/{assistant_id}/attach:
post:
operationId: attach-a-memory-store-to-an-agent
summary: Attach a memory store to an agent
tags:
- ''
parameters:
- name: memory_store_id
in: path
description: The memory store ID.
required: true
schema:
type: string
- name: assistant_id
in: path
description: The agent's model ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/attachAMemoryStoreToAnAgent_Response_200'
/memory_stores/{memory_store_id}/assistants/{assistant_id}/detach:
post:
operationId: detach-a-memory-store-from-an-agent
summary: Detach a memory store from an agent
tags:
- ''
parameters:
- name: memory_store_id
in: path
required: true
schema:
$ref: '#/components/schemas/memory_store_id'
- name: assistant_id
in: path
required: true
schema:
$ref: '#/components/schemas/model_id'
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/detachAMemoryStoreFromAnAgent_Response_200'
/memory_stores/{memory_store_id}/contacts/{contact_id}/memory_data:
get:
operationId: get-data-for-a-specific-memory-store-and-contact
summary: Get data for a specific memory store and contact
tags:
- ''
parameters:
- name: memory_store_id
in: path
description: The memory store ID.
required: true
schema:
type: string
- name: contact_id
in: path
description: The contact ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/getDataForASpecificMemoryStoreAndContact_Response_200'
/memory_stores/{memory_store_id}/contacts/{contact_id}/attach:
post:
operationId: attach-a-contact-to-a-memory-store
summary: Attach a contact to a memory store
tags:
- ''
parameters:
- name: memory_store_id
in: path
description: The memory store ID.
required: true
schema:
type: string
- name: contact_id
in: path
description: The contact ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/attachAContactToAMemoryStore_Response_200'
/memory_stores/{memory_store_id}/contacts/{contact_id}/detach:
post:
operationId: detach-a-contact-from-a-memory-store
summary: Detach a contact from a memory store
tags:
- ''
parameters:
- name: memory_store_id
in: path
description: The memory store ID.
required: true
schema:
type: string
- name: contact_id
in: path
description: The contact ID.
required: true
schema:
type: string
- name: Authorization
in: header
description: Bearer authentication
required: true
schema:
type: string
responses:
'200':
description: '200'
content:
application/json:
schema:
$ref: '#/components/schemas/detachAContactFromAMemoryStore_Response_200'
components:
schemas:
SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaPricingTiersAttachItems:
type: object
properties:
pricing_tier_id:
type: string
description: The ID of the Synthflow pricing tier.
required:
- pricing_tier_id
title: SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaPricingTiersAttachItems
ActionsPostRequestBodyContentApplicationJsonSchemaInformationExtractorSingleChoice:
type: object
properties:
identifier:
type: string
description: The title that will identify the action
description:
type: string
description: The description of what the action is expected to do
choices:
type: array
items:
type: string
description: The possible choices that will answer the expected description of the action
required:
- identifier
title: ActionsPostRequestBodyContentApplicationJsonSchemaInformationExtractorSingleChoice
delete-subaccount_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SubaccountsSubaccountIdDeleteResponsesContentApplicationJsonSchemaResponse'
title: delete-subaccount_Response_200
AssistantsPostRequestBodyContentApplicationJsonSchemaAgentVoiceSynthesizer:
type: string
enum:
- eleven_multilingual_v2
- eleven_turbo_v2
- eleven_turbo_v2_5
- eleven_flash_v2
- eleven_flash_v2_5
description: The engine used to synthesize voice.
title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentVoiceSynthesizer
update-knowledge-base-source_Request:
oneOf:
- $ref: '#/components/schemas/UpdateKnowledgeBaseSourceRequest0'
- $ref: '#/components/schemas/UpdateKnowledgeBaseSourceRequest1'
- $ref: '#/components/schemas/UpdateKnowledgeBaseSourceRequest2'
title: update-knowledge-base-source_Request
ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionVariablesDuringTheCallItemsType:
type: string
enum:
- string
- int
- float
- bool
- list
- money
- phone_number
- email
- datetime
- utc_datetime
default: string
description: Type of the variable
title: ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionVariablesDuringTheCallItemsType
Agent:
type: object
properties:
timezone:
$ref: '#/components/schemas/timezone'
default: Europe/Berlin
voice_prompt:
$ref: '#/components/schemas/voice_prompt'
voice_stability:
$ref: '#/components/schemas/voice_stability'
voice_similarity_boost:
$ref: '#/components/schemas/voice_similarity_boost'
voice_optimise_streaming_latency:
$ref: '#/components/schemas/voice_optimise_streaming_latency'
voice_style:
$ref: '#/components/schemas/voice_style'
voice_use_speaker_boost:
$ref: '#/components/schemas/voice_use_speaker_boost'
allowed_idle_time_seconds:
$ref: '#/components/schemas/allowed_idle_time_seconds'
initial_pause_seconds:
$ref: '#/components/schemas/initial_pause_seconds'
transcriber_keywords:
$ref: '#/components/schemas/transcriber_keywords'
ring_pause_seconds:
$ref: '#/components/schemas/ring_pause_seconds'
background_noise:
$ref: '#/components/schemas/AgentBackgroundNoise'
description: Add background noise to make the call more natural.
noise_cancellation:
$ref: '#/components/schemas/AgentNoiseCancellation'
description: Removes background noise on the customer's side (like chatter in a café or keyboard clicks) to make their voice clearer and easier for the agent to understand.
realistic_filler_words:
type: boolean
description: If enabled, the agent will be using realistic filler words (for example, "um").
is_transcript_disabled:
type: boolean
description: If set to true, conversations will not be transcribed.
redact_pii:
type: boolean
description: Whether to redact personally identifiable information (PII) from transcripts, post-call webhooks, and internal logs. Redacted data includes credit card numbers, CVVs, expiration dates, social security numbers, names, email addresses, phone numbers, and physical addresses.
synthesizer_filter_words:
type: array
items:
description: Any type
description: Words or characters that the agent should not say.
end_call_reasons:
type: array
items:
type: string
description: 'Deprecated: use end_call_reasons_v2 instead. Custom conditions that trigger automatic call termination (simple string array format). Works with both simple prompt and Flow Designer agents.'
end_call_reasons_v2:
type: array
items:
$ref: '#/components/schemas/AgentEndCallReasonsV2Items'
description: Custom conditions that trigger automatic call termination with per-reason closing message control. When both end_call_reasons and end_call_reasons_v2 are present, v2 takes precedence.
voice_synthesizer:
$ref: '#/components/schemas/AgentVoiceSynthesizer'
description: The engine used to synthesize voice.
suppression_level:
type: number
format: double
description: Setting this value will enable voice isolation in addition to background noise detection, the value assigned the term is the strength with a higher value stronger voice isolation.
interruption_fade_out:
type: integer
description: Each frame is 20 ms. When you interrupt the bot, the volume slowly goes down to 0 over that many frames. For example, 5 translates to a 100 ms fadeout.
voice_speed:
type: number
format: double
description: Adjust how fast or slow your agent will talk on the call.
voice_volume:
type: number
format: double
description: Adjust how loud or quite your agent will talk on the call.
min_words_to_interrupt:
$ref: '#/components/schemas/AgentMinWordsToInterrupt'
description: You can set how many words the human must speak before the AI will stop speaking and listening.
prompt:
$ref: '#/components/schemas/prompt'
greeting_message:
$ref: '#/components/schemas/greeting_message'
greeting_message_mode:
$ref: '#/components/schemas/greeting_message_mode'
greeting_message_human_talk_timeout:
$ref: '#/components/schemas/greeting_message_human_talk_timeout'
llm:
$ref: '#/components/schemas/llm'
language:
$ref: '#/components/schemas/language'
voice_id:
$ref: '#/components/schemas/voice_id'
patience_level:
$ref: '#/components/schemas/AgentPatienceLevel'
description: Patience level of the agent.
send_user_idle_reminders:
type: boolean
default: false
description: Enables or disables idle reminders.
reminder_after_idle_time_seconds:
type: integer
description: Time in seconds before sending an idle reminder.
reminder_after_idle_message:
type: string
description: The idle reminder message.
fallback_voice_id:
$ref: '#/components/schemas/voice_id'
fallback_provider:
$ref: '#/components/schemas/AgentFallbackProvider'
description: The provider for the fallback voice (elevenlabs, deepgram, or synthflow).
fallback_model:
type: string
description: The model to be used by the fallback provider.
title: Agent
Get-simulation-caseRequestNotFoundError:
type: object
properties: {}
title: Get-simulation-caseRequestNotFoundError
CallsCallIdGetResponsesContentApplicationJsonSchemaResponsePagination:
type: object
properties:
total_records:
type: integer
description: The total number of call records matching the query.
limit:
type: integer
description: The maximum number of records returned per request.
offset:
type: integer
description: The number of records skipped from the beginning of the results.
description: Pagination information for the results.
title: CallsCallIdGetResponsesContentApplicationJsonSchemaResponsePagination
voice_similarity_boost:
type: integer
description: Range 0 to 1. Determines how closely the AI matches the original voice. Higher settings potentially including unwanted noise from the original recording.
title: voice_similarity_boost
SimulationCaseReadOutCallSuccessType:
type: string
enum:
- all
- any
title: SimulationCaseReadOutCallSuccessType
createAPhoneBookEntry_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/PhonebooksPhoneBookIdEntriesPostResponsesContentApplicationJsonSchemaResponse'
title: createAPhoneBookEntry_Response_200
KnowledgeBaseKnowledgeBaseIdSourcesGetResponsesContentApplicationJsonSchemaResponseSourcesItems:
type: object
properties:
id:
type: string
description: Unique identifier of the source.
type:
$ref: '#/components/schemas/KnowledgeBaseKnowledgeBaseIdSourcesGetResponsesContentApplicationJsonSchemaResponseSourcesItemsType'
description: 'Source type: `text` for plain text, `web` for a scraped web page, or `pdf` for a PDF file.'
name:
type: string
description: Display name of the source.
content_preview:
type: string
description: Short preview of the source text content. Empty string when not available.
url:
type: string
description: URL of the source. Populated for `web` and `pdf` types. Empty string for `text` sources.
created_at:
type: string
format: date-time
description: Timestamp when the source was created (ISO 8601).
updated_at:
type: string
format: date-time
description: Timestamp when the source was last updated (ISO 8601).
title: KnowledgeBaseKnowledgeBaseIdSourcesGetResponsesContentApplicationJsonSchemaResponseSourcesItems
ActionsActionIdGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
actions:
type: array
items:
$ref: '#/components/schemas/ActionsActionIdGetResponsesContentApplicationJsonSchemaResponseActionsItems'
title: ActionsActionIdGetResponsesContentApplicationJsonSchemaResponse
Delete-simulation-caseRequestNotFoundError:
type: object
properties: {}
title: Delete-simulation-caseRequestNotFoundError
PaginatedSimulationSuitesList:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/SimulationSuiteListItem'
description: List of simulation suites
total:
type: integer
description: Total number of simulation suites
page_number:
type: integer
description: Current page number
page_size:
type: integer
description: Number of items per page
required:
- items
- total
- page_number
- page_size
title: PaginatedSimulationSuitesList
create-simulation-case_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationCasesPostResponsesContentApplicationJsonSchemaResponse'
title: create-simulation-case_Response_200
ActionsPostRequestBodyContentApplicationJsonSchemaSendSms:
type: object
properties:
content:
type: string
description: The content/text of the SMS message
instructions:
type: string
description: The instructions that will trigger the SMS message to be sent
required:
- content
- instructions
title: ActionsPostRequestBodyContentApplicationJsonSchemaSendSms
name:
type: string
description: Agent name.
title: name
KnowledgeBaseIdPutResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
body:
type: string
knowledge_base_id:
$ref: '#/components/schemas/knowledge_base_id'
title: KnowledgeBaseIdPutResponsesContentApplicationJsonSchemaResponse
AssistantsPostResponsesContentApplicationJsonSchemaDetail:
type: object
properties:
status:
type: string
description:
type: string
request_id:
type: string
category:
type: string
required:
- status
- description
- request_id
- category
title: AssistantsPostResponsesContentApplicationJsonSchemaDetail
list-simulation-sessions_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationsSessionsGetResponsesContentApplicationJsonSchemaResponse'
title: list-simulation-sessions_Response_200
ActionsPostRequestBodyContentApplicationJsonSchemaIncallSms:
type: object
properties:
message_body:
type: string
description: The SMS body sent to the caller. Supports placeholder variables like ``.
wait_for_reply:
type: boolean
default: false
description: When true, the agent pauses until the caller replies, the timeout elapses, or the call ends. When false, the call continues and any reply is injected into the transcript when it arrives.
timeout_seconds:
type: integer
description: Maximum time to wait for a reply when `wait_for_reply` is true.
fallback_message:
type: string
description: Message the agent speaks if the timeout fires with no reply.
message_before_action:
type: string
description: Message the agent speaks before the SMS is sent.
required:
- message_body
title: ActionsPostRequestBodyContentApplicationJsonSchemaIncallSms
memory_store_id:
type: string
description: The ID of the memory store (group).
title: memory_store_id
ActionsAttachPostResponsesContentApplicationJsonSchemaResponse:
type: object
properties: {}
title: ActionsAttachPostResponsesContentApplicationJsonSchemaResponse
SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaImportSubscription:
type: object
properties:
stripe_subscription_id:
type: string
description: The ID of the existing Stripe subscription you want to import. This is typically used when the subaccount already has a subscription set up in Stripe, and you want to link it to their Synthflow account.
synthflow_price_id:
type: string
description: The ID of the Synthflow pricing tier that corresponds to the imported Stripe subscription. This allows you to map the external Stripe subscription to an equivalent plan within Synthflow.
description: This section is used when you want to import an existing Stripe subscription for the subaccount
title: SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaImportSubscription
SimulationCasesGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
pagination:
$ref: '#/components/schemas/pagination'
items:
type: array
items:
$ref: '#/components/schemas/SimulationCaseReadOut'
title: SimulationCasesGetResponsesContentApplicationJsonSchemaResponse
ActionsGetResponsesContentApplicationJsonSchemaResponseActionsItemsParametersHardCoded:
type: object
properties:
sms_message_text:
type: string
title: ActionsGetResponsesContentApplicationJsonSchemaResponseActionsItemsParametersHardCoded
MemoryStoresGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/MemoryStoresGetResponsesContentApplicationJsonSchemaResponseItemsItems'
total:
type: integer
page_size:
type: integer
page_number:
type: integer
title: MemoryStoresGetResponsesContentApplicationJsonSchemaResponse
CallsGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
pagination:
$ref: '#/components/schemas/CallsGetResponsesContentApplicationJsonSchemaResponsePagination'
description: Pagination information for the response
calls:
type: array
items:
$ref: '#/components/schemas/CallsGetResponsesContentApplicationJsonSchemaResponseCallsItems'
title: CallsGetResponsesContentApplicationJsonSchemaResponse
SubaccountsGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
subaccounts:
type: array
items:
$ref: '#/components/schemas/SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItems'
title: SubaccountsGetResponsesContentApplicationJsonSchemaResponse
ContactsContactIdGetResponsesContentApplicationJsonSchemaResponseContactMetadata:
type: object
properties:
company:
type: string
title: ContactsContactIdGetResponsesContentApplicationJsonSchemaResponseContactMetadata
CallsPostRequestBodyContentApplicationJsonSchemaCustomVariablesItems:
type: object
properties:
key:
type: string
value:
type: string
title: CallsPostRequestBodyContentApplicationJsonSchemaCustomVariablesItems
UpdateKnowledgeBaseSourceRequest2:
type: object
properties:
name:
type: string
description: Updated source name.
content:
type: string
description: Updated text body for `text` sources.
required:
- content
title: UpdateKnowledgeBaseSourceRequest2
list-memory-stores_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/MemoryStoresGetResponsesContentApplicationJsonSchemaResponse'
title: list-memory-stores_Response_200
get-simulation-case_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationCaseReadOut'
title: get-simulation-case_Response_200
initial_pause_seconds:
type: integer
description: Duration before the agent starts speaking.
title: initial_pause_seconds
ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBooking:
type: object
properties:
first_appt_date:
type: string
format: date
description: The initial date that will be the used to start searching for booking appointments, the format is YYYY-MM-DD
max_time_slots:
type: integer
default: 3
description: The amount of slots that the agent will recommend per day when trying to book an appointment. The limit is 3
min_hours_diff:
type: integer
default: 3
description: The difference in hours between appointments that will be suggested by the agent.
no_of_days:
type: integer
default: 3
description: Number of days that the agent will suggest appointments
timezone:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingTimezone'
description: '[List of possible time zones](/time-zones). The default is Europe/Berlin'
CALCOM:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingCalcom'
description: 'Important: You need to be connected to the Cal.com integration'
GHL:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingGhl'
description: 'Important: You need to be connected to the GHL integration'
required:
- first_appt_date
- max_time_slots
- min_hours_diff
- no_of_days
- timezone
title: ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBooking
AnalyticsGetResponsesContentApplicationJsonSchemaAssistantPerformanceByMinutesUsedItems:
type: object
properties:
model_id:
type: string
name:
type: string
minutes_used:
type: integer
percentage_change:
type: integer
title: AnalyticsGetResponsesContentApplicationJsonSchemaAssistantPerformanceByMinutesUsedItems
AssistantsModelIdPutResponsesContentApplicationJsonSchemaDetail:
type: object
properties:
status:
type: string
description:
type: string
request_id:
type: string
category:
type: string
required:
- status
- description
- request_id
- category
title: AssistantsModelIdPutResponsesContentApplicationJsonSchemaDetail
AssistantsModelIdPhoneNumbersPhoneNumberSlugDeleteResponsesContentApplicationJsonSchemaDetail:
type: object
properties:
status:
type: string
description:
type: string
request_id:
type: string
category:
type: string
required:
- status
- description
- request_id
- category
title: AssistantsModelIdPhoneNumbersPhoneNumberSlugDeleteResponsesContentApplicationJsonSchemaDetail
getAContact_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/ContactsContactIdGetResponsesContentApplicationJsonSchemaResponse'
title: getAContact_Response_200
SimulationSuccessCriteriaEvaluation:
type: object
properties:
success:
type: boolean
reasoning:
type: string
required:
- success
- reasoning
description: Evaluation result for a single success criterion.
title: SimulationSuccessCriteriaEvaluation
list-subaccounts_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/SubaccountsGetResponsesContentApplicationJsonSchemaResponse'
title: list-subaccounts_Response_200
SimulationCaseReadOut:
type: object
properties:
simulation_case_id:
type: string
format: uuid
workspace_id:
type: string
suite_id:
type:
- string
- 'null'
format: uuid
description: ID of the simulation suite this case belongs to.
name:
type: string
prompt:
type: string
type:
$ref: '#/components/schemas/SimulationCaseReadOutType'
success_criteria:
type: array
items:
type: string
call_success_type:
$ref: '#/components/schemas/SimulationCaseReadOutCallSuccessType'
base_agent:
oneOf:
- $ref: '#/components/schemas/SimulationCaseReadOutBaseAgent'
- type: 'null'
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
description: Simulation case details.
title: SimulationCaseReadOut
voice_style:
type: integer
description: Range 0 to 1. Enhances the distinct characteristics of the original voice, but may slow down processing and make the voice less stable.
title: voice_style
SimulationCreateIn:
type: object
properties:
simulation_case_id:
type: string
format: uuid
simulation_session_id:
type:
- string
- 'null'
format: uuid
target_agent_id:
type: string
format: uuid
custom_variables:
type: object
additionalProperties:
description: Any type
required:
- simulation_case_id
- target_agent_id
description: Input payload to start a simulation.
title: SimulationCreateIn
AnalyticsGetResponsesContentApplicationJsonSchemaExecutedActions:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaExecutedActionsItemsItems'
description: List of actions executed during the call, as well as their success and frequency rates.
title: AnalyticsGetResponsesContentApplicationJsonSchemaExecutedActions
Create-knowledge-baseRequestBadRequestError:
type: object
properties: {}
title: Create-knowledge-baseRequestBadRequestError
LiveTransferCreateDirectPhoneConfig:
type: object
properties:
transfer_mode:
$ref: '#/components/schemas/LiveTransferCreateDirectPhoneConfigTransferMode'
description: Transfer mode.
message_to_transfer_target:
type: string
description: The message the human agent will hear after the call is transferred to them.
phone:
type: string
description: Phone number to be called for transferring the call
instructions:
type: string
description: 'What words can trigger the transfer call, for example: like I want to talk with a manager'
timeout:
type: integer
description: How long to wait for the transfer call to happen before stop trying to do the transfer
digits:
type: string
description: Extension digits for the transfer call
initiating_msg:
type: string
description: Message that the agent will say before starting the transfer call
goodbye_msg:
type: string
description: Message that the agent will say before leaving the call and connecting you with the transfer call number to start the conversation
failed_msg:
type: string
description: The message that the agent will say in case the person that should answer the phone is not able to answer before the timeout
stop_recording_after_transfer:
type: boolean
description: Whether the call should stop being recorded once it's transferred.
human_detection:
type: boolean
description: If true, the agent will detect whether the transfer target is a human, and once detected, will complete the transfer to the target.
human_detection_timeout_seconds:
type: integer
description: Time in seconds to wait for human detection before giving up. Used in conjunction with human_detection. Minimum 30 seconds, maximum 1800 seconds (30 minutes).
summarization_prompt:
type: string
description: Custom prompt used to generate the warm transfer context summary for the warm transfer leg.
preserve_caller_id:
type: boolean
description: If true, the transfer target will see the caller's phone number instead of the agent's phone number. Only works for numbers purchased through a Synthflow Twilio account; for other numbers the call will fail.
screened:
type: boolean
description: If true, the transfer target will first speak with the AI agent, who can answer questions about the caller and the transcript. The transfer target can then choose to accept or decline the transfer.
required:
- transfer_mode
- phone
- instructions
- initiating_msg
title: LiveTransferCreateDirectPhoneConfig
prompt:
type: string
description: Add variables in curly brackets. For example, {your-variable}.
title: prompt
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingTimezone:
type: string
enum:
- Africa/Accra
- Africa/Addis_Ababa
- Africa/Algiers
- Africa/Asmara
- Africa/Bamako
- Africa/Bangui
- Africa/Banjul
- Africa/Bissau
- Africa/Blantyre
- Africa/Brazzaville
- Africa/Bujumbura
- Africa/Cairo
- Africa/Casablanca
- Africa/Ceuta
- Africa/Conakry
- Africa/Dakar
- Africa/Dar_es_Salaam
- Africa/Djibouti
- Africa/Douala
- Africa/El_Aaiun
- Africa/Freetown
- Africa/Gaborone
- Africa/Harare
- Africa/Johannesburg
- Africa/Juba
- Africa/Kampala
- Africa/Khartoum
- Africa/Kigali
- Africa/Kinshasa
- Africa/Lagos
- Africa/Libreville
- Africa/Lome
- Africa/Luanda
- Africa/Lubumbashi
- Africa/Lusaka
- Africa/Malabo
- Africa/Maputo
- Africa/Maseru
- Africa/Mbabane
- Africa/Mogadishu
- Africa/Monrovia
- Africa/Nairobi
- Africa/Ndjamena
- Africa/Niamey
- Africa/Nouakchott
- Africa/Ouagadougou
- Africa/Porto-Novo
- Africa/Sao_Tome
- Africa/Tripoli
- Africa/Tunis
- Africa/Windhoek
- America/Adak
- America/Anchorage
- America/Anguilla
- America/Antigua
- America/Araguaina
- America/Argentina/Buenos_Aires
- America/Argentina/Catamarca
- America/Argentina/Cordoba
- America/Argentina/Jujuy
- America/Argentina/La_Rioja
- America/Argentina/Mendoza
- America/Argentina/Rio_Gallegos
- America/Argentina/Salta
- America/Argentina/San_Juan
- America/Argentina/San_Luis
- America/Argentina/Tucuman
- America/Argentina/Ushuaia
- America/Aruba
- America/Asuncion
- America/Atikokan
- America/Bahia
- America/Bahia_Banderas
- America/Barbados
- America/Belem
- America/Belize
- America/Blanc-Sablon
- America/Boa_Vista
- America/Bogota
- America/Boise
- America/Cambridge_Bay
- America/Campo_Grande
- America/Cancun
- America/Caracas
- America/Cayenne
- America/Cayman
- America/Chicago
- America/Chihuahua
- America/Ciudad_Juarez
- America/Costa_Rica
- America/Creston
- America/Cuiaba
- America/Curacao
- America/Danmarkshavn
- America/Dawson
- America/Dawson_Creek
- America/Denver
- America/Detroit
- America/Dominica
- America/Edmonton
- America/Eirunepe
- America/El_Salvador
- America/Fort_Nelson
- America/Fortaleza
- America/Glace_Bay
- America/Goose_Bay
- America/Grand_Turk
- America/Grenada
- America/Guadeloupe
- America/Guatemala
- America/Guayaquil
- America/Guyana
- America/Halifax
- America/Havana
- America/Hermosillo
- America/Indiana/Indianapolis
- America/Indiana/Knox
- America/Indiana/Marengo
- America/Indiana/Petersburg
- America/Indiana/Tell_City
- America/Indiana/Vevay
- America/Indiana/Vincennes
- America/Indiana/Winamac
- America/Inuvik
- America/Iqaluit
- America/Jamaica
- America/Juneau
- America/Kentucky/Louisville
- America/Kentucky/Monticello
- America/Kralendijk
- America/La_Paz
- America/Lima
- America/Los_Angeles
- America/Lower_Princes
- America/Maceio
- America/Managua
- America/Manaus
- America/Marigot
- America/Martinique
- America/Matamoros
- America/Mazatlan
- America/Menominee
- America/Merida
- America/Metlakatla
- America/Mexico_City
- America/Miquelon
- America/Moncton
- America/Monterrey
- America/Montevideo
- America/Montserrat
- America/Nassau
- America/New_York
- America/Nome
- America/Noronha
- America/North_Dakota/Beulah
- America/North_Dakota/Center
- America/North_Dakota/New_Salem
- America/Nuuk
- America/Ojinaga
- America/Panama
- America/Paramaribo
- America/Phoenix
- America/Port_of_Spain
- America/Port-au-Prince
- America/Porto_Velho
- America/Puerto_Rico
- America/Punta_Arenas
- America/Rankin_Inlet
- America/Recife
- America/Regina
- America/Resolute
- America/Rio_Branco
- America/Santarem
- America/Santiago
- America/Santo_Domingo
- America/Sao_Paulo
- America/Scoresbysund
- America/Sitka
- America/St_Barthelemy
- America/St_Johns
- America/St_Kitts
- America/St_Lucia
- America/St_Thomas
- America/St_Vincent
- America/Swift_Current
- America/Tegucigalpa
- America/Thule
- America/Tijuana
- America/Toronto
- America/Tortola
- America/Vancouver
- America/Whitehorse
- America/Winnipeg
- America/Yakutat
- Antarctica/Casey
- Antarctica/Davis
- Antarctica/DumontDUrville
- Antarctica/Macquarie
- Antarctica/Mawson
- Antarctica/McMurdo
- Antarctica/Palmer
- Antarctica/Rothera
- Antarctica/Syowa
- Antarctica/Troll
- Antarctica/Vostok
- Arctic/Longyearbyen
- Asia/Aden
- Asia/Almaty
- Asia/Amman
- Asia/Anadyr
- Asia/Aqtau
- Asia/Aqtobe
- Asia/Ashgabat
- Asia/Atyrau
- Asia/Baghdad
- Asia/Bahrain
- Asia/Baku
- Asia/Bangkok
- Asia/Barnaul
- Asia/Beirut
- Asia/Bishkek
- Asia/Brunei
- Asia/Chita
- Asia/Choibalsan
- Asia/Colombo
- Asia/Damascus
- Asia/Dhaka
- Asia/Dili
- Asia/Dubai
- Asia/Dushanbe
- Asia/Famagusta
- Asia/Gaza
- Asia/Hebron
- Asia/Ho_Chi_Minh
- Asia/Hong_Kong
- Asia/Hovd
- Asia/Irkutsk
- Asia/Jakarta
- Asia/Jayapura
- Asia/Jerusalem
- Asia/Kabul
- Asia/Kamchatka
- Asia/Karachi
- Asia/Kathmandu
- Asia/Khandyga
- Asia/Kolkata
- Asia/Krasnoyarsk
- Asia/Kuala_Lumpur
- Asia/Kuching
- Asia/Kuwait
- Asia/Macau
- Asia/Magadan
- Asia/Makassar
- Asia/Manila
- Asia/Muscat
- Asia/Nicosia
- Asia/Novokuznetsk
- Asia/Novosibirsk
- Asia/Omsk
- Asia/Oral
- Asia/Phnom_Penh
- Asia/Pontianak
- Asia/Pyongyang
- Asia/Qatar
- Asia/Qostanay
- Asia/Qyzylorda
- Asia/Riyadh
- Asia/Sakhalin
- Asia/Samarkand
- Asia/Seoul
- Asia/Shanghai
- Asia/Singapore
- Asia/Srednekolymsk
- Asia/Taipei
- Asia/Tashkent
- Asia/Tbilisi
- Asia/Tehran
- Asia/Thimphu
- Asia/Tokyo
- Asia/Tomsk
- Asia/Ulaanbaatar
- Asia/Urumqi
- Asia/Ust-Nera
- Asia/Vientiane
- Asia/Vladivostok
- Asia/Yakutsk
- Asia/Yangon
- Asia/Yekaterinburg
- Asia/Yerevan
- Atlantic/Azores
- Atlantic/Bermuda
- Atlantic/Canary
- Atlantic/Cape_Verde
- Atlantic/Faroe
- Atlantic/Madeira
- Atlantic/Reykjavik
- Atlantic/South_Georgia
- Atlantic/St_Helena
- Atlantic/Stanley
- Australia/Adelaide
- Australia/Brisbane
- Australia/Broken_Hill
- Australia/Darwin
- Australia/Eucla
- Australia/Hobart
- Australia/Lindeman
- Australia/Lord_Howe
- Australia/Melbourne
- Australia/Perth
- Australia/Sydney
- Europe/Amsterdam
- Europe/Andorra
- Europe/Astrakhan
- Europe/Athens
- Europe/Belgrade
- Europe/Berlin
- Europe/Bratislava
- Europe/Brussels
- Europe/Bucharest
- Europe/Budapest
- Europe/Busingen
- Europe/Chisinau
- Europe/Copenhagen
- Europe/Dublin
- Europe/Gibraltar
- Europe/Guernsey
- Europe/Helsinki
- Europe/Isle_of_Man
- Europe/Istanbul
- Europe/Jersey
- Europe/Kaliningrad
- Europe/Kirov
- Europe/Kyiv
- Europe/Lisbon
- Europe/Ljubljana
- Europe/London
- Europe/Luxembourg
- Europe/Madrid
- Europe/Malta
- Europe/Mariehamn
- Europe/Minsk
- Europe/Monaco
- Europe/Moscow
- Europe/Oslo
- Europe/Paris
- Europe/Podgorica
- Europe/Prague
- Europe/Riga
- Europe/Rome
- Europe/Samara
- Europe/San_Marino
- Europe/Sarajevo
- Europe/Saratov
- Europe/Simferopol
- Europe/Skopje
- Europe/Sofia
- Europe/Stockholm
- Europe/Tallinn
- Europe/Tirane
- Europe/Ulyanovsk
- Europe/Vaduz
- Europe/Vatican
- Europe/Vienna
- Europe/Vilnius
- Europe/Volgograd
- Europe/Warsaw
- Europe/Zagreb
- Europe/Zurich
- Indian/Antananarivo
- Indian/Chagos
- Indian/Christmas
- Indian/Cocos
- Indian/Comoro
- Indian/Kerguelen
- Indian/Mahe
- Indian/Maldives
- Indian/Mauritius
- Indian/Mayotte
- Indian/Reunion
- Pacific/Apia
- Pacific/Auckland
- Pacific/Bougainville
- Pacific/Chatham
- Pacific/Chuuk
- Pacific/Easter
- Pacific/Efate
- Pacific/Fakaofo
- Pacific/Fiji
- Pacific/Funafuti
- Pacific/Galapagos
- Pacific/Gambier
- Pacific/Guadalcanal
- Pacific/Guam
- Pacific/Honolulu
- Pacific/Kanton
- Pacific/Kiritimati
- Pacific/Kosrae
- Pacific/Kwajalein
- Pacific/Majuro
- Pacific/Marquesas
- Pacific/Midway
- Pacific/Nauru
- Pacific/Niue
- Pacific/Norfolk
- Pacific/Noumea
- Pacific/Pago_Pago
- Pacific/Palau
- Pacific/Pitcairn
- Pacific/Pohnpei
- Pacific/Port_Moresby
- Pacific/Rarotonga
- Pacific/Saipan
- Pacific/Tahiti
- Pacific/Tarawa
- Pacific/Tongatapu
- Pacific/Wake
- Pacific/Wallis
- US/Alaska
- US/Central
- US/Eastern
- US/Hawaii
- US/Mountain
- US/Pacific
description: '[List of possible time zones](/time-zones).'
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingTimezone
voice_prompt:
type: string
description: Slightly alters the agent's intonation, talking speed or sentiment for a subtle yet noticeable effect.
title: voice_prompt
ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionQueryParametersItems:
type: object
properties:
key:
type: string
description: Key name
value:
type: string
description: Value that will be assigned to the key
required:
- key
- value
title: ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionQueryParametersItems
create-subaccount_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SubaccountsPostResponsesContentApplicationJsonSchemaResponse'
title: create-subaccount_Response_200
VoicesGetParametersProvider:
type: string
enum:
- elevenlabs
- deepgram
- synthflow
default: elevenlabs
title: VoicesGetParametersProvider
VoicesGetResponsesContentApplicationJsonSchemaResponseVoicesItemsProvider:
type: string
enum:
- elevenlabs
- deepgram
- synthflow
description: Voice provider (elevenlabs, deepgram, or synthflow).
title: VoicesGetResponsesContentApplicationJsonSchemaResponseVoicesItemsProvider
ActionsActionIdPutResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
action_id:
type: string
title: ActionsActionIdPutResponsesContentApplicationJsonSchemaResponse
AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistants:
type: object
properties:
end_call_reasons:
type: array
items:
type: string
description: Optional. Some GET responses include `end_call_reasons` at the top level of each assistant object (in addition to `agent.end_call_reasons`). To configure end-call reasons, set **`agent.end_call_reasons`** on create or update requests; a top-level `end_call_reasons` on those requests is ignored.
description:
type: string
description: Agent description.
phone_number:
type: string
description: The phone number attached to the agent.
external_webhook_url:
type: string
description: URL of the webhook that should receive data after the call, such as the transcript.
is_recording:
type: boolean
description: Whether the conversation should be recorded.
max_duration:
$ref: '#/components/schemas/AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsMaxDuration'
voicemail_message:
$ref: '#/components/schemas/AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessage'
description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`.
type:
$ref: '#/components/schemas/type'
name:
$ref: '#/components/schemas/name'
agent:
$ref: '#/components/schemas/Agent'
model_id:
type: string
description: The ID of the agent.
title: AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistants
initialize-action_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/ActionsInitializePostResponsesContentApplicationJsonSchemaResponse'
title: initialize-action_Response_200
KnowledgeBaseKnowledgeBaseIdSourcesSourceIdDeleteResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
body:
type: string
id:
type: string
description: The ID of the deleted source.
title: KnowledgeBaseKnowledgeBaseIdSourcesSourceIdDeleteResponsesContentApplicationJsonSchemaResponse
AnalyticsGetResponsesContentApplicationJsonSchemaExecutedActionsItemsItems:
type: object
properties:
name:
type: string
description: Action name.
value:
type: integer
series:
type: array
items:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaExecutedActionsItemsItemsSeriesItems'
percentage_change:
type: integer
title: AnalyticsGetResponsesContentApplicationJsonSchemaExecutedActionsItemsItems
AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaVoicemailMessageMode:
type: string
enum:
- exact_message
- prompt
description: The mode used to generate the voicemail message.
title: AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaVoicemailMessageMode
SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsPricingTiersItems:
type: object
properties:
pricing_tier_id:
type: string
title: SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsPricingTiersItems
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionHeadersItems:
type: object
properties:
key:
type: string
description: Key name
value:
type: string
description: Value that will be assigned to the key
required:
- key
- value
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionHeadersItems
SimulationScenarioUpdateIn:
type: object
properties:
name:
type:
- string
- 'null'
description: Name of the simulation scenario
description:
type:
- string
- 'null'
description: Description of the simulation scenario
title: SimulationScenarioUpdateIn
KnowledgeBaseKnowledgeBaseIdSourcesGetResponsesContentApplicationJsonSchemaResponseSourcesItemsType:
type: string
enum:
- pdf
- text
- web
description: 'Source type: `text` for plain text, `web` for a scraped web page, or `pdf` for a PDF file.'
title: KnowledgeBaseKnowledgeBaseIdSourcesGetResponsesContentApplicationJsonSchemaResponseSourcesItemsType
AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessage:
type: object
properties:
enabled:
type: boolean
description: Whether voicemail message leaving is enabled.
mode:
$ref: '#/components/schemas/AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessageMode'
description: The mode used to generate the voicemail message.
exact_message:
type: string
description: The exact message to leave on the voicemail. Used when mode is `exact_message`.
prompt:
type: string
description: A prompt used to generate the voicemail message. Used when mode is `prompt`.
description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`.
title: AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessage
AssistantsModelIdDeleteResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
answer:
type: string
title: AssistantsModelIdDeleteResponsesContentApplicationJsonSchemaResponse
SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsPermissions:
type: object
properties:
assistants:
type: boolean
description: Whether this subaccount can create and manage agents.
knowledge_base:
type: boolean
description: Whether this subaccount can access and manage knowledge bases.
actions:
type: boolean
description: Whether this subaccount can create and manage actions.
workflows:
type: boolean
description: Whether this subaccount can create and manage workflows.
contacts:
type: boolean
description: Whether this subaccount can create and manage contacts.
phone_numbers:
type: boolean
description: Whether this subaccount can acquire and manage phone numbers.
inbound:
type: boolean
description: Whether this subaccount can create and manage inbound voice agents.
outbound:
type: boolean
description: Whether this subaccount can create and manage outbound voice agents.
widget:
type: boolean
description: Whether this subaccount can create and manage web widget agents.
chat:
type: boolean
description: Whether this subaccount can create and manage chat agents.
logs:
type: boolean
description: Whether this subaccount can access call, chat, API, and webhook logs.
simulations:
type: boolean
description: Whether this subaccount can access call simulations and evaluations.
analytics:
type: boolean
description: Whether this subaccount can view the analytics dashboard.
title: SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsPermissions
Get-simulationRequestNotFoundError:
type: object
properties: {}
title: Get-simulationRequestNotFoundError
Generate-simulation-casesRequestBadRequestError:
type: object
properties: {}
title: Generate-simulation-casesRequestBadRequestError
attachAContactToAMemoryStore_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
title: attachAContactToAMemoryStore_Response_200
voice_use_speaker_boost:
type: boolean
description: Amplifies the voice’s likeness to the original speaker, which can slightly slow down the response time.
title: voice_use_speaker_boost
Delete-simulation-suiteRequestNotFoundError:
type: object
properties: {}
title: Delete-simulation-suiteRequestNotFoundError
AssistantsPostRequestBodyContentApplicationJsonSchemaAgentBackgroundNoiseType:
type: string
enum:
- cafe
- office
description: What kind of background noise should be present.
title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentBackgroundNoiseType
list-simulations_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationsGetResponsesContentApplicationJsonSchemaResponse'
title: list-simulations_Response_200
ActionsActionIdDeleteResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
answer:
type: string
title: ActionsActionIdDeleteResponsesContentApplicationJsonSchemaResponse
Create-actionRequestBadRequestError:
type: object
properties: {}
title: Create-actionRequestBadRequestError
detachAMemoryStoreFromAnAgent_Response_200:
type: object
properties:
status:
type: string
title: detachAMemoryStoreFromAnAgent_Response_200
VoicesGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
pagination:
$ref: '#/components/schemas/pagination'
voices:
type: array
items:
$ref: '#/components/schemas/VoicesGetResponsesContentApplicationJsonSchemaResponseVoicesItems'
title: VoicesGetResponsesContentApplicationJsonSchemaResponse
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaInformationExtractor:
type: object
properties:
identifier:
type: string
description: The title that will identify the action
description:
type: string
description: The description of what the action is expected to do
choices:
type: array
items:
type: string
description: The possible choices that will answer the expected description of the action
examples:
type: array
items:
type: string
description: Examples of possible answers that can match the description of the action
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaInformationExtractor
MemoryStoresMemoryStoreIdContactsContactIdMemoryDataGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
memory_store_id:
type: string
memory_store_title:
type: string
memory:
type: string
created_at:
type: string
updated_at:
type: string
title: MemoryStoresMemoryStoreIdContactsContactIdMemoryDataGetResponsesContentApplicationJsonSchemaResponse
CallsGetResponsesContentApplicationJsonSchemaResponseCallsItemsTelephonyDisconnectReason:
type: string
enum:
- unknown
- callee_hangup
- caller_hangup
- error
- forbidden
title: CallsGetResponsesContentApplicationJsonSchemaResponseCallsItemsTelephonyDisconnectReason
Update-knowledge-base-sourceRequestBadRequestError:
type: object
properties: {}
title: Update-knowledge-base-sourceRequestBadRequestError
Delete-knowledge-baseRequestBadRequestError:
type: object
properties: {}
title: Delete-knowledge-baseRequestBadRequestError
CallsCallIdGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
pagination:
$ref: '#/components/schemas/CallsCallIdGetResponsesContentApplicationJsonSchemaResponsePagination'
description: Pagination information for the results.
calls:
type: array
items:
$ref: '#/components/schemas/CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItems'
title: CallsCallIdGetResponsesContentApplicationJsonSchemaResponse
get-knowledge-base_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/KnowledgeBaseIdGetResponsesContentApplicationJsonSchemaResponse'
title: get-knowledge-base_Response_200
AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaMaxDuration:
type: object
properties:
duration_seconds:
type: integer
description: Maximum length of the call in seconds.
is_enabled:
type: boolean
description: Whether there's a limit on call length.
title: AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaMaxDuration
PhonebooksPhoneBookIdEntriesPostResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
key:
type: string
title: PhonebooksPhoneBookIdEntriesPostResponsesContentApplicationJsonSchemaResponse
AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessageMode:
type: string
enum:
- exact_message
- prompt
description: The mode used to generate the voicemail message.
title: AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessageMode
voice-call_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/CallsPostResponsesContentApplicationJsonSchemaResponse'
eta:
type: integer
description: How long it will take to initialize the call, in seconds.
title: voice-call_Response_200
deleteAContact_Response_200:
type: object
properties:
status:
type: string
title: deleteAContact_Response_200
SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsMembersItems:
type: object
properties:
email:
type: string
status:
type: string
title: SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsMembersItems
delete-assistant_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/AssistantsModelIdDeleteResponsesContentApplicationJsonSchemaResponse'
title: delete-assistant_Response_200
SimulationSuiteCreateIn:
type: object
properties:
name:
type: string
description: Name of the simulation suite
model_id:
type: string
description: Agent model ID this suite is for. The suite can only run on this specific agent.
language:
type: string
default: en-US
description: Language locale for the persona agent and test cases (e.g., 'en-US', 'es-ES', 'fr-FR'). Must be a valid locale code. Note that 'multi' is not allowed for simulation suites.
required:
- name
- model_id
title: SimulationSuiteCreateIn
Delete-subaccountRequestBadRequestError:
type: object
properties: {}
title: Delete-subaccountRequestBadRequestError
AgentNoiseCancellation:
type: string
enum:
- standard
- advanced
description: Removes background noise on the customer's side (like chatter in a café or keyboard clicks) to make their voice clearer and easier for the agent to understand.
title: AgentNoiseCancellation
Initialize-actionRequestBadRequestError:
type: object
properties: {}
title: Initialize-actionRequestBadRequestError
CallsGetResponsesContentApplicationJsonSchemaResponseCallsItems:
type: object
properties:
call_id:
$ref: '#/components/schemas/call_id'
model_id:
$ref: '#/components/schemas/model_id'
duration:
type: integer
description: Duration of the call in seconds
end_call_reason:
type: string
description: Reason why the call ended
judge_results:
oneOf:
- description: Any type
- type: 'null'
description: Results from call quality judging
lead_phone_number:
type: string
description: Phone number of the lead
agents_used:
type: array
items:
type: string
description: List of agents used during the call
executed_actions:
$ref: '#/components/schemas/CallsGetResponsesContentApplicationJsonSchemaResponseCallsItemsExecutedActions'
description: Actions executed during the call
recording_url:
type:
- string
- 'null'
type_of_call:
type: string
description: Type of call (inbound or outbound)
recording_duration:
type:
- string
- 'null'
description: Duration of the recording
transcript:
type:
- string
- 'null'
error_message:
type:
- string
- 'null'
description: Error message if the call failed
call_status:
type: string
description: Status of the call
start_time:
type: string
description: Timestamp when the call started (milliseconds since epoch)
lead_name:
type:
- string
- 'null'
description: Name of the lead
name:
type:
- string
- 'null'
description: Name of the call recipient
labels:
type: array
items:
type: string
description: Labels associated with the call
agent_phone_number:
type: string
description: Phone number used by the agent
deployment_type:
type:
- string
- 'null'
description: Type of deployment
timezone:
type:
- string
- 'null'
description: Timezone for the call
telephony_hangup:
oneOf:
- $ref: '#/components/schemas/CallsGetResponsesContentApplicationJsonSchemaResponseCallsItemsTelephonyHangup'
- type: 'null'
telephony_disconnect_reason:
oneOf:
- $ref: '#/components/schemas/CallsGetResponsesContentApplicationJsonSchemaResponseCallsItemsTelephonyDisconnectReason'
- type: 'null'
telephony_duration:
type:
- integer
- 'null'
telephony_start:
type:
- string
- 'null'
format: date
telephony_end:
type:
- string
- 'null'
format: date
campaign_type:
type: string
phone_number_from:
type: string
phone_number_to:
type: string
collected_variables:
type: object
additionalProperties:
type: object
additionalProperties:
$ref: '#/components/schemas/CallsGetResponsesContentApplicationJsonSchemaResponseCallsItemsCollectedVariables'
description: Collected variables (slots) from the conversation flow, keyed by agent ID. May be null if not available.
title: CallsGetResponsesContentApplicationJsonSchemaResponseCallsItems
AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsMaxDuration:
type: object
properties:
duration_seconds:
type: integer
description: Maximum length of the call in seconds.
is_enabled:
type: boolean
description: Whether there's a limit on call length.
title: AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsMaxDuration
VoicesGetResponsesContentApplicationJsonSchemaResponseVoicesItems:
type: object
properties:
voice_id:
type: string
name:
type: string
preview:
type: string
workspace:
type: string
provider:
$ref: '#/components/schemas/VoicesGetResponsesContentApplicationJsonSchemaResponseVoicesItemsProvider'
description: Voice provider (elevenlabs, deepgram, or synthflow).
gender:
oneOf:
- $ref: '#/components/schemas/VoicesGetResponsesContentApplicationJsonSchemaResponseVoicesItemsGender'
- type: 'null'
description: Voice gender.
languages:
type:
- array
- 'null'
items:
type: string
description: ISO language codes supported by this voice.
title: VoicesGetResponsesContentApplicationJsonSchemaResponseVoicesItems
Attach-actionRequestBadRequestError:
type: object
properties: {}
title: Attach-actionRequestBadRequestError
deleteAMemoryStore_Response_200:
type: object
properties:
status:
type: string
title: deleteAMemoryStore_Response_200
deleteAPhoneBook_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
title: deleteAPhoneBook_Response_200
knowledgeBaseSourceDelete_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/KnowledgeBaseKnowledgeBaseIdSourcesSourceIdDeleteResponsesContentApplicationJsonSchemaResponse'
title: knowledgeBaseSourceDelete_Response_200
ActionsActionIdGetResponsesContentApplicationJsonSchemaResponseActionsItems:
type: object
properties:
action_id:
type: string
description: Action ID.
action_type:
$ref: '#/components/schemas/ActionsActionIdGetResponsesContentApplicationJsonSchemaResponseActionsItemsActionType'
description: Action type.
name:
type: string
description: Action name.
description:
type: string
description: Action description.
parameters_hard_coded:
$ref: '#/components/schemas/ActionsActionIdGetResponsesContentApplicationJsonSchemaResponseActionsItemsParametersHardCoded'
title: ActionsActionIdGetResponsesContentApplicationJsonSchemaResponseActionsItems
SubaccountsPostRequestBodyContentApplicationJsonSchemaGrantPermissionsItems:
type: string
enum:
- inbound
- outbound
- widget
- chat
- assistants
- knowledge_base
- actions
- workflows
- contacts
- phone_numbers
- logs
- simulations
- analytics
title: SubaccountsPostRequestBodyContentApplicationJsonSchemaGrantPermissionsItems
LiveTransferUpdateDirectPhoneConfig:
type: object
properties:
transfer_mode:
$ref: '#/components/schemas/LiveTransferUpdateDirectPhoneConfigTransferMode'
description: Transfer mode.
message_to_transfer_target:
type: string
description: The message the human agent will hear after the call is transferred to them.
phone:
type: string
description: Phone number to be called for transferring the call
instructions:
type: string
description: 'What words can trigger the transfer call, for example: like I want to talk with a manager'
timeout:
type: integer
description: How long to wait for the transfer call to happen before stop trying to do the transfer
digits:
type: string
description: Extension digits for the transfer call
initiating_msg:
type: string
description: Message that the agent will say before starting the transfer call
goodbye_msg:
type: string
description: Message that the agent will say before leaving the call and connecting you with the transfer call number to start the conversation
failed_msg:
type: string
description: The message that the agent will say in case the person that should answer the phone is not able to answer before the timeout
enable_background_music:
type: boolean
stop_recording_after_transfer:
type: boolean
description: Whether the call should stop being recorded once it's transferred.
human_detection:
type: boolean
description: If true, the agent will detect whether the transfer target is a human, and once detected, will complete the transfer to the target.
human_detection_timeout_seconds:
type: integer
description: Time in seconds to wait for human detection before giving up. Used in conjunction with human_detection. Minimum 30 seconds, maximum 1800 seconds (30 minutes).
summarization_prompt:
type: string
description: Custom prompt used to generate the warm transfer context summary for the warm transfer leg.
preserve_caller_id:
type: boolean
description: If true, the transfer target will see the caller's phone number instead of the agent's phone number. Only works for numbers purchased through a Synthflow Twilio account; for other numbers the call will fail.
screened:
type: boolean
description: If true, the transfer target will first speak with the AI agent, who can answer questions about the caller and the transcript. The transfer target can then choose to accept or decline the transfer.
required:
- transfer_mode
- phone
- instructions
- initiating_msg
title: LiveTransferUpdateDirectPhoneConfig
SimulationReadOutCallSuccessType:
type: string
enum:
- all
- any
title: SimulationReadOutCallSuccessType
ActionsDetachPostResponsesContentApplicationJsonSchemaResponse:
type: object
properties: {}
title: ActionsDetachPostResponsesContentApplicationJsonSchemaResponse
SimulationScenarioReadOut:
type: object
properties:
id:
type: string
format: uuid
description: Unique identifier for the simulation scenario
name:
type: string
description: Name of the simulation scenario template
description:
type: string
description: Description of what the scenario template should verify when generating test cases
workspace_id:
type: string
description: Workspace ID this simulation scenario belongs to
created_at:
type: string
format: date-time
description: When the simulation scenario was created
updated_at:
type: string
format: date-time
description: When the simulation scenario was last updated
title: SimulationScenarioReadOut
List-callsRequestBadRequestError:
type: object
properties: {}
title: List-callsRequestBadRequestError
Get-simulation-suiteRequestBadRequestError:
type: object
properties: {}
title: Get-simulation-suiteRequestBadRequestError
voice_optimise_streaming_latency:
type: integer
description: Range 0 to 4. Optimises streaming latency
title: voice_optimise_streaming_latency
SimulationCaseGenerateInIncludeTestsItems:
type: string
enum:
- csat_score
- accuracy_of_responses
- script_compliance
- angry_user
- repetitive_phrases
- conversational_naturalness
- task_completion
title: SimulationCaseGenerateInIncludeTestsItems
Get-simulation-scenarioRequestNotFoundError:
type: object
properties: {}
title: Get-simulation-scenarioRequestNotFoundError
CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsExecutedActions:
type: object
properties: {}
description: Actions that were executed during the call.
title: CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsExecutedActions
list-assistant_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/AssistantsGetResponsesContentApplicationJsonSchemaResponse'
title: list-assistant_Response_200
AnalyticsGetResponsesContentApplicationJsonSchemaSentimentStatSeriesItems:
type: object
properties:
date:
type: string
positive:
type: integer
total:
type: integer
title: AnalyticsGetResponsesContentApplicationJsonSchemaSentimentStatSeriesItems
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingCalcomIntegration:
type: string
enum:
- GMeet
- Zoom
description: The selected option will be the meeting type that will be created when the booking is done
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingCalcomIntegration
ActionsGetResponsesContentApplicationJsonSchemaResponsePagination:
type: object
properties:
total_records:
type: integer
limit:
type: integer
offset:
type: integer
title: ActionsGetResponsesContentApplicationJsonSchemaResponsePagination
CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsStatus:
type: string
enum:
- pending
- ringing
- in-progress
- completed
- no-answer
- busy
- failed
- canceled
- hangup_on_voicemail
- left_voicemail
- spam
- paused
- registered
description: The current status of the call.
title: CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsStatus
Create-subaccountRequestBadRequestError:
type: object
properties: {}
title: Create-subaccountRequestBadRequestError
Get-simulation-sessionRequestUnprocessableEntityError:
type: object
properties: {}
title: Get-simulation-sessionRequestUnprocessableEntityError
KnowledgeBaseKnowledgeBaseIdSourcesGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
total_records:
type: integer
description: Total number of sources in the knowledge base.
knowledge_base_id:
$ref: '#/components/schemas/knowledge_base_id'
sources:
type: array
items:
$ref: '#/components/schemas/KnowledgeBaseKnowledgeBaseIdSourcesGetResponsesContentApplicationJsonSchemaResponseSourcesItems'
description: List of knowledge base sources.
title: KnowledgeBaseKnowledgeBaseIdSourcesGetResponsesContentApplicationJsonSchemaResponse
Get-subaccountRequestBadRequestError:
type: object
properties: {}
title: Get-subaccountRequestBadRequestError
ContactsGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/ContactsGetResponsesContentApplicationJsonSchemaResponseItemsItems'
total:
type: integer
page_size:
type: integer
page_number:
type: integer
title: ContactsGetResponsesContentApplicationJsonSchemaResponse
AttachPhoneNumbersToAssistantRequest0:
type: object
properties:
phone_numbers:
type: array
items:
type: string
description: Phone numbers array.
required:
- phone_numbers
title: AttachPhoneNumbersToAssistantRequest0
SimulationSuiteListItem:
type: object
properties:
id:
type: string
format: uuid
description: Suite ID
name:
type: string
description: Name of the simulation suite
model_id:
type: string
description: Agent model ID this suite is for
workspace_id:
type: string
description: Workspace ID this suite belongs to
language:
type: string
default: en-US
description: Language locale for the persona agent and test cases (e.g., 'en-US', 'es-ES', 'fr-FR')
created_at:
type: string
format: date-time
description: When the suite was created
updated_at:
type: string
format: date-time
description: When the suite was last updated
case_summaries:
type: array
items:
$ref: '#/components/schemas/SimulationCaseSummary'
description: Summary of cases in this suite
agent:
$ref: '#/components/schemas/AgentListItem'
description: Agent information associated with this suite
required:
- id
- name
- model_id
- workspace_id
title: SimulationSuiteListItem
AssistantsPostRequestBodyContentApplicationJsonSchemaAgent:
type: object
properties:
timezone:
$ref: '#/components/schemas/timezone'
default: Europe/Berlin
voice_prompt:
$ref: '#/components/schemas/voice_prompt'
voice_stability:
$ref: '#/components/schemas/voice_stability'
voice_similarity_boost:
$ref: '#/components/schemas/voice_similarity_boost'
voice_optimise_streaming_latency:
$ref: '#/components/schemas/voice_optimise_streaming_latency'
voice_style:
$ref: '#/components/schemas/voice_style'
voice_use_speaker_boost:
$ref: '#/components/schemas/voice_use_speaker_boost'
allowed_idle_time_seconds:
$ref: '#/components/schemas/allowed_idle_time_seconds'
initial_pause_seconds:
$ref: '#/components/schemas/initial_pause_seconds'
transcriber_keywords:
$ref: '#/components/schemas/transcriber_keywords'
ring_pause_seconds:
$ref: '#/components/schemas/ring_pause_seconds'
background_noise:
$ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentBackgroundNoise'
description: Add background noise to make the call more natural.
noise_cancellation:
$ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentNoiseCancellation'
description: Removes background noise on the customer's side (like chatter in a café or keyboard clicks) to make their voice clearer and easier for the agent to understand.
realistic_filler_words:
type: boolean
description: If enabled, the agent will be using realistic filler words (for example, "um").
is_transcript_disabled:
type: boolean
description: If set to true, conversations will not be transcribed.
redact_pii:
type: boolean
description: Whether to redact personally identifiable information (PII) from transcripts, post-call webhooks, and internal logs. Redacted data includes credit card numbers, CVVs, expiration dates, social security numbers, names, email addresses, phone numbers, and physical addresses.
synthesizer_filter_words:
type: array
items:
type: string
description: Words or characters that the agent should not say.
end_call_reasons:
type: array
items:
type: string
description: 'Deprecated: use end_call_reasons_v2 instead. Custom conditions that trigger automatic call termination (simple string array format). Works with both simple prompt and Flow Designer agents.'
end_call_reasons_v2:
type: array
items:
$ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentEndCallReasonsV2Items'
description: Custom conditions that trigger automatic call termination with per-reason closing message control. When both end_call_reasons and end_call_reasons_v2 are present, v2 takes precedence.
voice_synthesizer:
$ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentVoiceSynthesizer'
description: The engine used to synthesize voice.
suppression_level:
type: number
format: double
description: Setting this value will enable voice isolation in addition to background noise detection, the value assigned the term is the strength with a higher value stronger voice isolation.
interruption_fade_out:
type: integer
description: Each frame is 20 ms. When you interrupt the bot, the volume slowly goes down to 0 over that many frames. For example, 5 translates to a 100 ms fadeout.
voice_speed:
type: number
format: double
description: Adjust how fast or slow your agent will talk on the call.
voice_volume:
type: number
format: double
description: Adjust how loud or quite your agent will talk on the call.
min_words_to_interrupt:
$ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentMinWordsToInterrupt'
description: You can set how many words the human must speak before the AI will stop speaking and listening.
prompt:
$ref: '#/components/schemas/prompt'
greeting_message:
$ref: '#/components/schemas/greeting_message'
greeting_message_mode:
$ref: '#/components/schemas/greeting_message_mode'
greeting_message_human_talk_timeout:
$ref: '#/components/schemas/greeting_message_human_talk_timeout'
llm:
$ref: '#/components/schemas/llm'
language:
$ref: '#/components/schemas/language'
voice_id:
$ref: '#/components/schemas/voice_id'
patience_level:
$ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentPatienceLevel'
description: Patience level of the agent.
send_user_idle_reminders:
type: boolean
default: false
description: Enables or disables idle reminders.
reminder_after_idle_time_seconds:
type: integer
description: Time in seconds before sending an idle reminder.
reminder_after_idle_message:
type: string
description: The idle reminder message.
fallback_voice_id:
$ref: '#/components/schemas/voice_id'
fallback_provider:
$ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentFallbackProvider'
description: The provider for the fallback voice (elevenlabs, deepgram, or synthflow).
fallback_model:
type: string
description: The model to be used by the fallback provider.
consent_message:
type: string
description: The message the agent will say to ask the customer for their consent to have the call recorded.
is_consent_enabled:
type: boolean
description: Whether the agent should ask for consent to record the call.
title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgent
AssistantsPostRequestBodyContentApplicationJsonSchemaVoicemailMessageMode:
type: string
enum:
- exact_message
- prompt
description: The mode used to generate the voicemail message.
title: AssistantsPostRequestBodyContentApplicationJsonSchemaVoicemailMessageMode
AgentPatienceLevel:
type: string
enum:
- low
- medium
- high
description: Patience level of the agent.
title: AgentPatienceLevel
ActionsInitializePostResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
answer:
type: string
title: ActionsInitializePostResponsesContentApplicationJsonSchemaResponse
AgentMinWordsToInterrupt:
type: string
enum:
- '0'
- '1'
- '2'
- '3'
- '4'
- '5'
description: You can set how many words the human must speak before the AI will stop speaking and listening.
title: AgentMinWordsToInterrupt
SubaccountsSubaccountIdPutResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
subaccount_id:
$ref: '#/components/schemas/subaccount_id'
api_key:
type: string
user_email:
type: string
sign_in_link:
type: string
title: SubaccountsSubaccountIdPutResponsesContentApplicationJsonSchemaResponse
AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
pagination:
$ref: '#/components/schemas/pagination'
assistants:
$ref: '#/components/schemas/AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistants'
title: AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponse
getDataForASpecificMemoryStoreAndContact_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/MemoryStoresMemoryStoreIdContactsContactIdMemoryDataGetResponsesContentApplicationJsonSchemaResponse'
title: getDataForASpecificMemoryStoreAndContact_Response_200
list-simulation-suites_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/PaginatedSimulationSuitesList'
title: list-simulation-suites_Response_200
Update-simulation-scenarioRequestNotFoundError:
type: object
properties: {}
title: Update-simulation-scenarioRequestNotFoundError
ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionHttpMode:
type: string
enum:
- GET
- POST
- PATCH
- PUT
default: GET
description: Select the method that will be used
title: ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionHttpMode
call_id:
type: string
description: Call ID. You can find it on the logs page in your dashboard.
title: call_id
update-knowledge-base-source_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/KnowledgeBaseKnowledgeBaseIdSourcesSourceIdPutResponsesContentApplicationJsonSchemaResponse'
title: update-knowledge-base-source_Response_200
update-assistant_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/AssistantsModelIdPutResponsesContentApplicationJsonSchemaResponse'
details:
$ref: '#/components/schemas/AssistantsModelIdPutResponsesContentApplicationJsonSchemaDetails'
title: update-assistant_Response_200
getAMemoryStore_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/MemoryStoresMemoryStoreIdGetResponsesContentApplicationJsonSchemaResponse'
title: getAMemoryStore_Response_200
Delete-simulation-scenarioRequestNotFoundError:
type: object
properties: {}
title: Delete-simulation-scenarioRequestNotFoundError
ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionVariablesDuringTheCallItems:
type: object
properties:
name:
type: string
description: Name of the variable that will be used during the call
description:
type: string
description: Description of the functionality of the variable
example:
type: string
description: Example of the value/answer that can be given to fill the variable
type:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionVariablesDuringTheCallItemsType'
default: string
description: Type of the variable
title: ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionVariablesDuringTheCallItems
SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsMembersItems:
type: object
properties:
email:
type: string
status:
type: string
title: SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsMembersItems
AnalyticsGetResponsesContentApplicationJsonSchemaAssistantPerformanceByCallsMadeItems:
type: object
properties:
model_id:
type: string
name:
type: string
calls_made:
type: integer
percent_change:
type: integer
title: AnalyticsGetResponsesContentApplicationJsonSchemaAssistantPerformanceByCallsMadeItems
ActionsPostRequestBodyContentApplicationJsonSchemaLiveTransfer:
oneOf:
- $ref: '#/components/schemas/LiveTransferCreateDirectPhoneConfig'
- $ref: '#/components/schemas/LiveTransferCreatePhoneBookConfig'
title: ActionsPostRequestBodyContentApplicationJsonSchemaLiveTransfer
Update-simulation-caseRequestNotFoundError:
type: object
properties: {}
title: Update-simulation-caseRequestNotFoundError
AnalyticsGetResponsesContentApplicationJsonSchemaCallStatusStat:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaCallStatusStatItemsItems'
series:
type: array
items:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaCallStatusStatSeriesItems'
description: Call status overview.
title: AnalyticsGetResponsesContentApplicationJsonSchemaCallStatusStat
Get-simulationRequestBadRequestError:
type: object
properties: {}
title: Get-simulationRequestBadRequestError
LiveTransferCreateDirectPhoneConfigTransferMode:
type: string
enum:
- cold_transfer
- warm_transfer
- warm_transfer_with_context
description: Transfer mode.
title: LiveTransferCreateDirectPhoneConfigTransferMode
SimulationsGetParametersStatus:
type: string
enum:
- in-progress
- completed
- failed
title: SimulationsGetParametersStatus
update-knowledge-base_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/KnowledgeBaseIdPutResponsesContentApplicationJsonSchemaResponse'
title: update-knowledge-base_Response_200
CallsGetResponsesContentApplicationJsonSchemaResponsePagination:
type: object
properties:
total_records:
type: integer
description: Total number of call records
limit:
type: integer
description: Maximum number of records per page
offset:
type: integer
description: Starting index for the current page
description: Pagination information for the response
title: CallsGetResponsesContentApplicationJsonSchemaResponsePagination
AnalyticsGetResponsesContentApplicationJsonSchemaExecutedActionsItemsItemsSeriesItems:
type: object
properties:
date:
type: string
value:
type: integer
title: AnalyticsGetResponsesContentApplicationJsonSchemaExecutedActionsItemsItemsSeriesItems
VoicesGetResponsesContentApplicationJsonSchemaResponseVoicesItemsGender:
type: string
enum:
- male
- female
- neutral
description: Voice gender.
title: VoicesGetResponsesContentApplicationJsonSchemaResponseVoicesItemsGender
ContactsGetResponsesContentApplicationJsonSchemaResponseItemsItemsContactMetadata:
type: object
properties: {}
title: ContactsGetResponsesContentApplicationJsonSchemaResponseItemsItemsContactMetadata
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionHttpMode:
type: string
enum:
- GET
- POST
- PATCH
- PUT
default: GET
description: Select the method that will be used
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionHttpMode
Execute-simulation-suiteRequestBadRequestError:
type: object
properties: {}
title: Execute-simulation-suiteRequestBadRequestError
Delete-simulation-caseRequestBadRequestError:
type: object
properties: {}
title: Delete-simulation-caseRequestBadRequestError
Get-phone-callRequestNotFoundError:
type: object
properties:
detail:
$ref: '#/components/schemas/CallsCallIdGetResponsesContentApplicationJsonSchemaDetail'
title: Get-phone-callRequestNotFoundError
detach-knowledge-base_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/KnowledgeBaseKnowledgeBaseIdDetachPostResponsesContentApplicationJsonSchemaResponse'
title: detach-knowledge-base_Response_200
KnowledgeBaseGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
total_records:
type: integer
default: 0
description: The total number of knowledge bases.
knowledge_bases:
type: array
items:
$ref: '#/components/schemas/KnowledgeBaseGetResponsesContentApplicationJsonSchemaResponseKnowledgeBasesItems'
title: KnowledgeBaseGetResponsesContentApplicationJsonSchemaResponse
LiveTransferUpdatePhoneBookConfigTransferMode:
type: string
enum:
- cold_transfer
- warm_transfer
- warm_transfer_with_context
description: Transfer mode.
title: LiveTransferUpdatePhoneBookConfigTransferMode
ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingCalcomIntegration:
type: string
enum:
- GMeet
- Zoom
description: The selected option will be the meeting type that will be created when the booking is done
title: ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingCalcomIntegration
ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionHeadersItems:
type: object
properties:
key:
type: string
description: Key name
value:
type: string
description: Value that will be assigned to the key
required:
- key
- value
title: ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionHeadersItems
attachDocumentToSource_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/KnowledgeBaseKnowledgeBaseIdSourcesPostResponsesContentApplicationJsonSchemaResponse'
required:
- status
- response
title: attachDocumentToSource_Response_200
ActionsActionIdGetResponsesContentApplicationJsonSchemaResponseActionsItemsParametersHardCoded:
type: object
properties:
sms_message_text:
type: string
title: ActionsActionIdGetResponsesContentApplicationJsonSchemaResponseActionsItemsParametersHardCoded
AnalyticsGetResponsesContentApplicationJsonSchemaRecentCallHistory:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaRecentCallHistoryItemsItems'
description: Log of all recent calls.
title: AnalyticsGetResponsesContentApplicationJsonSchemaRecentCallHistory
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBooking:
type: object
properties:
first_appt_date:
type: string
format: date
description: The initial date that will be the used to start searching for booking appointments, the format is YYYY-MM-DD
max_time_slots:
type: integer
description: The amount of slots that the agent will recommend per day when trying to book an appointment. The limit is 3
min_hours_diff:
type: integer
description: The difference in hours between appointments that will be suggested by the agent
no_of_days:
type: integer
description: Number of days that the agent will suggest appointments
timezone:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingTimezone'
description: '[List of possible time zones](/time-zones).'
CALCOM:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingCalcom'
GHL:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingGhl'
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBooking
SimulationErrorInfo:
type: object
properties:
message:
type: string
code:
type: integer
type:
type: string
required:
- message
- code
- type
description: Error information for failed simulations.
title: SimulationErrorInfo
AssistantsPostRequestBodyContentApplicationJsonSchemaAgentEndCallReasonsV2ItemsClosingMessageMode:
type: string
enum:
- static
- prompt
- none
description: 'Controls how the farewell message is generated. static: message is spoken verbatim. prompt: message is an instruction to the LLM. none: LLM generates its own farewell.'
title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentEndCallReasonsV2ItemsClosingMessageMode
Execute-simulation-suiteRequestNotFoundError:
type: object
properties: {}
title: Execute-simulation-suiteRequestNotFoundError
CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsEndCallReason:
type: string
enum:
- human_pick_up_cut_off
- voicemail
- voicemail_cut_off
- voicemail_message_left
- agent_ended_call
- human_ended_call
- custom_end_call
- timeout
- error
description: The reason the call ended from the AI agent's perspective.
title: CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsEndCallReason
SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaRevokePermissionsItems:
type: string
enum:
- inbound
- outbound
- widget
- chat
- assistants
- knowledge_base
- actions
- workflows
- contacts
- phone_numbers
- logs
- simulations
- analytics
title: SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaRevokePermissionsItems
ActionsPostResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
action_id:
type: string
action_type:
type: string
prompt_variables:
type: array
items:
description: Any type
title: ActionsPostResponsesContentApplicationJsonSchemaResponse
ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionCustomAuth:
type: object
properties:
is_needed:
type: boolean
default: false
description: If authorization to use the set URL and method are required set to true
location:
type: string
description: 'Section where the authorization will be used like: header'
key:
type: string
default: Bearer
description: The authorization type. Default is Bearer
value:
type: string
description: The value of the token that will be used with the authentication type
title: ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionCustomAuth
SimulationCaseUpdateIn:
type: object
properties:
name:
type:
- string
- 'null'
prompt:
type:
- string
- 'null'
success_criteria:
type:
- array
- 'null'
items:
type: string
call_success_type:
oneOf:
- $ref: '#/components/schemas/SimulationCaseUpdateInCallSuccessType'
- type: 'null'
suite_id:
type:
- string
- 'null'
format: uuid
description: ID of the simulation suite to assign this case to.
description: Fields that can be updated for a simulation case.
title: SimulationCaseUpdateIn
list-actions_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/ActionsGetResponsesContentApplicationJsonSchemaResponse'
title: list-actions_Response_200
AssistantsPostRequestBodyContentApplicationJsonSchemaMaxDuration:
type: object
properties:
duration_seconds:
type: integer
description: Maximum length of the call in seconds.
is_enabled:
type: boolean
description: Whether there's a limit on call length.
title: AssistantsPostRequestBodyContentApplicationJsonSchemaMaxDuration
List-simulation-scenariosRequestBadRequestError:
type: object
properties: {}
title: List-simulation-scenariosRequestBadRequestError
attachAMemoryStoreToAnAgent_Response_200:
type: object
properties:
status:
type: string
title: attachAMemoryStoreToAnAgent_Response_200
List-simulation-cases-by-agentRequestBadRequestError:
type: object
properties: {}
title: List-simulation-cases-by-agentRequestBadRequestError
ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingGhl:
type: object
properties:
calendar_id:
type: string
description: Calendar ID from the GHL calendar. Can be obtained from GHL in calendars > Calendar Settings
autoconfirm:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingGhlAutoconfirm'
description: If confirmed is selected the meeting will be automatically accepted and you don't have to do anything, otherwise you have to go to GHL calendar and confirm the meeting
booking_title:
type: string
description: The title that will be displayed in the Synthflow app for the created action
required:
- calendar_id
- autoconfirm
- booking_title
description: 'Important: You need to be connected to the GHL integration'
title: ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingGhl
Create-simulation-caseRequestBadRequestError:
type: object
properties: {}
title: Create-simulation-caseRequestBadRequestError
Delete-assistantRequestBadRequestError:
type: object
properties: {}
title: Delete-assistantRequestBadRequestError
Update-simulation-scenarioRequestBadRequestError:
type: object
properties: {}
title: Update-simulation-scenarioRequestBadRequestError
pagination:
type: object
properties:
total_records:
type: integer
limit:
type: integer
offset:
type: integer
title: pagination
status:
type: string
description: Whether the request was successful.
title: status
SimulationCaseCreateInType:
type: string
enum:
- custom
- agent_based
description: Simulation case type.
title: SimulationCaseCreateInType
create-action_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/ActionsPostResponsesContentApplicationJsonSchemaResponse'
title: create-action_Response_200
ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingTimezone:
type: string
enum:
- Africa/Accra
- Africa/Addis_Ababa
- Africa/Algiers
- Africa/Asmara
- Africa/Bamako
- Africa/Bangui
- Africa/Banjul
- Africa/Bissau
- Africa/Blantyre
- Africa/Brazzaville
- Africa/Bujumbura
- Africa/Cairo
- Africa/Casablanca
- Africa/Ceuta
- Africa/Conakry
- Africa/Dakar
- Africa/Dar_es_Salaam
- Africa/Djibouti
- Africa/Douala
- Africa/El_Aaiun
- Africa/Freetown
- Africa/Gaborone
- Africa/Harare
- Africa/Johannesburg
- Africa/Juba
- Africa/Kampala
- Africa/Khartoum
- Africa/Kigali
- Africa/Kinshasa
- Africa/Lagos
- Africa/Libreville
- Africa/Lome
- Africa/Luanda
- Africa/Lubumbashi
- Africa/Lusaka
- Africa/Malabo
- Africa/Maputo
- Africa/Maseru
- Africa/Mbabane
- Africa/Mogadishu
- Africa/Monrovia
- Africa/Nairobi
- Africa/Ndjamena
- Africa/Niamey
- Africa/Nouakchott
- Africa/Ouagadougou
- Africa/Porto-Novo
- Africa/Sao_Tome
- Africa/Tripoli
- Africa/Tunis
- Africa/Windhoek
- America/Adak
- America/Anchorage
- America/Anguilla
- America/Antigua
- America/Araguaina
- America/Argentina/Buenos_Aires
- America/Argentina/Catamarca
- America/Argentina/Cordoba
- America/Argentina/Jujuy
- America/Argentina/La_Rioja
- America/Argentina/Mendoza
- America/Argentina/Rio_Gallegos
- America/Argentina/Salta
- America/Argentina/San_Juan
- America/Argentina/San_Luis
- America/Argentina/Tucuman
- America/Argentina/Ushuaia
- America/Aruba
- America/Asuncion
- America/Atikokan
- America/Bahia
- America/Bahia_Banderas
- America/Barbados
- America/Belem
- America/Belize
- America/Blanc-Sablon
- America/Boa_Vista
- America/Bogota
- America/Boise
- America/Cambridge_Bay
- America/Campo_Grande
- America/Cancun
- America/Caracas
- America/Cayenne
- America/Cayman
- America/Chicago
- America/Chihuahua
- America/Ciudad_Juarez
- America/Costa_Rica
- America/Creston
- America/Cuiaba
- America/Curacao
- America/Danmarkshavn
- America/Dawson
- America/Dawson_Creek
- America/Denver
- America/Detroit
- America/Dominica
- America/Edmonton
- America/Eirunepe
- America/El_Salvador
- America/Fort_Nelson
- America/Fortaleza
- America/Glace_Bay
- America/Goose_Bay
- America/Grand_Turk
- America/Grenada
- America/Guadeloupe
- America/Guatemala
- America/Guayaquil
- America/Guyana
- America/Halifax
- America/Havana
- America/Hermosillo
- America/Indiana/Indianapolis
- America/Indiana/Knox
- America/Indiana/Marengo
- America/Indiana/Petersburg
- America/Indiana/Tell_City
- America/Indiana/Vevay
- America/Indiana/Vincennes
- America/Indiana/Winamac
- America/Inuvik
- America/Iqaluit
- America/Jamaica
- America/Juneau
- America/Kentucky/Louisville
- America/Kentucky/Monticello
- America/Kralendijk
- America/La_Paz
- America/Lima
- America/Los_Angeles
- America/Lower_Princes
- America/Maceio
- America/Managua
- America/Manaus
- America/Marigot
- America/Martinique
- America/Matamoros
- America/Mazatlan
- America/Menominee
- America/Merida
- America/Metlakatla
- America/Mexico_City
- America/Miquelon
- America/Moncton
- America/Monterrey
- America/Montevideo
- America/Montserrat
- America/Nassau
- America/New_York
- America/Nome
- America/Noronha
- America/North_Dakota/Beulah
- America/North_Dakota/Center
- America/North_Dakota/New_Salem
- America/Nuuk
- America/Ojinaga
- America/Panama
- America/Paramaribo
- America/Phoenix
- America/Port_of_Spain
- America/Port-au-Prince
- America/Porto_Velho
- America/Puerto_Rico
- America/Punta_Arenas
- America/Rankin_Inlet
- America/Recife
- America/Regina
- America/Resolute
- America/Rio_Branco
- America/Santarem
- America/Santiago
- America/Santo_Domingo
- America/Sao_Paulo
- America/Scoresbysund
- America/Sitka
- America/St_Barthelemy
- America/St_Johns
- America/St_Kitts
- America/St_Lucia
- America/St_Thomas
- America/St_Vincent
- America/Swift_Current
- America/Tegucigalpa
- America/Thule
- America/Tijuana
- America/Toronto
- America/Tortola
- America/Vancouver
- America/Whitehorse
- America/Winnipeg
- America/Yakutat
- Antarctica/Casey
- Antarctica/Davis
- Antarctica/DumontDUrville
- Antarctica/Macquarie
- Antarctica/Mawson
- Antarctica/McMurdo
- Antarctica/Palmer
- Antarctica/Rothera
- Antarctica/Syowa
- Antarctica/Troll
- Antarctica/Vostok
- Arctic/Longyearbyen
- Asia/Aden
- Asia/Almaty
- Asia/Amman
- Asia/Anadyr
- Asia/Aqtau
- Asia/Aqtobe
- Asia/Ashgabat
- Asia/Atyrau
- Asia/Baghdad
- Asia/Bahrain
- Asia/Baku
- Asia/Bangkok
- Asia/Barnaul
- Asia/Beirut
- Asia/Bishkek
- Asia/Brunei
- Asia/Chita
- Asia/Choibalsan
- Asia/Colombo
- Asia/Damascus
- Asia/Dhaka
- Asia/Dili
- Asia/Dubai
- Asia/Dushanbe
- Asia/Famagusta
- Asia/Gaza
- Asia/Hebron
- Asia/Ho_Chi_Minh
- Asia/Hong_Kong
- Asia/Hovd
- Asia/Irkutsk
- Asia/Jakarta
- Asia/Jayapura
- Asia/Jerusalem
- Asia/Kabul
- Asia/Kamchatka
- Asia/Karachi
- Asia/Kathmandu
- Asia/Khandyga
- Asia/Kolkata
- Asia/Krasnoyarsk
- Asia/Kuala_Lumpur
- Asia/Kuching
- Asia/Kuwait
- Asia/Macau
- Asia/Magadan
- Asia/Makassar
- Asia/Manila
- Asia/Muscat
- Asia/Nicosia
- Asia/Novokuznetsk
- Asia/Novosibirsk
- Asia/Omsk
- Asia/Oral
- Asia/Phnom_Penh
- Asia/Pontianak
- Asia/Pyongyang
- Asia/Qatar
- Asia/Qostanay
- Asia/Qyzylorda
- Asia/Riyadh
- Asia/Sakhalin
- Asia/Samarkand
- Asia/Seoul
- Asia/Shanghai
- Asia/Singapore
- Asia/Srednekolymsk
- Asia/Taipei
- Asia/Tashkent
- Asia/Tbilisi
- Asia/Tehran
- Asia/Thimphu
- Asia/Tokyo
- Asia/Tomsk
- Asia/Ulaanbaatar
- Asia/Urumqi
- Asia/Ust-Nera
- Asia/Vientiane
- Asia/Vladivostok
- Asia/Yakutsk
- Asia/Yangon
- Asia/Yekaterinburg
- Asia/Yerevan
- Atlantic/Azores
- Atlantic/Bermuda
- Atlantic/Canary
- Atlantic/Cape_Verde
- Atlantic/Faroe
- Atlantic/Madeira
- Atlantic/Reykjavik
- Atlantic/South_Georgia
- Atlantic/St_Helena
- Atlantic/Stanley
- Australia/Adelaide
- Australia/Brisbane
- Australia/Broken_Hill
- Australia/Darwin
- Australia/Eucla
- Australia/Hobart
- Australia/Lindeman
- Australia/Lord_Howe
- Australia/Melbourne
- Australia/Perth
- Australia/Sydney
- Europe/Amsterdam
- Europe/Andorra
- Europe/Astrakhan
- Europe/Athens
- Europe/Belgrade
- Europe/Berlin
- Europe/Bratislava
- Europe/Brussels
- Europe/Bucharest
- Europe/Budapest
- Europe/Busingen
- Europe/Chisinau
- Europe/Copenhagen
- Europe/Dublin
- Europe/Gibraltar
- Europe/Guernsey
- Europe/Helsinki
- Europe/Isle_of_Man
- Europe/Istanbul
- Europe/Jersey
- Europe/Kaliningrad
- Europe/Kirov
- Europe/Kyiv
- Europe/Lisbon
- Europe/Ljubljana
- Europe/London
- Europe/Luxembourg
- Europe/Madrid
- Europe/Malta
- Europe/Mariehamn
- Europe/Minsk
- Europe/Monaco
- Europe/Moscow
- Europe/Oslo
- Europe/Paris
- Europe/Podgorica
- Europe/Prague
- Europe/Riga
- Europe/Rome
- Europe/Samara
- Europe/San_Marino
- Europe/Sarajevo
- Europe/Saratov
- Europe/Simferopol
- Europe/Skopje
- Europe/Sofia
- Europe/Stockholm
- Europe/Tallinn
- Europe/Tirane
- Europe/Ulyanovsk
- Europe/Vaduz
- Europe/Vatican
- Europe/Vienna
- Europe/Vilnius
- Europe/Volgograd
- Europe/Warsaw
- Europe/Zagreb
- Europe/Zurich
- Indian/Antananarivo
- Indian/Chagos
- Indian/Christmas
- Indian/Cocos
- Indian/Comoro
- Indian/Kerguelen
- Indian/Mahe
- Indian/Maldives
- Indian/Mauritius
- Indian/Mayotte
- Indian/Reunion
- Pacific/Apia
- Pacific/Auckland
- Pacific/Bougainville
- Pacific/Chatham
- Pacific/Chuuk
- Pacific/Easter
- Pacific/Efate
- Pacific/Fakaofo
- Pacific/Fiji
- Pacific/Funafuti
- Pacific/Galapagos
- Pacific/Gambier
- Pacific/Guadalcanal
- Pacific/Guam
- Pacific/Honolulu
- Pacific/Kanton
- Pacific/Kiritimati
- Pacific/Kosrae
- Pacific/Kwajalein
- Pacific/Majuro
- Pacific/Marquesas
- Pacific/Midway
- Pacific/Nauru
- Pacific/Niue
- Pacific/Norfolk
- Pacific/Noumea
- Pacific/Pago_Pago
- Pacific/Palau
- Pacific/Pitcairn
- Pacific/Pohnpei
- Pacific/Port_Moresby
- Pacific/Rarotonga
- Pacific/Saipan
- Pacific/Tahiti
- Pacific/Tarawa
- Pacific/Tongatapu
- Pacific/Wake
- Pacific/Wallis
- US/Alaska
- US/Central
- US/Eastern
- US/Hawaii
- US/Mountain
- US/Pacific
description: '[List of possible time zones](/time-zones). The default is Europe/Berlin'
title: ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingTimezone
ContactsContactIdGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
id:
type: string
name:
type: string
phone_number:
type: string
email:
type: string
contact_metadata:
$ref: '#/components/schemas/ContactsContactIdGetResponsesContentApplicationJsonSchemaResponseContactMetadata'
workspace_id:
type: string
created_at:
type: string
updated_at:
type: string
memory_store_ids:
type: array
items:
description: Any type
title: ContactsContactIdGetResponsesContentApplicationJsonSchemaResponse
KnowledgeBaseKnowledgeBaseIdAttachPostResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
body:
type: string
knowledge_base_id:
$ref: '#/components/schemas/knowledge_base_id'
model_id:
type: string
title: KnowledgeBaseKnowledgeBaseIdAttachPostResponsesContentApplicationJsonSchemaResponse
AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistants:
type: object
properties:
end_call_reasons:
type: array
items:
type: string
description: Optional. Some GET responses include `end_call_reasons` at the top level of each assistant object (in addition to `agent.end_call_reasons`). To configure end-call reasons, set **`agent.end_call_reasons`** on create or update requests; a top-level `end_call_reasons` on those requests is ignored.
description:
type: string
description: Agent description.
phone_number:
type: string
description: The phone number attached to the agent.
external_webhook_url:
type: string
description: URL of the webhook that should receive data after the call, such as the transcript.
is_recording:
type: boolean
description: Whether the conversation should be recorded.
max_duration:
$ref: '#/components/schemas/AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsMaxDuration'
voicemail_message:
$ref: '#/components/schemas/AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessage'
description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`.
type:
$ref: '#/components/schemas/type'
name:
$ref: '#/components/schemas/name'
agent:
$ref: '#/components/schemas/Agent'
model_id:
type: string
description: The ID of the agent.
attached_phone_numbers:
type: array
items:
$ref: '#/components/schemas/AttachedPhoneNumber'
description: Attached phone numbers available for outbound calls from this agent.
title: AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponseAssistants
PhonebooksGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
total:
type: number
format: double
description: Total number of phone books in your workspace.
page_size:
type: number
format: double
description: Number of entries per page.
page_number:
type: number
format: double
description: Page number.
items:
type: array
items:
$ref: '#/components/schemas/PhonebooksGetResponsesContentApplicationJsonSchemaResponseItemsItems'
title: PhonebooksGetResponsesContentApplicationJsonSchemaResponse
SubaccountsSubaccountIdDeleteResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
answer:
type: string
title: SubaccountsSubaccountIdDeleteResponsesContentApplicationJsonSchemaResponse
AssistantsPostRequestBodyContentApplicationJsonSchemaAgentBackgroundNoise:
type: object
properties:
enabled:
type: boolean
description: If enabled, the agent will add background noise.
type:
$ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentBackgroundNoiseType'
description: What kind of background noise should be present.
volume:
type: integer
description: How loud the background noise should be.
description: Add background noise to make the call more natural.
title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentBackgroundNoise
AssistantsPostRequestBodyContentApplicationJsonSchemaAgentFallbackProvider:
type: string
enum:
- elevenlabs
- deepgram
- synthflow
description: The provider for the fallback voice (elevenlabs, deepgram, or synthflow).
title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentFallbackProvider
Get-simulation-suiteRequestNotFoundError:
type: object
properties: {}
title: Get-simulation-suiteRequestNotFoundError
KnowledgeBaseIdDeleteResponsesContentApplicationJsonSchemaResponse:
type: object
properties: {}
title: KnowledgeBaseIdDeleteResponsesContentApplicationJsonSchemaResponse
AgentVoiceSynthesizer:
type: string
enum:
- eleven_multilingual_v2
- eleven_turbo_v2
- eleven_turbo_v2_5
- eleven_flash_v2
- eleven_flash_v2_5
description: The engine used to synthesize voice.
title: AgentVoiceSynthesizer
AssistantsPostResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
model_id:
$ref: '#/components/schemas/model_id'
title: AssistantsPostResponsesContentApplicationJsonSchemaResponse
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingGhlAutoconfirm:
type: string
enum:
- confirmed
- new
description: If confirmed is selected the meeting will be automatically accepted and you don't have to do anything, otherwise you have to go to GHL calendar and confirm the meeting
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingGhlAutoconfirm
AnalyticsGetResponsesContentApplicationJsonSchemaSentimentStat:
type: object
properties:
positive_percentage:
type: integer
series:
type: array
items:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaSentimentStatSeriesItems'
positive_percentage_change:
type: integer
description: Sentiment overview.
title: AnalyticsGetResponsesContentApplicationJsonSchemaSentimentStat
update-action_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/ActionsActionIdPutResponsesContentApplicationJsonSchemaResponse'
title: update-action_Response_200
SimulationSuiteUpdateIn:
type: object
properties:
name:
type:
- string
- 'null'
description: New name for the simulation suite
model_id:
type:
- string
- 'null'
description: New agent model ID for the suite
title: SimulationSuiteUpdateIn
AttachedPhoneNumber:
type: object
properties:
number:
type: string
description: Phone number to attach to an outbound agent.
sid:
type:
- string
- 'null'
description: Twilio phone number SID.
slug:
type: string
description: Internal phone number slug.
required:
- number
- sid
- slug
title: AttachedPhoneNumber
SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsSubscription:
type: object
properties:
stripe_subscription_id:
type: string
synthflow_price_id:
type: string
title: SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsSubscription
ActionsActionIdGetResponsesContentApplicationJsonSchemaResponseActionsItemsActionType:
type: string
enum:
- REAL_TIME_BOOKING
- INFORMATION_EXTRACTOR
- LIVE_TRANSFER
- SEND_SMS
- INCALL_SMS
- INCALL_WHATSAPP
- CUSTOM_ACTION
- CUSTOM_EVAL
description: Action type.
title: ActionsActionIdGetResponsesContentApplicationJsonSchemaResponseActionsItemsActionType
type:
type: string
enum:
- outbound
- inbound
- widget
description: Agent type.
title: type
KnowledgeBaseKnowledgeBaseIdSourcesPostResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
source_id:
type: string
description: Unique identifier of the created source.
required:
- source_id
title: KnowledgeBaseKnowledgeBaseIdSourcesPostResponsesContentApplicationJsonSchemaResponse
listKnowledgeBaseSources_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/KnowledgeBaseKnowledgeBaseIdSourcesGetResponsesContentApplicationJsonSchemaResponse'
title: listKnowledgeBaseSources_Response_200
AnalyticsGetResponsesContentApplicationJsonSchemaEndCallReasonStat:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaEndCallReasonStatItemsItems'
series:
type: array
items:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaEndCallReasonStatSeriesItems'
description: An overview of reasons calls ended. For details on all the possible reasons, see [End Call Reasons](/logs#end-call-reasons).
title: AnalyticsGetResponsesContentApplicationJsonSchemaEndCallReasonStat
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionVariablesDuringTheCallItemsType:
type: string
enum:
- string
- int
- float
- bool
- list
- money
- phone_number
- email
- datetime
- utc_datetime
default: string
description: Type of the variable
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionVariablesDuringTheCallItemsType
Update-simulation-suiteRequestBadRequestError:
type: object
properties: {}
title: Update-simulation-suiteRequestBadRequestError
SimulationCaseGenerateIn:
type: object
properties:
agent_id:
type: string
description: ID of the agent used to generate cases.
suite_id:
type: string
format: uuid
description: ID of the simulation suite to add generated cases to.
include_tests:
type: array
items:
$ref: '#/components/schemas/SimulationCaseGenerateInIncludeTestsItems'
description: Tests to include in the generated cases.
required:
- agent_id
- include_tests
description: Input payload to generate simulation cases.
title: SimulationCaseGenerateIn
detach-action_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/ActionsDetachPostResponsesContentApplicationJsonSchemaResponse'
title: detach-action_Response_200
SimulationReadOut:
type: object
properties:
simulation_id:
type: string
format: uuid
simulation_session_id:
type: string
format: uuid
simulation_case_id:
type: string
format: uuid
simulation_case_name:
type:
- string
- 'null'
simulation_case_prompt:
type:
- string
- 'null'
success_criteria:
type:
- array
- 'null'
items:
type: string
call_success_type:
oneOf:
- $ref: '#/components/schemas/SimulationReadOutCallSuccessType'
- type: 'null'
persona_agent_id:
type:
- string
- 'null'
format: uuid
persona_phone_number:
type:
- string
- 'null'
target_agent_id:
type: string
format: uuid
agent_name:
type:
- string
- 'null'
agent_avatar_url:
type:
- string
- 'null'
target_phone_number:
type:
- string
- 'null'
target_call_id:
type:
- string
- 'null'
custom_variables:
type:
- object
- 'null'
additionalProperties:
description: Any type
status:
$ref: '#/components/schemas/SimulationReadOutStatus'
workspace_id:
type: string
created_at:
type: string
format: date-time
updated_at:
type: string
format: date-time
error_info:
oneOf:
- $ref: '#/components/schemas/SimulationErrorInfo'
- type: 'null'
recording_url:
type:
- string
- 'null'
timeline:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/TimelineItem'
success_criteria_analysis:
oneOf:
- $ref: '#/components/schemas/SimulationSuccessCriteriaAnalysis'
- type: 'null'
description: Simulation details.
title: SimulationReadOut
CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsCollectedVariables:
type: object
properties:
value:
description: The collected value of the variable (string, number, boolean, or null if not collected).
collected:
type: boolean
description: Whether this variable was successfully collected.
title: CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsCollectedVariables
Get-knowledge-baseRequestBadRequestError:
type: object
properties: {}
title: Get-knowledge-baseRequestBadRequestError
AnalyticsGetResponsesContentApplicationJsonSchemaAssistantPerformanceBySuccessRateItems:
type: object
properties:
model_id:
type: string
name:
type: string
success_rate:
type: integer
percentage_change:
type: integer
title: AnalyticsGetResponsesContentApplicationJsonSchemaAssistantPerformanceBySuccessRateItems
list-simulation-scenarios_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/PaginatedSimulationScenariosList'
title: list-simulation-scenarios_Response_200
ActionsPostRequestBodyContentApplicationJsonSchemaCustomEvalQuestionCategory:
type: string
enum:
- pass_fail
- numeric
- descriptive
- likert_scale
description: Custom evalution category.
title: ActionsPostRequestBodyContentApplicationJsonSchemaCustomEvalQuestionCategory
get-simulation_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationReadOut'
title: get-simulation_Response_200
List-simulation-casesRequestBadRequestError:
type: object
properties: {}
title: List-simulation-casesRequestBadRequestError
ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingCalcom:
type: object
properties:
event_id:
type: string
description: The event id can be obtained from the cal.com calendar
integration:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingCalcomIntegration'
description: The selected option will be the meeting type that will be created when the booking is done
sms_boolean:
type: boolean
default: false
description: If the value is true the SMS message from the sms_message field will be send
sms_message:
type: string
description: Text to be sent in the sms
user_email:
type: string
description: Email that will be used to create the meeting
required:
- event_id
- user_email
description: 'Important: You need to be connected to the Cal.com integration'
title: ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingCalcom
Get-assistantRequestBadRequestError:
type: object
properties: {}
title: Get-assistantRequestBadRequestError
get-assistant_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/AssistantsModelIdGetResponsesContentApplicationJsonSchemaResponse'
title: get-assistant_Response_200
PhonebooksGetResponsesContentApplicationJsonSchemaResponseItemsItems:
type: object
properties:
phone_book_id:
type: string
description: Phone book ID.
workspace_id:
type: string
description: Workspace ID.
name:
type: string
description: Phone book name.
entry_count:
type: number
format: double
description: Number of entries in this phone book.
agents:
type: array
items:
description: Any type
description: List of agents this phone book is attached to.
title: PhonebooksGetResponsesContentApplicationJsonSchemaResponseItemsItems
get-subaccount_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponse'
title: get-subaccount_Response_200
ring_pause_seconds:
type: integer
description: Ring time before the agent answers the call.
title: ring_pause_seconds
SimulationReadOutStatus:
type: string
enum:
- in-progress
- completed
- failed
title: SimulationReadOutStatus
SimulationCaseCreateIn:
type: object
properties:
name:
type: string
description: Name of the simulation case.
prompt:
type: string
description: Prompt used during the simulation case.
type:
$ref: '#/components/schemas/SimulationCaseCreateInType'
description: Simulation case type.
success_criteria:
type: array
items:
type: string
description: Success criteria evaluated for the case.
call_success_type:
$ref: '#/components/schemas/SimulationCaseCreateInCallSuccessType'
description: Success logic for the case.
suite_id:
type: string
format: uuid
description: ID of the simulation suite to add this case to. Required for v2 simulation suites.
base_agent_id:
type:
- string
- 'null'
description: Agent ID to base the generated case on.
required:
- name
- prompt
- type
- success_criteria
- call_success_type
description: Input payload to create a simulation case.
title: SimulationCaseCreateIn
Update-assistantRequestBadRequestError:
type: object
properties:
detail:
$ref: '#/components/schemas/AssistantsModelIdPutResponsesContentApplicationJsonSchemaDetail'
title: Update-assistantRequestBadRequestError
AgentFallbackProvider:
type: string
enum:
- elevenlabs
- deepgram
- synthflow
description: The provider for the fallback voice (elevenlabs, deepgram, or synthflow).
title: AgentFallbackProvider
KnowledgeBaseIdGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
total_records:
type: integer
default: 0
description: The number of retrieved knowledge bases.
knowledge_bases:
type: array
items:
$ref: '#/components/schemas/KnowledgeBaseIdGetResponsesContentApplicationJsonSchemaResponseKnowledgeBasesItems'
title: KnowledgeBaseIdGetResponsesContentApplicationJsonSchemaResponse
ActionsPostRequestBodyContentApplicationJsonSchemaInformationExtractorOpenQuestion:
type: object
properties:
identifier:
type: string
description: The title that will identify the action
description:
type: string
description: The description of what the action is expected to do
examples:
type: array
items:
type: string
description: Examples of possible answers that can match the description of the action
required:
- identifier
title: ActionsPostRequestBodyContentApplicationJsonSchemaInformationExtractorOpenQuestion
SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsPricingTiersItems:
type: object
properties:
pricing_tier_id:
type: string
title: SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsPricingTiersItems
AnalyticsGetResponsesContentApplicationJsonSchemaDurationMetrics:
type: object
properties:
total_minutes:
type: integer
average_duration:
type: integer
total_calls:
type: integer
series:
type: array
items:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaDurationMetricsSeriesItems'
total_minutes_percentage_change:
type: integer
total_duration_percentage_change:
type: integer
total_calls_percentage_change:
type: integer
description: Duration metrics overview.
title: AnalyticsGetResponsesContentApplicationJsonSchemaDurationMetrics
SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaProductsPhoneNumbersItems:
type: object
properties:
number:
type: string
description: The E.164 formatted phone number
title: SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaProductsPhoneNumbersItems
List-simulation-suitesRequestBadRequestError:
type: object
properties: {}
title: List-simulation-suitesRequestBadRequestError
AgentEndCallReasonsV2Items:
type: object
properties:
reason:
type: string
description: The condition that triggers call termination.
closing_message_mode:
$ref: '#/components/schemas/AgentEndCallReasonsV2ItemsClosingMessageMode'
description: 'Controls how the farewell message is generated. static: message is spoken verbatim. prompt: message is an instruction to the LLM. none: LLM generates its own farewell.'
closing_message:
type: string
description: The closing message content. Interpretation depends on closing_message_mode.
required:
- reason
title: AgentEndCallReasonsV2Items
MemoryStoresGetResponsesContentApplicationJsonSchemaResponseItemsItems:
type: object
properties:
id:
type: string
title:
type: string
workspace_id:
type: string
created_at:
type: string
updated_at:
type: string
contact_ids:
type: array
items:
description: Any type
title: MemoryStoresGetResponsesContentApplicationJsonSchemaResponseItemsItems
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaIncallSms:
type: object
properties:
message_body:
type: string
description: The SMS body sent to the caller. Supports placeholder variables like ``.
wait_for_reply:
type: boolean
description: When true, the agent pauses until the caller replies, the timeout elapses, or the call ends. When false, the call continues and any reply is injected into the transcript when it arrives.
timeout_seconds:
type: integer
description: Maximum time to wait for a reply when `wait_for_reply` is true.
fallback_message:
type: string
description: Message the agent speaks if the timeout fires with no reply.
message_before_action:
type: string
description: Message the agent speaks before the SMS is sent.
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaIncallSms
Update-simulation-caseRequestBadRequestError:
type: object
properties: {}
title: Update-simulation-caseRequestBadRequestError
SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsPermissions:
type: object
properties:
assistants:
type: boolean
description: Whether this subaccount can create and manage agents.
knowledge_base:
type: boolean
description: Whether this subaccount can access and manage knowledge bases.
actions:
type: boolean
description: Whether this subaccount can create and manage actions.
workflows:
type: boolean
description: Whether this subaccount can create and manage workflows.
contacts:
type: boolean
description: Whether this subaccount can create and manage contacts.
phone_numbers:
type: boolean
description: Whether this subaccount can acquire and manage phone numbers.
inbound:
type: boolean
description: Whether this subaccount can create and manage inbound voice agents.
outbound:
type: boolean
description: Whether this subaccount can create and manage outbound voice agents.
widget:
type: boolean
description: Whether this subaccount can create and manage web widget agents.
chat:
type: boolean
description: Whether this subaccount can create and manage chat agents.
logs:
type: boolean
description: Whether this subaccount can access call, chat, API, and webhook logs.
simulations:
type: boolean
description: Whether this subaccount can access call simulations and evaluations.
analytics:
type: boolean
description: Whether this subaccount can view the analytics dashboard.
title: SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsPermissions
UpdateKnowledgeBaseSourceRequest1:
type: object
properties:
name:
type: string
description: Updated source name.
url:
type: string
description: Updated URL for `file` sources.
required:
- url
title: UpdateKnowledgeBaseSourceRequest1
listPhoneBooks_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/PhonebooksGetResponsesContentApplicationJsonSchemaResponse'
title: listPhoneBooks_Response_200
start-simulation_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationReadOut'
title: start-simulation_Response_200
list-knowledge-bases_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/KnowledgeBaseGetResponsesContentApplicationJsonSchemaResponse'
title: list-knowledge-bases_Response_200
CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsTelephonyHangup:
type: string
enum:
- caller
- callee
description: Indicates which party ended the call.
title: CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsTelephonyHangup
Get-voicesRequestBadRequestError:
type: object
properties: {}
title: Get-voicesRequestBadRequestError
ListKnowledgeBaseSourcesRequestBadRequestError:
type: object
properties: {}
title: ListKnowledgeBaseSourcesRequestBadRequestError
AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessageMode:
type: string
enum:
- exact_message
- prompt
description: The mode used to generate the voicemail message.
title: AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessageMode
AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaVoicemailMessage:
type: object
properties:
enabled:
type: boolean
description: Whether voicemail message leaving is enabled.
mode:
$ref: '#/components/schemas/AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaVoicemailMessageMode'
description: The mode used to generate the voicemail message.
exact_message:
type: string
description: The exact message to leave on the voicemail. Used when mode is `exact_message`.
prompt:
type: string
description: A prompt used to generate the voicemail message. Used when mode is `prompt`.
description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`.
title: AssistantsModelIdPutRequestBodyContentApplicationJsonSchemaVoicemailMessage
get-phone-call_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/CallsCallIdGetResponsesContentApplicationJsonSchemaResponse'
title: get-phone-call_Response_200
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaIncallWhatsapp:
type: object
properties:
content_sid:
type: string
description: Twilio Content template SID (for example `HX...`) used for the outbound WhatsApp message.
content_variables:
type: object
additionalProperties:
type: string
description: 'Values that fill the template placeholders. Keys match the numeric placeholders in the template body (for example `{"1": ""}`).'
wait_for_reply:
type: boolean
description: When true, the agent pauses until the caller replies, the timeout elapses, or the call ends. When false, the call continues and any reply is injected into the transcript when it arrives.
timeout_seconds:
type: integer
description: Maximum time to wait for a reply when `wait_for_reply` is true.
fallback_message:
type: string
description: Message the agent speaks if the timeout fires with no reply.
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaIncallWhatsapp
get-action_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/ActionsActionIdGetResponsesContentApplicationJsonSchemaResponse'
title: get-action_Response_200
delete-action_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/ActionsActionIdDeleteResponsesContentApplicationJsonSchemaResponse'
title: delete-action_Response_200
ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionIntegration:
type: string
enum:
- ghl
- hubspot
- salesforce
- salesforce-sandbox
description: The possible integrations that can be selected to retrieve information
title: ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionIntegration
list-calls_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/CallsGetResponsesContentApplicationJsonSchemaResponse'
title: list-calls_Response_200
AssistantsPostRequestBodyContentApplicationJsonSchemaAgentEndCallReasonsV2Items:
type: object
properties:
reason:
type: string
description: The condition that triggers call termination.
closing_message_mode:
$ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaAgentEndCallReasonsV2ItemsClosingMessageMode'
description: 'Controls how the farewell message is generated. static: message is spoken verbatim. prompt: message is an instruction to the LLM. none: LLM generates its own farewell.'
closing_message:
type: string
description: The closing message content. Interpretation depends on closing_message_mode.
required:
- reason
title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentEndCallReasonsV2Items
get-simulation-scenario_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationScenarioReadOut'
title: get-simulation-scenario_Response_200
SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsSubscription:
type: object
properties:
stripe_subscription_id:
type: string
synthflow_price_id:
type: string
title: SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsSubscription
Create-simulation-suiteRequestBadRequestError:
type: object
properties: {}
title: Create-simulation-suiteRequestBadRequestError
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionVariablesBeforeTheCallItems:
type: object
properties:
key:
type: string
description: Key name
value:
type: string
description: Value that will be assigned to the key
required:
- key
- value
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionVariablesBeforeTheCallItems
SimulationsSessionsGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
pagination:
$ref: '#/components/schemas/pagination'
items:
type: array
items:
$ref: '#/components/schemas/SimulationSessionReadOut'
title: SimulationsSessionsGetResponsesContentApplicationJsonSchemaResponse
Detach-phone-number-from-assistantRequestBadRequestError:
type: object
properties:
detail:
$ref: '#/components/schemas/AssistantsModelIdPhoneNumbersPhoneNumberSlugDeleteResponsesContentApplicationJsonSchemaDetail'
title: Detach-phone-number-from-assistantRequestBadRequestError
AnalyticsGetResponsesContentApplicationJsonSchemaDurationMetricsSeriesItems:
type: object
properties:
date:
type: string
total_minutes:
type: integer
average_duration:
type: integer
total_calls:
type: integer
title: AnalyticsGetResponsesContentApplicationJsonSchemaDurationMetricsSeriesItems
allowed_idle_time_seconds:
type: integer
description: The agent will disconnect after this period.
title: allowed_idle_time_seconds
update-subaccount_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/SubaccountsSubaccountIdPutResponsesContentApplicationJsonSchemaResponse'
title: update-subaccount_Response_200
SubaccountsPostResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
subaccount_id:
$ref: '#/components/schemas/subaccount_id'
api_key:
type: string
description: Subaccount API key.
user_email:
type: string
description: Subaccount email.
sign_in_link:
type: string
description: The invite link that can be used to log in to the account.
twilio_connected_successfully:
type: boolean
description: Whether a successful Twilio connection was established.
title: SubaccountsPostResponsesContentApplicationJsonSchemaResponse
AssistantsModelIdPutResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
model_id:
$ref: '#/components/schemas/model_id'
title: AssistantsModelIdPutResponsesContentApplicationJsonSchemaResponse
Attach-phone-numbers-to-assistantRequestNotFoundError:
type: object
properties:
detail:
$ref: '#/components/schemas/AssistantsModelIdPhoneNumbersPutResponsesContentApplicationJsonSchemaDetail'
title: Attach-phone-numbers-to-assistantRequestNotFoundError
Update-knowledge-baseRequestBadRequestError:
type: object
properties: {}
title: Update-knowledge-baseRequestBadRequestError
AssistantsPostResponsesContentApplicationJsonSchemaDetails:
type: object
properties:
phone:
type: string
description: The phone number attached to this agent.
voice:
type: string
description: This agent's voice.
title: AssistantsPostResponsesContentApplicationJsonSchemaDetails
Generate-simulation-casesRequestNotFoundError:
type: object
properties: {}
title: Generate-simulation-casesRequestNotFoundError
TimelineItem:
type: object
properties:
sender_type:
type:
- string
- 'null'
value:
type:
- string
- 'null'
type:
type:
- string
- 'null'
timestamp_datetime:
type:
- string
- 'null'
format: date-time
timestamp:
type:
- number
- 'null'
format: double
description: Timeline event for a simulation call.
title: TimelineItem
ActionsGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
pagination:
$ref: '#/components/schemas/ActionsGetResponsesContentApplicationJsonSchemaResponsePagination'
actions:
type: array
items:
$ref: '#/components/schemas/ActionsGetResponsesContentApplicationJsonSchemaResponseActionsItems'
title: ActionsGetResponsesContentApplicationJsonSchemaResponse
List-simulation-sessionsRequestBadRequestError:
type: object
properties: {}
title: List-simulation-sessionsRequestBadRequestError
Get-simulation-caseRequestBadRequestError:
type: object
properties: {}
title: Get-simulation-caseRequestBadRequestError
List-simulationsRequestUnprocessableEntityError:
type: object
properties: {}
title: List-simulationsRequestUnprocessableEntityError
SimulationCaseCreateInCallSuccessType:
type: string
enum:
- all
- any
description: Success logic for the case.
title: SimulationCaseCreateInCallSuccessType
Update-subaccountRequestBadRequestError:
type: object
properties: {}
title: Update-subaccountRequestBadRequestError
CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsTelephonyDisconnectReason:
type: string
enum:
- unknown
- callee_hangup
- caller_hangup
- error
- forbidden
description: The reason the telephony connection was disconnected.
title: CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsTelephonyDisconnectReason
greeting_message:
type: string
description: The greeting message the agent will open the conversation with. You can add variables in curly brackets (for example, {your-variable}).
title: greeting_message
CallsGetResponsesContentApplicationJsonSchemaResponseCallsItemsTelephonyHangup:
type: string
enum:
- caller
- callee
title: CallsGetResponsesContentApplicationJsonSchemaResponseCallsItemsTelephonyHangup
voice_stability:
type: integer
description: Range is 0 to 1. Lower settings may make the voice sound more expressive but less predictable, while higher settings make it sound steadier but less emotional.
title: voice_stability
Get-actionRequestBadRequestError:
type: object
properties: {}
title: Get-actionRequestBadRequestError
CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItems:
type: object
properties:
call_id:
$ref: '#/components/schemas/call_id'
model_id:
$ref: '#/components/schemas/model_id'
campaign_type:
type: string
description: Campaign type.
phone_number_from:
type: string
description: The caller's phone number.
phone_number_to:
type: string
description: The call recipient's phone number.
name:
type: string
description: Recipient's name.
transcript:
type: string
description: Call transcript.
duration:
type: integer
description: The duration of the call in seconds.
recording_url:
type:
- string
- 'null'
description: The URL of the call recording, or `null` if no recording is available.
end_call_reason:
$ref: '#/components/schemas/CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsEndCallReason'
description: The reason the call ended from the AI agent's perspective.
custom_end_call_reason:
type:
- string
- 'null'
description: The specific user-defined reason that triggered call termination. Only present when end_call_reason is custom_end_call.
error_message:
type: string
description: Error message if the call encountered an error, or an empty string if no error occurred.
executed_actions:
$ref: '#/components/schemas/CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsExecutedActions'
description: Actions that were executed during the call.
prompt_variables:
$ref: '#/components/schemas/CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsPromptVariables'
description: Prompt variables.
type_of_call:
$ref: '#/components/schemas/CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsTypeOfCall'
description: Call type.
start_time:
type: string
description: The scheduled start time for the call as a UNIX timestamp in milliseconds.
timezone:
type: string
description: The timezone of the call. For a list of all available time zones, see the available [timezones](/time-zones).
telephony_hangup:
$ref: '#/components/schemas/CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsTelephonyHangup'
description: Indicates which party ended the call.
telephony_disconnect_reason:
$ref: '#/components/schemas/CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsTelephonyDisconnectReason'
description: The reason the telephony connection was disconnected.
telephony_duration:
type: integer
description: The total duration of the telephony connection in milliseconds.
telephony_ringing_duration:
type: integer
description: The duration the phone was ringing before the call was answered, in milliseconds.
telephony_start:
type: string
format: date-time
description: The timestamp when the telephony connection started (ISO 8601 format).
telephony_end:
type: string
format: date-time
description: The timestamp when the telephony connection ended (ISO 8601 format).
status:
$ref: '#/components/schemas/CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsStatus'
description: The current status of the call.
collected_variables:
type: object
additionalProperties:
type: object
additionalProperties:
$ref: '#/components/schemas/CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsCollectedVariables'
description: Collected variables (slots) from the conversation flow, keyed by agent ID. May be null if not available.
title: CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItems
attach-phone-numbers-to-assistant_Request:
oneOf:
- $ref: '#/components/schemas/AttachPhoneNumbersToAssistantRequest0'
- $ref: '#/components/schemas/AttachPhoneNumbersToAssistantRequest1'
title: attach-phone-numbers-to-assistant_Request
List-subaccountsRequestBadRequestError:
type: object
properties: {}
title: List-subaccountsRequestBadRequestError
SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaPricingTiersDetachItems:
type: object
properties:
pricing_tier_id:
type: string
description: The ID of the Synthflow pricing tier.
required:
- pricing_tier_id
title: SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaPricingTiersDetachItems
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionVariablesDuringTheCallItems:
type: object
properties:
name:
type: string
description: Name of the variable that will be used during the call
description:
type: string
description: Description of the functionality of the variable
example:
type: string
description: Example of the value/answer that can be given to fill the variable
type:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionVariablesDuringTheCallItemsType'
default: string
description: Type of the variable
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionVariablesDuringTheCallItems
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingCalcom:
type: object
properties:
integration:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingCalcomIntegration'
description: The selected option will be the meeting type that will be created when the booking is done
sms_boolean:
type: boolean
description: If the value is true the SMS message from the sms_message field will be send
sms_message:
type: string
description: Text to be sent in the sms
user_email:
type: string
description: Email that will be used to create the meeting
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingCalcom
SimulationCasesGetParametersSimulationCaseType:
type: string
enum:
- custom
- agent_based
title: SimulationCasesGetParametersSimulationCaseType
List-assistantRequestBadRequestError:
type: object
properties: {}
title: List-assistantRequestBadRequestError
ActionsPostRequestBodyContentApplicationJsonSchemaInformationExtractor:
type: object
properties:
YES_NO:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaInformationExtractorYesNo'
SINGLE_CHOICE:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaInformationExtractorSingleChoice'
OPEN_QUESTION:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaInformationExtractorOpenQuestion'
title: ActionsPostRequestBodyContentApplicationJsonSchemaInformationExtractor
detachAContactFromAMemoryStore_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
title: detachAContactFromAMemoryStore_Response_200
execute-simulation-suite_Response_200:
type: object
properties:
session_id:
type: string
format: uuid
suite_id:
type: string
format: uuid
suite_name:
type: string
total_cases:
type: integer
status:
type: string
title: execute-simulation-suite_Response_200
timezone:
type: string
enum:
- Africa/Accra
- Africa/Addis_Ababa
- Africa/Algiers
- Africa/Asmara
- Africa/Bamako
- Africa/Bangui
- Africa/Banjul
- Africa/Bissau
- Africa/Blantyre
- Africa/Brazzaville
- Africa/Bujumbura
- Africa/Cairo
- Africa/Casablanca
- Africa/Ceuta
- Africa/Conakry
- Africa/Dakar
- Africa/Dar_es_Salaam
- Africa/Djibouti
- Africa/Douala
- Africa/El_Aaiun
- Africa/Freetown
- Africa/Gaborone
- Africa/Harare
- Africa/Johannesburg
- Africa/Juba
- Africa/Kampala
- Africa/Khartoum
- Africa/Kigali
- Africa/Kinshasa
- Africa/Lagos
- Africa/Libreville
- Africa/Lome
- Africa/Luanda
- Africa/Lubumbashi
- Africa/Lusaka
- Africa/Malabo
- Africa/Maputo
- Africa/Maseru
- Africa/Mbabane
- Africa/Mogadishu
- Africa/Monrovia
- Africa/Nairobi
- Africa/Ndjamena
- Africa/Niamey
- Africa/Nouakchott
- Africa/Ouagadougou
- Africa/Porto-Novo
- Africa/Sao_Tome
- Africa/Tripoli
- Africa/Tunis
- Africa/Windhoek
- America/Adak
- America/Anchorage
- America/Anguilla
- America/Antigua
- America/Araguaina
- America/Argentina/Buenos_Aires
- America/Argentina/Catamarca
- America/Argentina/Cordoba
- America/Argentina/Jujuy
- America/Argentina/La_Rioja
- America/Argentina/Mendoza
- America/Argentina/Rio_Gallegos
- America/Argentina/Salta
- America/Argentina/San_Juan
- America/Argentina/San_Luis
- America/Argentina/Tucuman
- America/Argentina/Ushuaia
- America/Aruba
- America/Asuncion
- America/Atikokan
- America/Bahia
- America/Bahia_Banderas
- America/Barbados
- America/Belem
- America/Belize
- America/Blanc-Sablon
- America/Boa_Vista
- America/Bogota
- America/Boise
- America/Cambridge_Bay
- America/Campo_Grande
- America/Cancun
- America/Caracas
- America/Cayenne
- America/Cayman
- America/Chicago
- America/Chihuahua
- America/Ciudad_Juarez
- America/Costa_Rica
- America/Creston
- America/Cuiaba
- America/Curacao
- America/Danmarkshavn
- America/Dawson
- America/Dawson_Creek
- America/Denver
- America/Detroit
- America/Dominica
- America/Edmonton
- America/Eirunepe
- America/El_Salvador
- America/Fort_Nelson
- America/Fortaleza
- America/Glace_Bay
- America/Goose_Bay
- America/Grand_Turk
- America/Grenada
- America/Guadeloupe
- America/Guatemala
- America/Guayaquil
- America/Guyana
- America/Halifax
- America/Havana
- America/Hermosillo
- America/Indiana/Indianapolis
- America/Indiana/Knox
- America/Indiana/Marengo
- America/Indiana/Petersburg
- America/Indiana/Tell_City
- America/Indiana/Vevay
- America/Indiana/Vincennes
- America/Indiana/Winamac
- America/Inuvik
- America/Iqaluit
- America/Jamaica
- America/Juneau
- America/Kentucky/Louisville
- America/Kentucky/Monticello
- America/Kralendijk
- America/La_Paz
- America/Lima
- America/Los_Angeles
- America/Lower_Princes
- America/Maceio
- America/Managua
- America/Manaus
- America/Marigot
- America/Martinique
- America/Matamoros
- America/Mazatlan
- America/Menominee
- America/Merida
- America/Metlakatla
- America/Mexico_City
- America/Miquelon
- America/Moncton
- America/Monterrey
- America/Montevideo
- America/Montserrat
- America/Nassau
- America/New_York
- America/Nome
- America/Noronha
- America/North_Dakota/Beulah
- America/North_Dakota/Center
- America/North_Dakota/New_Salem
- America/Nuuk
- America/Ojinaga
- America/Panama
- America/Paramaribo
- America/Phoenix
- America/Port_of_Spain
- America/Port-au-Prince
- America/Porto_Velho
- America/Puerto_Rico
- America/Punta_Arenas
- America/Rankin_Inlet
- America/Recife
- America/Regina
- America/Resolute
- America/Rio_Branco
- America/Santarem
- America/Santiago
- America/Santo_Domingo
- America/Sao_Paulo
- America/Scoresbysund
- America/Sitka
- America/St_Barthelemy
- America/St_Johns
- America/St_Kitts
- America/St_Lucia
- America/St_Thomas
- America/St_Vincent
- America/Swift_Current
- America/Tegucigalpa
- America/Thule
- America/Tijuana
- America/Toronto
- America/Tortola
- America/Vancouver
- America/Whitehorse
- America/Winnipeg
- America/Yakutat
- Antarctica/Casey
- Antarctica/Davis
- Antarctica/DumontDUrville
- Antarctica/Macquarie
- Antarctica/Mawson
- Antarctica/McMurdo
- Antarctica/Palmer
- Antarctica/Rothera
- Antarctica/Syowa
- Antarctica/Troll
- Antarctica/Vostok
- Arctic/Longyearbyen
- Asia/Aden
- Asia/Almaty
- Asia/Amman
- Asia/Anadyr
- Asia/Aqtau
- Asia/Aqtobe
- Asia/Ashgabat
- Asia/Atyrau
- Asia/Baghdad
- Asia/Bahrain
- Asia/Baku
- Asia/Bangkok
- Asia/Barnaul
- Asia/Beirut
- Asia/Bishkek
- Asia/Brunei
- Asia/Chita
- Asia/Choibalsan
- Asia/Colombo
- Asia/Damascus
- Asia/Dhaka
- Asia/Dili
- Asia/Dubai
- Asia/Dushanbe
- Asia/Famagusta
- Asia/Gaza
- Asia/Hebron
- Asia/Ho_Chi_Minh
- Asia/Hong_Kong
- Asia/Hovd
- Asia/Irkutsk
- Asia/Jakarta
- Asia/Jayapura
- Asia/Jerusalem
- Asia/Kabul
- Asia/Kamchatka
- Asia/Karachi
- Asia/Kathmandu
- Asia/Khandyga
- Asia/Kolkata
- Asia/Krasnoyarsk
- Asia/Kuala_Lumpur
- Asia/Kuching
- Asia/Kuwait
- Asia/Macau
- Asia/Magadan
- Asia/Makassar
- Asia/Manila
- Asia/Muscat
- Asia/Nicosia
- Asia/Novokuznetsk
- Asia/Novosibirsk
- Asia/Omsk
- Asia/Oral
- Asia/Phnom_Penh
- Asia/Pontianak
- Asia/Pyongyang
- Asia/Qatar
- Asia/Qostanay
- Asia/Qyzylorda
- Asia/Riyadh
- Asia/Sakhalin
- Asia/Samarkand
- Asia/Seoul
- Asia/Shanghai
- Asia/Singapore
- Asia/Srednekolymsk
- Asia/Taipei
- Asia/Tashkent
- Asia/Tbilisi
- Asia/Tehran
- Asia/Thimphu
- Asia/Tokyo
- Asia/Tomsk
- Asia/Ulaanbaatar
- Asia/Urumqi
- Asia/Ust-Nera
- Asia/Vientiane
- Asia/Vladivostok
- Asia/Yakutsk
- Asia/Yangon
- Asia/Yekaterinburg
- Asia/Yerevan
- Atlantic/Azores
- Atlantic/Bermuda
- Atlantic/Canary
- Atlantic/Cape_Verde
- Atlantic/Faroe
- Atlantic/Madeira
- Atlantic/Reykjavik
- Atlantic/South_Georgia
- Atlantic/St_Helena
- Atlantic/Stanley
- Australia/Adelaide
- Australia/Brisbane
- Australia/Broken_Hill
- Australia/Darwin
- Australia/Eucla
- Australia/Hobart
- Australia/Lindeman
- Australia/Lord_Howe
- Australia/Melbourne
- Australia/Perth
- Australia/Sydney
- Europe/Amsterdam
- Europe/Andorra
- Europe/Astrakhan
- Europe/Athens
- Europe/Belgrade
- Europe/Berlin
- Europe/Bratislava
- Europe/Brussels
- Europe/Bucharest
- Europe/Budapest
- Europe/Busingen
- Europe/Chisinau
- Europe/Copenhagen
- Europe/Dublin
- Europe/Gibraltar
- Europe/Guernsey
- Europe/Helsinki
- Europe/Isle_of_Man
- Europe/Istanbul
- Europe/Jersey
- Europe/Kaliningrad
- Europe/Kirov
- Europe/Kyiv
- Europe/Lisbon
- Europe/Ljubljana
- Europe/London
- Europe/Luxembourg
- Europe/Madrid
- Europe/Malta
- Europe/Mariehamn
- Europe/Minsk
- Europe/Monaco
- Europe/Moscow
- Europe/Oslo
- Europe/Paris
- Europe/Podgorica
- Europe/Prague
- Europe/Riga
- Europe/Rome
- Europe/Samara
- Europe/San_Marino
- Europe/Sarajevo
- Europe/Saratov
- Europe/Simferopol
- Europe/Skopje
- Europe/Sofia
- Europe/Stockholm
- Europe/Tallinn
- Europe/Tirane
- Europe/Ulyanovsk
- Europe/Vaduz
- Europe/Vatican
- Europe/Vienna
- Europe/Vilnius
- Europe/Volgograd
- Europe/Warsaw
- Europe/Zagreb
- Europe/Zurich
- Indian/Antananarivo
- Indian/Chagos
- Indian/Christmas
- Indian/Cocos
- Indian/Comoro
- Indian/Kerguelen
- Indian/Mahe
- Indian/Maldives
- Indian/Mauritius
- Indian/Mayotte
- Indian/Reunion
- Pacific/Apia
- Pacific/Auckland
- Pacific/Bougainville
- Pacific/Chatham
- Pacific/Chuuk
- Pacific/Easter
- Pacific/Efate
- Pacific/Fakaofo
- Pacific/Fiji
- Pacific/Funafuti
- Pacific/Galapagos
- Pacific/Gambier
- Pacific/Guadalcanal
- Pacific/Guam
- Pacific/Honolulu
- Pacific/Kanton
- Pacific/Kiritimati
- Pacific/Kosrae
- Pacific/Kwajalein
- Pacific/Majuro
- Pacific/Marquesas
- Pacific/Midway
- Pacific/Nauru
- Pacific/Niue
- Pacific/Norfolk
- Pacific/Noumea
- Pacific/Pago_Pago
- Pacific/Palau
- Pacific/Pitcairn
- Pacific/Pohnpei
- Pacific/Port_Moresby
- Pacific/Rarotonga
- Pacific/Saipan
- Pacific/Tahiti
- Pacific/Tarawa
- Pacific/Tongatapu
- Pacific/Wake
- Pacific/Wallis
- US/Alaska
- US/Central
- US/Eastern
- US/Hawaii
- US/Mountain
- US/Pacific
default: Europe/Berlin
description: The agent's timezone.
title: timezone
Start-simulationRequestNotFoundError:
type: object
properties: {}
title: Start-simulationRequestNotFoundError
SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItems:
type: object
properties:
subaccount_id:
$ref: '#/components/schemas/subaccount_id'
agency_id:
type: string
name:
type: string
pricing_tiers:
type: array
items:
$ref: '#/components/schemas/SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsPricingTiersItems'
permissions:
$ref: '#/components/schemas/SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsPermissions'
subscription:
$ref: '#/components/schemas/SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsSubscription'
minutes_used:
type: integer
default: 0
max_minutes:
type:
- integer
- 'null'
description: The maximum number of minutes allocated to this subaccount. Null if no limit is set.
members:
type: array
items:
$ref: '#/components/schemas/SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsMembersItems'
title: SubaccountsGetResponsesContentApplicationJsonSchemaResponseSubaccountsItems
createAPhoneBook_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/PhonebooksPostResponsesContentApplicationJsonSchemaResponse'
title: createAPhoneBook_Response_200
List-actionsRequestBadRequestError:
type: object
properties: {}
title: List-actionsRequestBadRequestError
SimulationsGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
pagination:
$ref: '#/components/schemas/pagination'
items:
type: array
items:
$ref: '#/components/schemas/SimulationReadOut'
title: SimulationsGetResponsesContentApplicationJsonSchemaResponse
CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsPromptVariables:
type: object
properties: {}
description: Prompt variables.
title: CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsPromptVariables
update-simulation-suite_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationSuiteReadOut'
title: update-simulation-suite_Response_200
KnowledgeBaseKnowledgeBaseIdSourcesPostRequestBodyContentApplicationJsonSchemaType:
type: string
enum:
- pdf
- text
- web
description: Source type.
title: KnowledgeBaseKnowledgeBaseIdSourcesPostRequestBodyContentApplicationJsonSchemaType
Voice-callRequestBadRequestError:
type: object
properties: {}
title: Voice-callRequestBadRequestError
CallsCallIdGetResponsesContentApplicationJsonSchemaDetail:
type: object
properties:
status:
type: string
description:
type: string
request_id:
type: string
category:
type: string
required:
- status
- description
- request_id
- category
title: CallsCallIdGetResponsesContentApplicationJsonSchemaDetail
LiveTransferUpdateDirectPhoneConfigTransferMode:
type: string
enum:
- cold_transfer
- warm_transfer
- warm_transfer_with_context
description: Transfer mode.
title: LiveTransferUpdateDirectPhoneConfigTransferMode
ActionsPostRequestBodyContentApplicationJsonSchemaInformationExtractorYesNo:
type: object
properties:
identifier:
type: string
description: The title that will identify the action
description:
type: string
description: The description of what the action is expected to do
required:
- identifier
title: ActionsPostRequestBodyContentApplicationJsonSchemaInformationExtractorYesNo
AttachPhoneNumbersToAssistantRequest1:
type: object
properties:
phone_number_slugs:
type: array
items:
type: string
description: Phone number slugs.
required:
- phone_number_slugs
title: AttachPhoneNumbersToAssistantRequest1
language:
type: string
enum:
- multi
- en-US
- bg
- cs
- de-DE
- el
- fi
- fr-FR
- es-ES
- hu
- it
- fr
- pt-BR
- nl-NL
- hi
- zh-CN
- 'no'
- sv-SE
- da
- da-DK
- id
- ja
- ko
- ms
- ro
- ru
- sk
- tr
- uk
- vi
- th
- pl
description: This agent's language. For the list of available languages, see Supported languages
title: language
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomAction:
type: object
properties:
http_mode:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionHttpMode'
default: GET
description: Select the method that will be used
url:
type: string
description: URL to be used by the action
name:
type: string
description: Name of the action
description:
type: string
description: Description of the action
run_action_before_call_start:
type: boolean
description: Actions that will run before the call, like phone number
speech_while_using_the_tool:
type: string
description: The speech that will be used while the action is executed
integration:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionIntegration'
description: The possible integrations that can be selected to retrieve information
custom_auth:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionCustomAuth'
variables_before_the_call:
type: array
items:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionVariablesBeforeTheCallItems'
variables_during_the_call:
type: array
items:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionVariablesDuringTheCallItems'
headers:
type: array
items:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionHeadersItems'
query_parameters:
type: array
items:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionQueryParametersItems'
agent_speak_naturally:
type: boolean
description: If disabled, the agent will strictly stick to your pre-written messages. If enabled, it may say something that accounts for the previous context of the conversation.
message_delay:
type: string
description: What the agent should say if the action reaches the delay threshold.
message_delay_time:
type: integer
description: Delay threshold, in seconds.
message_error:
type: string
description: What the agent should say if the action failed.
json_body_stringified:
type: string
description: A json stringified of the payload/body that will be used for the action
prompt:
type: string
description: The prompt that will be used in case it is set
message_before_action_starts:
type: string
description: The message that the agent will speak before the action is triggered
failure_timeout:
type: integer
description: How long to wait for the custom action to complete before timing out (in seconds)
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomAction
list-simulation-cases_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationCasesGetResponsesContentApplicationJsonSchemaResponse'
title: list-simulation-cases_Response_200
Detach-actionRequestBadRequestError:
type: object
properties: {}
title: Detach-actionRequestBadRequestError
create-simulation-scenario_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationScenarioReadOut'
title: create-simulation-scenario_Response_200
ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingGhlAutoconfirm:
type: string
enum:
- confirmed
- new
description: If confirmed is selected the meeting will be automatically accepted and you don't have to do anything, otherwise you have to go to GHL calendar and confirm the meeting
title: ActionsPostRequestBodyContentApplicationJsonSchemaRealTimeBookingGhlAutoconfirm
UpdateKnowledgeBaseSourceRequest0:
type: object
properties:
name:
type: string
description: Updated source name.
url:
type: string
description: Updated URL for `link` sources.
required:
- url
title: UpdateKnowledgeBaseSourceRequest0
Get-simulation-sessionRequestNotFoundError:
type: object
properties: {}
title: Get-simulation-sessionRequestNotFoundError
Start-simulationRequestBadRequestError:
type: object
properties: {}
title: Start-simulationRequestBadRequestError
model_id:
type: string
description: Agent ID. You can find it on the agent’s page in your dashboard.
title: model_id
ContactsGetResponsesContentApplicationJsonSchemaResponseItemsItems:
type: object
properties:
id:
type: string
name:
type: string
phone_number:
type: string
email:
type: string
contact_metadata:
$ref: '#/components/schemas/ContactsGetResponsesContentApplicationJsonSchemaResponseItemsItemsContactMetadata'
workspace_id:
type: string
created_at:
type: string
updated_at:
type: string
memory_store_ids:
type: array
items:
description: Any type
title: ContactsGetResponsesContentApplicationJsonSchemaResponseItemsItems
Detach-phone-number-from-assistantRequestNotFoundError:
type: object
properties:
detail:
$ref: '#/components/schemas/AssistantsModelIdPhoneNumbersPhoneNumberSlugDeleteResponsesContentApplicationJsonSchemaDetail'
title: Detach-phone-number-from-assistantRequestNotFoundError
ActionsPostRequestBodyContentApplicationJsonSchemaCustomEvalQuestion:
type: object
properties:
identifier:
type: string
description: Custom evaluation name.
text:
type: string
description: Custom evaluation description.
category:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaCustomEvalQuestionCategory'
description: Custom evalution category.
expected_result:
type: string
description: The expected result, which depends on the category. For pass_fail evaluations, the expected result is either true or false. For numeric evaluations, it is an integer between 1 and 10.
title: ActionsPostRequestBodyContentApplicationJsonSchemaCustomEvalQuestion
Generate-simulation-casesRequestUnprocessableEntityError:
type: object
properties: {}
title: Generate-simulation-casesRequestUnprocessableEntityError
Start-simulationRequestUnprocessableEntityError:
type: object
properties: {}
title: Start-simulationRequestUnprocessableEntityError
SimulationSuccessCriteriaAnalysis:
type: object
properties:
success:
type: boolean
evaluations:
type: array
items:
$ref: '#/components/schemas/SimulationSuccessCriteriaEvaluation'
required:
- success
- evaluations
description: Summary of the success criteria evaluation results.
title: SimulationSuccessCriteriaAnalysis
attach-knowledge-base_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/KnowledgeBaseKnowledgeBaseIdAttachPostResponsesContentApplicationJsonSchemaResponse'
title: attach-knowledge-base_Response_200
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingGhl:
type: object
properties:
autoconfirm:
$ref: '#/components/schemas/ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingGhlAutoconfirm'
description: If confirmed is selected the meeting will be automatically accepted and you don't have to do anything, otherwise you have to go to GHL calendar and confirm the meeting
booking_title:
type: string
description: The title that will be displayed in the Synthflow app for the created action
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaRealTimeBookingGhl
list-simulation-cases-by-agent_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
type: array
items:
$ref: '#/components/schemas/SimulationCaseReadOut'
title: list-simulation-cases-by-agent_Response_200
SimulationCaseUpdateInCallSuccessType:
type: string
enum:
- all
- any
title: SimulationCaseUpdateInCallSuccessType
create-knowledge-base_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/KnowledgeBasePostResponsesContentApplicationJsonSchemaResponse'
title: create-knowledge-base_Response_200
delete-knowledge-base_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/KnowledgeBaseIdDeleteResponsesContentApplicationJsonSchemaResponse'
title: delete-knowledge-base_Response_200
AssistantsPostRequestBodyContentApplicationJsonSchemaVoicemailMessage:
type: object
properties:
enabled:
type: boolean
description: Whether voicemail message leaving is enabled.
mode:
$ref: '#/components/schemas/AssistantsPostRequestBodyContentApplicationJsonSchemaVoicemailMessageMode'
description: The mode used to generate the voicemail message.
exact_message:
type: string
description: The exact message to leave on the voicemail. Used when mode is `exact_message`.
prompt:
type: string
description: A prompt used to generate the voicemail message. Used when mode is `prompt`.
description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`.
title: AssistantsPostRequestBodyContentApplicationJsonSchemaVoicemailMessage
greeting_message_human_talk_timeout:
type: integer
description: 'The maximum number of seconds the agent waits for the human to speak first when `greeting_message_mode` is set to `human`. If the human does not speak within this time, the agent will start the conversation automatically.
'
title: greeting_message_human_talk_timeout
create-simulation-suite_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationSuiteReadOut'
title: create-simulation-suite_Response_200
PhonebooksPostResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
key:
type: string
description: Phone book ID.
title: PhonebooksPostResponsesContentApplicationJsonSchemaResponse
CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsTypeOfCall:
type: string
enum:
- inbound
- outbound
description: Call type.
title: CallsCallIdGetResponsesContentApplicationJsonSchemaResponseCallsItemsTypeOfCall
SubaccountsPostRequestBodyContentApplicationJsonSchemaRevokePermissionsItems:
type: string
enum:
- inbound
- outbound
- widget
- chat
- assistants
- knowledge_base
- actions
- workflows
- contacts
- phone_numbers
- logs
- simulations
- analytics
title: SubaccountsPostRequestBodyContentApplicationJsonSchemaRevokePermissionsItems
attach-action_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/ActionsAttachPostResponsesContentApplicationJsonSchemaResponse'
title: attach-action_Response_200
voice_id:
type: string
description: Voice ID for this agent. To retrieve voice IDs, use the Get voices endpoint.
title: voice_id
transcriber_keywords:
type: array
items:
type: string
description: Add business terms to improve accuracy and recognition.
title: transcriber_keywords
PaginatedSimulationScenariosList:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/SimulationScenarioReadOut'
description: List of simulation scenarios
total:
type: integer
description: Total number of simulation scenarios
page_number:
type: integer
description: Current page number
page_size:
type: integer
description: Number of items per page
required:
- items
- total
- page_number
- page_size
title: PaginatedSimulationScenariosList
SimulationCaseReadOutBaseAgent:
type: object
properties:
model_id:
type: string
agent_name:
type: string
agent_type:
type: string
voice_engine_type:
type: string
phone_number:
type:
- string
- 'null'
updated_at:
type: string
format: date-time
image_url:
type:
- string
- 'null'
title: SimulationCaseReadOutBaseAgent
AssistantsPostRequestBodyContentApplicationJsonSchemaAgentMinWordsToInterrupt:
type: string
enum:
- '0'
- '1'
- '2'
- '3'
- '4'
- '5'
description: You can set how many words the human must speak before the AI will stop speaking and listening.
title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentMinWordsToInterrupt
LiveTransferUpdatePhoneBookConfig:
type: object
properties:
transfer_mode:
$ref: '#/components/schemas/LiveTransferUpdatePhoneBookConfigTransferMode'
description: Transfer mode.
message_to_transfer_target:
type: string
description: The message the human agent will hear after the call is transferred to them.
phone_book_id:
type: string
description: Phone book ID.
instructions:
type: string
description: 'What words can trigger the transfer call, for example: like I want to talk with a manager'
timeout:
type: integer
description: How long to wait for the transfer call to happen before stop trying to do the transfer
digits:
type: string
description: Extension digits for the transfer call
initiating_msg:
type: string
description: Message that the agent will say before starting the transfer call
goodbye_msg:
type: string
description: Message that the agent will say before leaving the call and connecting you with the transfer call number to start the conversation
failed_msg:
type: string
description: The message that the agent will say in case the person that should answer the phone is not able to answer before the timeout
enable_background_music:
type: boolean
stop_recording_after_transfer:
type: boolean
description: Whether the call should stop being recorded once it's transferred.
human_detection:
type: boolean
description: If true, the agent will detect whether the transfer target is a human, and once detected, will complete the transfer to the target.
human_detection_timeout_seconds:
type: integer
description: Time in seconds to wait for human detection before giving up. Used in conjunction with human_detection. Minimum 30 seconds, maximum 1800 seconds (30 minutes).
summarization_prompt:
type: string
description: Custom prompt used to generate the warm transfer context summary for the warm transfer leg.
preserve_caller_id:
type: boolean
description: If true, the transfer target will see the caller's phone number instead of the agent's phone number. Only works for numbers purchased through a Synthflow Twilio account; for other numbers the call will fail.
screened:
type: boolean
description: If true, the transfer target will first speak with the AI agent, who can answer questions about the caller and the transcript. The transfer target can then choose to accept or decline the transfer.
required:
- transfer_mode
- phone_book_id
- instructions
- initiating_msg
title: LiveTransferUpdatePhoneBookConfig
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaLiveTransfer:
oneOf:
- $ref: '#/components/schemas/LiveTransferUpdateDirectPhoneConfig'
- $ref: '#/components/schemas/LiveTransferUpdatePhoneBookConfig'
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaLiveTransfer
AnalyticsGetResponsesContentApplicationJsonSchemaCallStatusStatItemsItems:
type: object
properties:
status:
type: string
value:
type: integer
percentage:
type: integer
percentage_change:
type: integer
title: AnalyticsGetResponsesContentApplicationJsonSchemaCallStatusStatItemsItems
SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
subaccounts:
type: array
items:
$ref: '#/components/schemas/SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItems'
title: SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponse
Update-simulation-suiteRequestNotFoundError:
type: object
properties: {}
title: Update-simulation-suiteRequestNotFoundError
AssistantsGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
pagination:
$ref: '#/components/schemas/pagination'
assistants:
$ref: '#/components/schemas/AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistants'
title: AssistantsGetResponsesContentApplicationJsonSchemaResponse
ActionsInitializePostRequestBodyContentApplicationJsonSchemaVariablesItems:
type: object
properties:
key:
type: string
description: Key name
value:
type: string
description: Value that will be assigned to the key
required:
- key
- value
title: ActionsInitializePostRequestBodyContentApplicationJsonSchemaVariablesItems
SimulationScenarioCreateIn:
type: object
properties:
name:
type: string
description: Name of the simulation scenario template
description:
type: string
description: Description of what the scenario template should verify when generating test cases
required:
- name
- description
title: SimulationScenarioCreateIn
Create-assistantRequestBadRequestError:
type: object
properties:
detail:
$ref: '#/components/schemas/AssistantsPostResponsesContentApplicationJsonSchemaDetail'
title: Create-assistantRequestBadRequestError
AnalyticsGetResponsesContentApplicationJsonSchemaRecentCallHistoryItemsItems:
type: object
properties:
call_id:
type: string
call_status:
type: string
duration:
type: integer
agent_name:
type: string
model_id:
type: string
lead_phone_number:
type: string
created_at:
type: string
title: AnalyticsGetResponsesContentApplicationJsonSchemaRecentCallHistoryItemsItems
CallsGetResponsesContentApplicationJsonSchemaResponseCallsItemsCollectedVariables:
type: object
properties:
value:
description: The collected value of the variable (string, number, boolean, or null if not collected).
collected:
type: boolean
description: Whether this variable was successfully collected.
title: CallsGetResponsesContentApplicationJsonSchemaResponseCallsItemsCollectedVariables
Get-simulation-scenarioRequestBadRequestError:
type: object
properties: {}
title: Get-simulation-scenarioRequestBadRequestError
SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaProducts:
type: object
properties:
phone_numbers:
type: array
items:
$ref: '#/components/schemas/SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaProductsPhoneNumbersItems'
description: The list of numbers to be imported to or returned from the subaccount_id
description: Objects to be imported to or returned from the subaccount_id
title: SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaProducts
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionIntegration:
type: string
enum:
- ghl
- hubspot
- salesforce
- salesforce-sandbox
description: The possible integrations that can be selected to retrieve information
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionIntegration
AnalyticsGetResponsesContentApplicationJsonSchemaAssistantPerformance:
type: object
properties:
by_minutes_used:
type: array
items:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaAssistantPerformanceByMinutesUsedItems'
by_calls_made:
type: array
items:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaAssistantPerformanceByCallsMadeItems'
by_success_rate:
type: array
items:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaAssistantPerformanceBySuccessRateItems'
description: Agent performance overview.
title: AnalyticsGetResponsesContentApplicationJsonSchemaAssistantPerformance
AnalyticsGetParametersTypeOfCall:
type: string
enum:
- inbound
- outbound
- widget
title: AnalyticsGetParametersTypeOfCall
get-voices_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/VoicesGetResponsesContentApplicationJsonSchemaResponse'
title: get-voices_Response_200
SimulationSuiteReadOut:
type: object
properties:
id:
type: string
format: uuid
description: Unique identifier for the simulation suite
name:
type: string
description: Name of the simulation suite
model_id:
type: string
description: Agent model ID this suite is for
workspace_id:
type: string
description: Workspace ID this suite belongs to
language:
type: string
default: en-US
description: Language locale for the persona agent and test cases (e.g., 'en-US', 'es-ES', 'fr-FR')
cases:
type: array
items:
$ref: '#/components/schemas/SimulationCaseReadOut'
description: Test cases included in this suite
agent:
$ref: '#/components/schemas/AgentListItem'
description: Agent information associated with this suite
created_at:
type: string
format: date-time
description: When the suite was created
updated_at:
type: string
format: date-time
description: When the suite was last updated
title: SimulationSuiteReadOut
AssistantsModelIdPutResponsesContentApplicationJsonSchemaDetails:
type: object
properties:
phone:
type: string
description: The phone number attached to the agent.
voice:
type: string
description: The agent's voice.
title: AssistantsModelIdPutResponsesContentApplicationJsonSchemaDetails
greeting_message_mode:
type: string
enum:
- human
- agent_static
- agent_dynamic
description: 'Controls how the agent delivers the initial greeting. `human`: the agent waits for the human to speak first. `agent_static`: the agent speaks `greeting_message` once the call is established. `agent_dynamic`: the agent generates a greeting from the prompt and speaks it once the call is established. Note: `voicemail_message` requires this to be set to `human`. Changing away from `human` while `voicemail_message` is enabled will fail.
'
title: greeting_message_mode
ActionsPostRequestBodyContentApplicationJsonSchemaCustomAction:
type: object
properties:
http_mode:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionHttpMode'
description: Select the method that will be used
url:
type: string
description: URL to be used by the action
run_action_before_call_start:
type: boolean
description: Actions that will run before the call, like phone number
name:
type: string
description: Name of the action
description:
type: string
description: Description of the action
speech_while_using_the_tool:
type: string
description: The speech that will be used while the action is executed
integration:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionIntegration'
description: The possible integrations that can be selected to retrieve information
failure_timeout:
type: integer
description: How long to wait for the custom action to complete before timing out (in seconds)
custom_auth:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionCustomAuth'
variables_before_the_call:
type: array
items:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionVariablesBeforeTheCallItems'
variables_during_the_call:
type: array
items:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionVariablesDuringTheCallItems'
headers:
type: array
items:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionHeadersItems'
query_parameters:
type: array
items:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionQueryParametersItems'
agent_speak_naturally:
type: boolean
description: If disabled, the agent will strictly stick to your pre-written messages. If enabled, it may say something that accounts for the previous context of the conversation.
message_delay:
type: string
description: What the agent should say if the action reaches the delay threshold.
message_delay_time:
type: integer
description: Delay threshold, in seconds.
message_error:
type: string
description: What the agent should say if the action failed.
json_body_stringified:
type: string
description: A json stringified of the payload/body that will be used for the action
prompt:
type: string
description: The prompt that will be used in case it is set
message_before_action_starts:
type: string
description: The message that the agent will speak before the action is triggered
required:
- http_mode
- url
- run_action_before_call_start
- name
title: ActionsPostRequestBodyContentApplicationJsonSchemaCustomAction
KnowledgeBaseIdGetResponsesContentApplicationJsonSchemaResponseKnowledgeBasesItems:
type: object
properties:
name:
type: string
description: Knowledge base name.
rag_use_condition:
type: string
description: When this knowledge base should be used.
id:
type: string
description: Knowledge base ID.
title: KnowledgeBaseIdGetResponsesContentApplicationJsonSchemaResponseKnowledgeBasesItems
Create-simulation-caseRequestUnprocessableEntityError:
type: object
properties: {}
title: Create-simulation-caseRequestUnprocessableEntityError
get-simulation-suite_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationSuiteReadOut'
title: get-simulation-suite_Response_200
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionCustomAuth:
type: object
properties:
is_needed:
type: boolean
default: false
description: If authorization to use the set URL and method are required set to true
location:
type: string
description: 'Section where the authorization will be used like: header'
key:
type: string
default: Bearer
description: The authorization type. Default is Bearer
value:
type: string
description: The value of the token that will be used with the authentication type
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionCustomAuth
SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaOperationType:
type: string
enum:
- import
- return
description: The type of operation to perform. You can import objects from the parent workspace to a subaccount or return objects from a subaccount in some cases.
title: SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaOperationType
Delete-actionRequestBadRequestError:
type: object
properties: {}
title: Delete-actionRequestBadRequestError
detach-phone-number-from-assistant_Response_200:
type: object
properties:
status:
type: string
title: detach-phone-number-from-assistant_Response_200
list-contacts_Response_200:
type: object
properties:
status:
type: string
response:
$ref: '#/components/schemas/ContactsGetResponsesContentApplicationJsonSchemaResponse'
title: list-contacts_Response_200
knowledge_base_id:
type: string
description: Knowledge base ID.
title: knowledge_base_id
Update-simulation-caseRequestUnprocessableEntityError:
type: object
properties: {}
title: Update-simulation-caseRequestUnprocessableEntityError
AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessage:
type: object
properties:
enabled:
type: boolean
description: Whether voicemail message leaving is enabled.
mode:
$ref: '#/components/schemas/AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessageMode'
description: The mode used to generate the voicemail message.
exact_message:
type: string
description: The exact message to leave on the voicemail. Used when mode is `exact_message`.
prompt:
type: string
description: A prompt used to generate the voicemail message. Used when mode is `prompt`.
description: Configuration for the message left when a voicemail is detected. Requires `greeting_message_mode` to be set to `human`.
title: AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsVoicemailMessage
get-simulation-session_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationSessionReadOut'
title: get-simulation-session_Response_200
KnowledgeBaseGetResponsesContentApplicationJsonSchemaResponseKnowledgeBasesItems:
type: object
properties:
name:
type: string
description: Knowledge base name.
id:
type: string
description: Knowledge base ID.
rag_use_condition:
type: string
description: When this knowledge base should be used.
title: KnowledgeBaseGetResponsesContentApplicationJsonSchemaResponseKnowledgeBasesItems
AgentBackgroundNoiseType:
type: string
enum:
- cafe
- office
description: What kind of background noise should be present.
title: AgentBackgroundNoiseType
CallsPostResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
answer:
type: string
call_id:
type: string
title: CallsPostResponsesContentApplicationJsonSchemaResponse
Delete-simulation-scenarioRequestBadRequestError:
type: object
properties: {}
title: Delete-simulation-scenarioRequestBadRequestError
attach-phone-numbers-to-assistant_Response_200:
type: object
properties:
status:
type: string
title: attach-phone-numbers-to-assistant_Response_200
AnalyticsGetResponsesContentApplicationJsonSchemaCallStatusStatSeriesItems:
type: object
properties:
date:
type: string
completed:
type: integer
hangup_on_voicemail:
type: integer
busy:
type: integer
no-answer:
type: integer
failed:
type: integer
left_voicemail:
type: integer
in-progress:
type: integer
checking:
type: integer
paused:
type: integer
queue:
type: integer
initiated:
type: integer
ringing:
type: integer
title: AnalyticsGetResponsesContentApplicationJsonSchemaCallStatusStatSeriesItems
Get-phone-callRequestBadRequestError:
type: object
properties:
detail:
$ref: '#/components/schemas/CallsCallIdGetResponsesContentApplicationJsonSchemaDetail'
title: Get-phone-callRequestBadRequestError
ActionsPostRequestBodyContentApplicationJsonSchemaIncallWhatsapp:
type: object
properties:
content_sid:
type: string
description: Twilio Content template SID (for example `HX...`) used for the outbound WhatsApp message.
content_variables:
type: object
additionalProperties:
type: string
description: 'Values that fill the template placeholders. Keys match the numeric placeholders in the template body (for example `{"1": ""}`).'
wait_for_reply:
type: boolean
default: false
description: When true, the agent pauses until the caller replies, the timeout elapses, or the call ends. When false, the call continues and any reply is injected into the transcript when it arrives.
timeout_seconds:
type: integer
description: Maximum time to wait for a reply when `wait_for_reply` is true.
fallback_message:
type: string
description: Message the agent speaks if the timeout fires with no reply.
required:
- content_sid
title: ActionsPostRequestBodyContentApplicationJsonSchemaIncallWhatsapp
Create-simulation-scenarioRequestBadRequestError:
type: object
properties: {}
title: Create-simulation-scenarioRequestBadRequestError
AssistantsModelIdPhoneNumbersPutResponsesContentApplicationJsonSchemaDetail:
type: object
properties:
status:
type: string
description:
type: string
request_id:
type: string
category:
type: string
required:
- status
- description
- request_id
- category
title: AssistantsModelIdPhoneNumbersPutResponsesContentApplicationJsonSchemaDetail
KnowledgeBaseKnowledgeBaseIdDetachPostResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
body:
type: string
model_id:
type: string
title: KnowledgeBaseKnowledgeBaseIdDetachPostResponsesContentApplicationJsonSchemaResponse
AssistantsPostRequestBodyContentApplicationJsonSchemaAgentPatienceLevel:
type: string
enum:
- low
- medium
- high
description: Patience level of the agent.
title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentPatienceLevel
update-simulation-scenario_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationScenarioReadOut'
title: update-simulation-scenario_Response_200
CallsGetResponsesContentApplicationJsonSchemaResponseCallsItemsExecutedActions:
type: object
properties: {}
description: Actions executed during the call
title: CallsGetResponsesContentApplicationJsonSchemaResponseCallsItemsExecutedActions
AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsMaxDuration:
type: object
properties:
duration_seconds:
type: integer
description: Maximum length of the call in seconds.
is_enabled:
type: boolean
description: Whether there's a limit on call length.
title: AssistantsGetResponsesContentApplicationJsonSchemaResponseAssistantsMaxDuration
SimulationSessionReadOut:
type: object
properties:
simulation_session_id:
type: string
format: uuid
simulations:
type: array
items:
$ref: '#/components/schemas/SimulationReadOut'
total_simulations:
type: integer
completed_simulations:
type: integer
failed_simulations:
type: integer
pending_simulations:
type: integer
description: Simulation session summary.
title: SimulationSessionReadOut
AgentBackgroundNoise:
type: object
properties:
enabled:
type: boolean
description: If enabled, the agent will add background noise.
type:
$ref: '#/components/schemas/AgentBackgroundNoiseType'
description: What kind of background noise should be present.
volume:
type: integer
description: How loud the background noise should be.
description: Add background noise to make the call more natural.
title: AgentBackgroundNoise
MemoryStoresMemoryStoreIdGetResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
id:
type: string
title:
type: string
workspace_id:
type: string
created_at:
type: string
updated_at:
type: string
contact_ids:
type: array
items:
description: Any type
title: MemoryStoresMemoryStoreIdGetResponsesContentApplicationJsonSchemaResponse
AgentListItem:
type: object
properties:
id:
type: string
format: uuid
name:
type: string
avatar:
type:
- string
- 'null'
title: AgentListItem
KnowledgeBasePostResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
body:
type: string
knowledge_base_id:
$ref: '#/components/schemas/knowledge_base_id'
title: KnowledgeBasePostResponsesContentApplicationJsonSchemaResponse
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaSendSms:
type: object
properties:
content:
type: string
description: The content/text of the SMS message
instructions:
type: string
description: The instructions that will trigger the SMS message to be sent
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaSendSms
subaccount_id:
type: string
description: Subaccount ID.
title: subaccount_id
ActionsGetResponsesContentApplicationJsonSchemaResponseActionsItems:
type: object
properties:
action_id:
type: string
action_type:
type: string
name:
type: string
description:
type: string
parameters_hard_coded:
$ref: '#/components/schemas/ActionsGetResponsesContentApplicationJsonSchemaResponseActionsItemsParametersHardCoded'
title: ActionsGetResponsesContentApplicationJsonSchemaResponseActionsItems
Get-simulationRequestUnprocessableEntityError:
type: object
properties: {}
title: Get-simulationRequestUnprocessableEntityError
AnalyticsGetResponsesContentApplicationJsonSchemaEndCallReasonStatSeriesItems:
type: object
properties:
date:
type: string
voicemail:
type: integer
human_goodbye:
type: integer
agent_goodbye:
type: integer
human_pick_up_cut_off:
type: integer
max_duration:
type: integer
idle_time_exceeded:
type: integer
goodbye_detected:
type: integer
user_disconnected:
type: integer
voicemail_message_left:
type: integer
title: AnalyticsGetResponsesContentApplicationJsonSchemaEndCallReasonStatSeriesItems
SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItems:
type: object
properties:
subaccount_id:
$ref: '#/components/schemas/subaccount_id'
agency_id:
type: string
name:
type: string
pricing_tiers:
type: array
items:
$ref: '#/components/schemas/SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsPricingTiersItems'
permissions:
$ref: '#/components/schemas/SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsPermissions'
subscription:
$ref: '#/components/schemas/SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsSubscription'
minutes_used:
type: integer
default: 0
max_minutes:
type:
- integer
- 'null'
description: The maximum number of minutes allocated to this subaccount. Null if no limit is set.
members:
type: array
items:
$ref: '#/components/schemas/SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItemsMembersItems'
title: SubaccountsSubaccountIdGetResponsesContentApplicationJsonSchemaResponseSubaccountsItems
ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionVariablesBeforeTheCallItems:
type: object
properties:
key:
type: string
description: Key name
value:
type: string
description: Value that will be assigned to the key
required:
- key
- value
title: ActionsPostRequestBodyContentApplicationJsonSchemaCustomActionVariablesBeforeTheCallItems
LiveTransferCreatePhoneBookConfigTransferMode:
type: string
enum:
- cold_transfer
- warm_transfer
- warm_transfer_with_context
description: Transfer mode.
title: LiveTransferCreatePhoneBookConfigTransferMode
create-assistant_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/AssistantsPostResponsesContentApplicationJsonSchemaResponse'
details:
$ref: '#/components/schemas/AssistantsPostResponsesContentApplicationJsonSchemaDetails'
title: create-assistant_Response_200
llm:
type: string
enum:
- gpt-4.1
- gpt-4.1-nano
- gpt-4.1-mini
- gpt-5-mini
- gpt-5-nano
- gpt-5.1
- gpt-5.2
- gpt-5.4
- gpt-5.4-mini
- gpt-5.4-nano
- synthflow
description: The LLM powering this agent.
title: llm
AssistantsPostRequestBodyContentApplicationJsonSchemaAgentNoiseCancellation:
type: string
enum:
- standard
- advanced
description: Removes background noise on the customer's side (like chatter in a café or keyboard clicks) to make their voice clearer and easier for the agent to understand.
title: AssistantsPostRequestBodyContentApplicationJsonSchemaAgentNoiseCancellation
AnalyticsGetResponsesContentApplicationJsonSchemaEndCallReasonStatItemsItems:
type: object
properties:
reason:
type: string
value:
type: integer
percentage:
type: integer
title: AnalyticsGetResponsesContentApplicationJsonSchemaEndCallReasonStatItemsItems
KnowledgeBaseKnowledgeBaseIdSourcesSourceIdPutResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
source_id:
type: string
description: Source ID.
title: KnowledgeBaseKnowledgeBaseIdSourcesSourceIdPutResponsesContentApplicationJsonSchemaResponse
ActionsPostRequestBodyContentApplicationJsonSchemaCustomEval:
type: object
properties:
question:
$ref: '#/components/schemas/ActionsPostRequestBodyContentApplicationJsonSchemaCustomEvalQuestion'
title: ActionsPostRequestBodyContentApplicationJsonSchemaCustomEval
SimulationCaseSummary:
type: object
properties:
simulation_case_id:
type: string
format: uuid
description: Unique identifier for the simulation case
name:
type: string
description: Name of the simulation case
required:
- simulation_case_id
- name
title: SimulationCaseSummary
Delete-simulation-suiteRequestBadRequestError:
type: object
properties: {}
title: Delete-simulation-suiteRequestBadRequestError
SimulationCaseReadOutType:
type: string
enum:
- custom
- agent_based
title: SimulationCaseReadOutType
SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaGrantPermissionsItems:
type: string
enum:
- inbound
- outbound
- widget
- chat
- assistants
- knowledge_base
- actions
- workflows
- contacts
- phone_numbers
- logs
- simulations
- analytics
title: SubaccountsSubaccountIdPutRequestBodyContentApplicationJsonSchemaGrantPermissionsItems
updateAMemoryStore_Response_200:
type: object
properties:
id:
type: string
title: updateAMemoryStore_Response_200
AgentEndCallReasonsV2ItemsClosingMessageMode:
type: string
enum:
- static
- prompt
- none
description: 'Controls how the farewell message is generated. static: message is spoken verbatim. prompt: message is an instruction to the LLM. none: LLM generates its own farewell.'
title: AgentEndCallReasonsV2ItemsClosingMessageMode
analyticsExport_Response_200:
type: object
properties:
executed_actions:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaExecutedActions'
description: List of actions executed during the call, as well as their success and frequency rates.
assistant_performance:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaAssistantPerformance'
description: Agent performance overview.
call_status_stat:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaCallStatusStat'
description: Call status overview.
recent_call_history:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaRecentCallHistory'
description: Log of all recent calls.
duration_metrics:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaDurationMetrics'
description: Duration metrics overview.
end_call_reason_stat:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaEndCallReasonStat'
description: An overview of reasons calls ended. For details on all the possible reasons, see [End Call Reasons](/logs#end-call-reasons).
sentiment_stat:
$ref: '#/components/schemas/AnalyticsGetResponsesContentApplicationJsonSchemaSentimentStat'
description: Sentiment overview.
title: analyticsExport_Response_200
LiveTransferCreatePhoneBookConfig:
type: object
properties:
transfer_mode:
$ref: '#/components/schemas/LiveTransferCreatePhoneBookConfigTransferMode'
description: Transfer mode.
phone_book_id:
type: string
description: Phone book ID.
message_to_transfer_target:
type: string
description: The message the human agent will hear after the call is transferred to them.
instructions:
type: string
description: 'What words can trigger the transfer call, for example: like I want to talk with a manager'
timeout:
type: integer
description: How long to wait for the transfer call to happen before stop trying to do the transfer
digits:
type: string
description: Extension digits for the transfer call
initiating_msg:
type: string
description: Message that the agent will say before starting the transfer call
goodbye_msg:
type: string
description: Message that the agent will say before leaving the call and connecting you with the transfer call number to start the conversation
failed_msg:
type: string
description: The message that the agent will say in case the person that should answer the phone is not able to answer before the timeout
stop_recording_after_transfer:
type: boolean
description: Whether the call should stop being recorded once it's transferred.
human_detection:
type: boolean
description: If true, the agent will detect whether the transfer target is a human, and once detected, will complete the transfer to the target.
human_detection_timeout_seconds:
type: integer
description: Time in seconds to wait for human detection before giving up. Used in conjunction with human_detection. Minimum 30 seconds, maximum 1800 seconds (30 minutes).
summarization_prompt:
type: string
description: Custom prompt used to generate the warm transfer context summary for the warm transfer leg.
preserve_caller_id:
type: boolean
description: If true, the transfer target will see the caller's phone number instead of the agent's phone number. Only works for numbers purchased through a Synthflow Twilio account; for other numbers the call will fail.
screened:
type: boolean
description: If true, the transfer target will first speak with the AI agent, who can answer questions about the caller and the transcript. The transfer target can then choose to accept or decline the transfer.
required:
- transfer_mode
- phone_book_id
- instructions
- initiating_msg
title: LiveTransferCreatePhoneBookConfig
Update-actionRequestBadRequestError:
type: object
properties: {}
title: Update-actionRequestBadRequestError
SimulationCasesPostResponsesContentApplicationJsonSchemaResponse:
type: object
properties:
simulation_case:
$ref: '#/components/schemas/SimulationCaseReadOut'
title: SimulationCasesPostResponsesContentApplicationJsonSchemaResponse
ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionQueryParametersItems:
type: object
properties:
key:
type: string
description: Key name
value:
type: string
description: Value that will be assigned to the key
required:
- key
- value
title: ActionsActionIdPutRequestBodyContentApplicationJsonSchemaCustomActionQueryParametersItems
update-simulation-case_Response_200:
type: object
properties:
status:
$ref: '#/components/schemas/status'
response:
$ref: '#/components/schemas/SimulationCaseReadOut'
title: update-simulation-case_Response_200
securitySchemes:
sec0:
type: http
scheme: bearer