From a9b145b4e1946886e15e879532ccdb071ef1615a Mon Sep 17 00:00:00 2001 From: Stephen Smith Date: Fri, 17 Jul 2026 14:24:48 -0700 Subject: [PATCH 1/2] Added in missing API descritions --- fern/apis/api/openapi-overrides.yml | 2673 +++++++++++++++++++++++++++ 1 file changed, 2673 insertions(+) diff --git a/fern/apis/api/openapi-overrides.yml b/fern/apis/api/openapi-overrides.yml index 32dbd8d2a..5e8abd92b 100644 --- a/fern/apis/api/openapi-overrides.yml +++ b/fern/apis/api/openapi-overrides.yml @@ -1,29 +1,45 @@ x-fern-pagination: offset: $request.page results: $response.results +info: + description: >- + Vapi is a developer platform for building voice AI agents that make and + receive phone calls, run web voice experiences, and integrate with external + systems through tools and webhooks. paths: /enterprise: post: x-fern-ignore: true /call: get: + description: >- + Returns calls for the authenticated organization. Filter results by call + ID, assistant ID, phone number ID, or creation and update timestamps. x-fern-sdk-group-name: - calls x-fern-sdk-method-name: list post: + description: >- + Creates a call using an assistant or squad. The request can reference + saved resources or include transient configurations. x-fern-sdk-group-name: - calls x-fern-sdk-method-name: create /call/{id}: get: + description: >- + Returns the call identified by its ID, including its status, + configuration, and available call data. x-fern-sdk-group-name: - calls x-fern-sdk-method-name: get delete: + description: Deletes the call identified by its ID. x-fern-sdk-group-name: - calls x-fern-sdk-method-name: delete patch: + description: Updates the call identified by its ID. x-fern-sdk-group-name: - calls x-fern-sdk-method-name: update @@ -84,114 +100,295 @@ paths: x-fern-sdk-method-name: update /assistant: get: + description: >- + Returns assistants for the authenticated organization. Filter results + by creation or update timestamps and limit the number returned. x-fern-sdk-group-name: - assistants x-fern-sdk-method-name: list post: + description: >- + Creates a reusable assistant configuration containing the model, voice, + transcriber, tools, prompts, and call behavior. x-fern-sdk-group-name: - assistants x-fern-sdk-method-name: create /assistant/{id}: get: + description: Returns the assistant identified by its ID. x-fern-sdk-group-name: - assistants x-fern-sdk-method-name: get delete: + description: Deletes the assistant identified by its ID. x-fern-sdk-group-name: - assistants x-fern-sdk-method-name: delete patch: + description: >- + Updates the specified fields of the assistant identified by its ID. x-fern-sdk-group-name: - assistants x-fern-sdk-method-name: update /phone-number: get: + description: >- + Returns phone numbers for the authenticated organization. Filter results + by creation or update timestamps and limit the number returned. x-fern-sdk-group-name: - phoneNumbers x-fern-sdk-method-name: list post: + description: >- + Creates a Vapi phone number or imports a phone number from a supported + provider, including Twilio, Vonage, Telnyx, or a bring-your-own provider. x-fern-sdk-group-name: - phoneNumbers x-fern-sdk-method-name: create + /v2/phone-number: + get: + description: >- + Returns a paginated list of phone numbers for the authenticated + organization. Search by name, number, or SIP URI using a partial, + case-insensitive match, and filter by creation or update timestamps. /phone-number/{id}: get: + description: Returns the phone number resource identified by its ID. x-fern-sdk-group-name: - phoneNumbers x-fern-sdk-method-name: get delete: + description: Deletes the phone number resource identified by its ID. x-fern-sdk-group-name: - phoneNumbers x-fern-sdk-method-name: delete patch: + description: >- + Updates the specified fields of the phone number resource identified by + its ID. x-fern-sdk-group-name: - phoneNumbers x-fern-sdk-method-name: update /squad: get: + description: >- + Returns squads for the authenticated organization. Filter results by + creation or update timestamps and limit the number returned. x-fern-sdk-group-name: - squads x-fern-sdk-method-name: list post: + description: >- + Creates a squad that coordinates multiple assistants and their handoffs + during a conversation. x-fern-sdk-group-name: - squads x-fern-sdk-method-name: create /squad/{id}: get: + description: Returns the squad identified by its ID. x-fern-sdk-group-name: - squads x-fern-sdk-method-name: get delete: + description: Deletes the squad identified by its ID. x-fern-sdk-group-name: - squads x-fern-sdk-method-name: delete patch: + description: Updates the specified fields of the squad identified by its ID. x-fern-sdk-group-name: - squads x-fern-sdk-method-name: update /tool: get: + description: >- + Returns reusable tools for the authenticated organization. Filter + results by creation or update timestamps and limit the number returned. x-fern-sdk-group-name: - tools x-fern-sdk-method-name: list post: + description: >- + Creates a reusable tool that assistants can invoke during conversations. x-fern-sdk-group-name: - tools x-fern-sdk-method-name: create /tool/{id}: get: + description: Returns the tool identified by its ID. x-fern-sdk-group-name: - tools x-fern-sdk-method-name: get delete: + description: Deletes the tool identified by its ID. x-fern-sdk-group-name: - tools x-fern-sdk-method-name: delete patch: + description: Updates the specified fields of the tool identified by its ID. x-fern-sdk-group-name: - tools x-fern-sdk-method-name: update /file: get: + description: Returns files uploaded to the authenticated organization. x-fern-sdk-group-name: - files x-fern-sdk-method-name: list post: + description: Uploads a file for use with a Vapi knowledge base. x-fern-sdk-group-name: - files x-fern-sdk-method-name: create /file/{id}: get: + description: Returns the uploaded file identified by its ID. x-fern-sdk-group-name: - files x-fern-sdk-method-name: get delete: + description: Deletes the uploaded file identified by its ID. x-fern-sdk-group-name: - files x-fern-sdk-method-name: delete patch: + description: Updates the name of the uploaded file identified by its ID. x-fern-sdk-group-name: - files x-fern-sdk-method-name: update + /campaign: + get: + description: >- + Returns outbound calling campaigns for the authenticated organization. + Filter results by campaign ID, status, or creation and update timestamps. + post: + description: Creates an outbound calling campaign that calls a set of customers. + /campaign/{id}: + get: + description: Returns the outbound calling campaign identified by its ID. + delete: + description: Deletes the outbound calling campaign identified by its ID. + patch: + description: >- + Updates the outbound calling campaign identified by its ID. Campaigns + can be ended by updating their status to `ended`. + /structured-output: + get: + description: >- + Returns structured-output definitions for the authenticated + organization. Filter results by ID, name, or creation and update + timestamps. + post: + description: >- + Creates a reusable definition for extracting validated data from + conversations using an AI model or regular expression. + /structured-output/{id}: + get: + description: Returns the structured-output definition identified by its ID. + delete: + description: Deletes the structured-output definition identified by its ID. + patch: + description: >- + Updates the structured-output definition identified by its ID. + /structured-output/run: + post: + description: >- + Runs a saved or transient structured-output definition against one or + more calls, optionally returning a preview without updating call + artifacts. + /reporting/insight: + get: + description: >- + Returns saved reporting insights for the authenticated organization. + Filter results by ID or creation and update timestamps. + post: + description: >- + Creates a saved reporting insight that queries call data and presents + the results as a bar chart, pie chart, line chart, or text value. + /reporting/insight/{id}: + get: + description: Returns the reporting insight identified by its ID. + delete: + description: Deletes the reporting insight identified by its ID. + patch: + description: Updates the reporting insight identified by its ID. + /reporting/insight/{id}/run: + post: + description: >- + Runs a saved reporting insight, optionally overriding its time range and + response format. + /reporting/insight/preview: + post: + description: >- + Runs an insight definition without first saving it, returning a preview + of the resulting chart or text value. + /eval: + get: + description: >- + Returns eval definitions for the authenticated organization. Filter + results by ID or creation and update timestamps. + post: + description: >- + Creates a reusable eval that defines a mock conversation and checkpoints + for evaluating assistant responses and tool calls. + /eval/{id}: + get: + description: Returns the eval definition identified by its ID. + delete: + description: Deletes the eval definition identified by its ID. + patch: + description: Updates the eval definition identified by its ID. + /eval/run: + get: + description: >- + Returns eval runs for the authenticated organization. Filter results by + ID or creation and update timestamps. + post: + description: >- + Runs a saved or transient eval against an assistant or squad and creates + an eval-run record containing the results. + /eval/run/{id}: + get: + description: Returns the eval run identified by its ID. + delete: + description: Deletes the eval run identified by its ID. + /observability/scorecard: + get: + description: >- + Returns scorecards for the authenticated organization. Filter results by + ID or creation and update timestamps. + post: + description: >- + Creates a scorecard containing metrics, scoring conditions, and optional + links to assistants whose calls should be evaluated. + /observability/scorecard/{id}: + get: + description: Returns the scorecard identified by its ID. + delete: + description: Deletes the scorecard identified by its ID. + patch: + description: Updates the scorecard identified by its ID. + /provider/{provider}/{resourceName}: + get: + description: >- + Returns a paginated list of provider resources for the authenticated + organization. Filter pronunciation dictionaries by provider, resource + ID, or creation and update timestamps. + post: + description: >- + Creates a pronunciation-dictionary resource for a supported provider, + currently Cartesia or ElevenLabs. + /provider/{provider}/{resourceName}/{id}: + get: + description: >- + Returns the provider resource identified by its Vapi resource ID. + delete: + description: >- + Deletes the provider resource identified by its Vapi resource ID. + patch: + description: >- + Updates the provider resource identified by its Vapi resource ID. /knowledge-base: get: x-fern-sdk-group-name: @@ -221,6 +418,9 @@ paths: x-fern-sdk-method-name: update /analytics: post: + description: >- + Runs one or more metric queries against call or subscription data using + the requested time range, groupings, and aggregate operations. x-fern-sdk-group-name: - analytics x-fern-sdk-method-name: get @@ -236,33 +436,431 @@ paths: components: schemas: CreateAssistantDTO: + description: >- + Configuration used to create an assistant, including its model, voice, + transcriber, prompts, tools, messaging, and conversation behavior. properties: + firstMessageInterruptionsEnabled: + description: >- + Set to `true` to allow the user to interrupt the assistant while it + speaks the first message. Default is `false`. + compliancePlan: + description: >- + Compliance settings for the assistant, including HIPAA and PCI + behavior, security filtering, and recording consent. + keypadInputPlan: + description: >- + Configuration for collecting and processing DTMF keypad input + during calls. serverMessages: items: x-fern-enum: "transcript[transcriptType='final']": name: FinalTranscript AssistantOverrides: + description: >- + Per-call or handoff overrides for an assistant's providers, messages, + tools, credentials, call behavior, and server configuration. properties: + firstMessageInterruptionsEnabled: + description: >- + Set to `true` to allow the user to interrupt the assistant while it + speaks the first message. Default is `false`. + tools:append: + description: >- + Tools to append to the assistant's existing tool configuration. + compliancePlan: + description: >- + Compliance settings to apply, including HIPAA and PCI behavior, + security filtering, and recording consent. + keypadInputPlan: + description: >- + Configuration for collecting and processing DTMF keypad input. serverMessages: items: x-fern-enum: "transcript[transcriptType='final']": name: FinalTranscript Assistant: + description: >- + A saved assistant configuration returned by the Vapi API. It defines + how the assistant listens, reasons, speaks, handles conversations, + sends events, and produces artifacts and analysis. properties: + firstMessageInterruptionsEnabled: + description: >- + Set to `true` to allow the user to interrupt the assistant while it + speaks the first message. Default is `false`. + compliancePlan: + description: >- + Compliance settings for the assistant, including HIPAA and PCI + behavior, security filtering, and recording consent. + keypadInputPlan: + description: >- + Configuration for collecting and processing DTMF keypad input + during calls. serverMessages: items: x-fern-enum: "transcript[transcriptType='final']": name: FinalTranscript UpdateAssistantDTO: + description: >- + Fields used to update an existing assistant. Include only the settings + you want to change; omitted fields retain their current values. properties: + firstMessageInterruptionsEnabled: + description: >- + Set to `true` to allow the user to interrupt the assistant while it + speaks the first message. Default is `false`. + compliancePlan: + description: >- + Compliance settings for the assistant, including HIPAA and PCI + behavior, security filtering, and recording consent. + keypadInputPlan: + description: >- + Configuration for collecting and processing DTMF keypad input + during calls. serverMessages: items: x-fern-enum: "transcript[transcriptType='final']": name: FinalTranscript + CreateSquadDTO: + description: >- + Configuration used to create a squad. Provide an ordered list of + assistant members and optional overrides that control how the squad + handles a conversation and transfers between assistants. + Squad: + description: >- + A saved squad configuration that coordinates a group of assistants + during a conversation. The first member starts the call, and member + destinations control transfers between assistants. + UpdateSquadDTO: + description: >- + Configuration used to update an existing squad, including its name, + ordered members, and shared assistant overrides. + SquadMemberDTO: + description: >- + An assistant member of a squad. Reference a saved assistant or provide + a transient assistant, then configure member-specific overrides and + destinations for transfers. + properties: + assistantDestinations: + description: >- + Assistants this squad member can route the conversation to through + a transfer or handoff. + CreateFileDTO: + description: >- + A file-upload request containing the file to store and process in Vapi. + File: + description: >- + An uploaded file record, including its processing status, storage + details, extracted-text location, metadata, and lifecycle timestamps. + properties: + object: + description: The object type. This is always `file`. + status: + description: The current processing status of the uploaded file. + originalName: + description: The original name of the uploaded file. + bytes: + description: The size of the uploaded file in bytes. + purpose: + description: The intended use assigned to the uploaded file. + mimetype: + description: The MIME type of the uploaded file. + key: + description: The object-storage key for the uploaded file. + path: + description: The object-storage path for the uploaded file. + bucket: + description: The object-storage bucket containing the uploaded file. + url: + description: The URL used to access the uploaded file. + parsedTextUrl: + description: The URL used to access text extracted from the file. + parsedTextBytes: + description: The size of the extracted text in bytes. + metadata: + description: Additional metadata associated with the uploaded file. + UpdateFileDTO: + description: >- + Fields used to update an uploaded file. Currently, the file name can be + changed. + Campaign: + description: >- + A saved outbound calling campaign, including its calling configuration, + schedule, status, customers, calls, and call-progress counters. + CampaignPaginatedResponse: + description: >- + A paginated collection of outbound calling campaigns and metadata + describing the result set. + properties: + results: + description: The campaigns returned for the current page. + metadata: + description: Pagination metadata for the campaign result set. + CreateCampaignDTO: + description: >- + Configuration used to create an outbound calling campaign. Choose an + assistant, squad, or workflow, then provide customers, phone-number or + dial-plan settings, and an optional schedule. + UpdateCampaignDTO: + description: >- + Fields used to update an outbound calling campaign, including its name, + status, calling resource, phone-number or dial-plan settings, and + schedule. + CreateStructuredOutputDTO: + description: >- + Configuration used to create a structured-output definition that + extracts validated data from calls using an AI model or regular + expression. + StructuredOutput: + description: >- + A saved structured-output definition containing its extraction schema, + execution method, model or regular expression, linked resources, and + lifecycle metadata. + StructuredOutputPaginatedResponse: + description: >- + A paginated collection of structured-output definitions and metadata + describing the result set. + properties: + results: + description: The structured-output definitions returned for the current page. + metadata: + description: Pagination metadata for the structured-output result set. + StructuredOutputRunDTO: + description: >- + A request to run a saved or transient structured-output definition + against one or more calls, either as a preview or as an artifact update. + UpdateStructuredOutputDTO: + description: >- + Fields used to update a structured-output definition, including its + name, extraction schema, execution method, model or regular expression, + compliance settings, and linked resources. + CreateBarInsightFromCallTableDTO: + description: >- + Configuration used to create a bar-chart insight from call data using + metric queries, formulas, grouping, and a stepped time range. + properties: + timeRange: + description: >- + The time range and interval used to aggregate the bar-chart data. + CreateLineInsightFromCallTableDTO: + description: >- + Configuration used to create a line-chart insight from call data using + metric queries, formulas, grouping, and a stepped time range. + properties: + timeRange: + description: >- + The time range and interval used to aggregate the line-chart data. + CreatePieInsightFromCallTableDTO: + description: >- + Configuration used to create a pie-chart insight from call data using + metric queries, formulas, grouping, and a time range. + properties: + timeRange: + description: The time range used to query the pie-chart data. + CreateTextInsightFromCallTableDTO: + description: >- + Configuration used to create a text-value insight from call data using + metric queries, a formula, and a time range. + properties: + timeRange: + description: The time range used to query the text-value data. + BarInsight: + description: >- + A saved bar-chart insight containing its call-data queries, formulas, + grouping, stepped time range, metadata, and lifecycle information. + properties: + timeRange: + description: >- + The time range and interval used to aggregate the bar-chart data. + LineInsight: + description: >- + A saved line-chart insight containing its call-data queries, formulas, + grouping, stepped time range, metadata, and lifecycle information. + properties: + timeRange: + description: >- + The time range and interval used to aggregate the line-chart data. + PieInsight: + description: >- + A saved pie-chart insight containing its call-data queries, formulas, + grouping, time range, and lifecycle information. + properties: + timeRange: + description: The time range used to query the pie-chart data. + TextInsight: + description: >- + A saved text-value insight containing its call-data queries, formula, + time range, and lifecycle information. + properties: + timeRange: + description: The time range used to query the text-value data. + UpdateBarInsightFromCallTableDTO: + description: >- + Fields used to update a bar-chart insight, including its queries, + formulas, grouping, time range, metadata, and name. + properties: + timeRange: + description: >- + The time range and interval used to aggregate the bar-chart data. + UpdateLineInsightFromCallTableDTO: + description: >- + Fields used to update a line-chart insight, including its queries, + formulas, grouping, time range, metadata, and name. + properties: + timeRange: + description: >- + The time range and interval used to aggregate the line-chart data. + UpdatePieInsightFromCallTableDTO: + description: >- + Fields used to update a pie-chart insight, including its queries, + formulas, grouping, time range, and name. + properties: + timeRange: + description: The time range used to query the pie-chart data. + UpdateTextInsightFromCallTableDTO: + description: >- + Fields used to update a text-value insight, including its queries, + formula, time range, and name. + properties: + timeRange: + description: The time range used to query the text-value data. + InsightPaginatedResponse: + description: >- + A paginated collection of saved reporting insights and metadata + describing the result set. + properties: + results: + description: The reporting insights returned for the current page. + metadata: + description: Pagination metadata for the insight result set. + InsightRunDTO: + description: >- + Options for running a saved insight, including optional time-range and + output-format overrides. + properties: + formatPlan: + description: Output-formatting instructions applied to the insight run. + InsightRunResponse: + description: >- + Metadata identifying a saved insight run and its lifecycle timestamps. + properties: + id: + description: The unique identifier for the insight run. + insightId: + description: The unique identifier for the insight that was run. + orgId: + description: The unique identifier for the organization that owns the run. + createdAt: + description: The ISO 8601 timestamp when the insight run was created. + updatedAt: + description: The ISO 8601 timestamp when the insight run was last updated. + AnalyticsQueryDTO: + description: >- + A request containing one or more metric queries to run against call or + subscription data. + AnalyticsQueryResult: + description: >- + The result of a named analytics query, including the evaluated time + range and returned metric data. + CreateEvalDTO: + description: >- + Configuration used to create a reusable eval containing a mock + conversation and checkpoints for assessing assistant responses and tool + calls. + UpdateEvalDTO: + description: >- + Fields used to update an eval, including its name, description, mock + conversation messages, and eval type. + Eval: + description: >- + A saved eval definition containing its mock conversation, checkpoints, + descriptive metadata, type, and lifecycle information. + properties: + id: + description: The unique identifier for the eval. + orgId: + description: The unique identifier for the organization that owns the eval. + createdAt: + description: The ISO 8601 timestamp when the eval was created. + updatedAt: + description: The ISO 8601 timestamp when the eval was last updated. + EvalPaginatedResponse: + description: >- + A paginated collection of saved eval definitions and metadata describing + the result set. + properties: + results: + description: The eval definitions returned for the current page. + metadata: + description: Pagination metadata for the eval result set. + CreateEvalRunDTO: + description: >- + A request to run a saved or transient eval against an assistant or + squad target. + EvalRun: + description: >- + A record of an eval execution, including its target, status, results, + costs, completion details, and lifecycle timestamps. + properties: + id: + description: The unique identifier for the eval run. + orgId: + description: The unique identifier for the organization that owns the run. + createdAt: + description: The ISO 8601 timestamp when the eval run was created. + startedAt: + description: The ISO 8601 timestamp when the eval run started. + endedAt: + description: The ISO 8601 timestamp when the eval run ended. + EvalRunPaginatedResponse: + description: >- + A paginated collection of eval runs and metadata describing the result + set. + properties: + results: + description: The eval runs returned for the current page. + metadata: + description: Pagination metadata for the eval-run result set. + CreateScorecardDTO: + description: >- + Configuration used to create a scorecard containing evaluation metrics, + scoring conditions, and optional assistant associations. + UpdateScorecardDTO: + description: >- + Fields used to update a scorecard, including its name, description, + metrics, scoring conditions, and assistant associations. + Scorecard: + description: >- + A saved scorecard containing its evaluation metrics, scoring conditions, + assistant associations, descriptive metadata, and lifecycle information. + ScorecardPaginatedResponse: + description: >- + A paginated collection of scorecards and metadata describing the result + set. + properties: + results: + description: The scorecards returned for the current page. + metadata: + description: Pagination metadata for the scorecard result set. + ProviderResource: + description: >- + A provider-managed pronunciation-dictionary resource mirrored in Vapi, + including its provider identifiers, resource data, and lifecycle + information. + ProviderResourcePaginatedResponse: + description: >- + A paginated collection of provider resources and metadata describing the + result set. + properties: + results: + description: The provider resources returned for the current page. + metadata: + description: Pagination metadata for the provider-resource result set. ClientMessageTranscript: title: ClientMessageTranscript properties: @@ -286,6 +884,9 @@ components: name: FinalTranscript FallbackAzureVoice: title: FallbackAzureVoice + description: >- + Fallback configuration for synthesizing assistant speech with Azure, + including voice selection, speed, chunking, and caching. properties: voiceId: x-fern-type-name: FallbackAzureVoiceId @@ -293,6 +894,10 @@ components: - x-fern-type-name: FallbackAzureVoiceIdEnum FallbackDeepgramVoice: title: FallbackDeepgramVoice + description: >- + Fallback configuration for synthesizing assistant speech with Deepgram, + including voice and model selection, model-improvement preferences, + chunking, and caching. properties: voiceId: x-fern-type-name: FallbackDeepgramVoiceId @@ -300,6 +905,11 @@ components: - x-fern-type-name: FallbackDeepgramVoiceIdEnum FallbackElevenLabsVoice: title: FallbackElevenLabsVoice + description: >- + Fallback configuration for synthesizing assistant speech with + ElevenLabs, including voice and model selection, language, voice tuning, + streaming, Speech Synthesis Markup Language parsing, pronunciation + dictionaries, chunking, and caching. properties: voiceId: x-fern-type-name: FallbackElevenLabsVoiceId @@ -309,6 +919,10 @@ components: x-fern-type: literal<"11labs"> FallbackOpenAIVoice: title: FallbackOpenAIVoice + description: >- + Fallback configuration for synthesizing assistant speech with OpenAI, + including voice and model selection, delivery instructions, speed, + chunking, and caching. properties: voiceId: x-fern-type-name: FallbackOpenAIVoiceId @@ -316,6 +930,10 @@ components: - x-fern-type-name: FallbackOpenAIVoiceIdEnum FallbackRimeAIVoice: title: FallbackRimeAIVoice + description: >- + Fallback configuration for synthesizing assistant speech with Rime AI, + including voice and model selection, language, speed, pauses, + phonemization, latency, chunking, and caching. properties: voiceId: x-fern-type-name: FallbackRimeAIVoiceId @@ -323,6 +941,10 @@ components: - x-fern-type-name: FallbackRimeAIVoiceIdEnum FallbackPlayHTVoice: title: FallbackPlayHTVoice + description: >- + Fallback configuration for synthesizing assistant speech with PlayHT, + including voice and model selection, language, emotion and style + guidance, chunking, and caching. properties: voiceId: x-fern-type-name: FallbackPlayHTVoiceId @@ -330,6 +952,9 @@ components: - x-fern-type-name: FallbackPlayHTVoiceIdEnum FallbackLMNTVoice: title: FallbackLMNTVoice + description: >- + Fallback configuration for synthesizing assistant speech with LMNT, + including voice selection, language, speed, chunking, and caching. properties: voiceId: x-fern-type-name: FallbackLMNTVoiceId @@ -344,6 +969,9 @@ components: - x-fern-type-name: FallbackNeetsVoiceIdEnum FallbackSmallestAIVoice: title: FallbackSmallestAIVoice + description: >- + Fallback configuration for synthesizing assistant speech with Smallest + AI, including voice and model selection, speed, chunking, and caching. properties: voiceId: x-fern-type-name: FallbackSmallestAIVoiceId @@ -351,6 +979,9 @@ components: - x-fern-type-name: FallbackSmallestAIVoiceIdEnum AzureVoice: title: AzureVoice + description: >- + Configuration for synthesizing assistant speech with Azure, including + voice selection, speed, chunking, caching, and fallback settings. properties: voiceId: x-fern-type-name: AzureVoiceId @@ -358,6 +989,10 @@ components: - x-fern-type-name: AzureVoiceIdEnum DeepgramVoice: title: DeepgramVoice + description: >- + Configuration for synthesizing assistant speech with Deepgram, including + voice and model selection, model-improvement preferences, chunking, + caching, and fallback settings. properties: voiceId: x-fern-type-name: DeepgramVoiceId @@ -365,6 +1000,11 @@ components: - x-fern-type-name: DeepgramVoiceIdEnum ElevenLabsVoice: title: ElevenLabsVoice + description: >- + Configuration for synthesizing assistant speech with ElevenLabs, + including voice and model selection, language, voice tuning, streaming, + Speech Synthesis Markup Language parsing, pronunciation dictionaries, + chunking, caching, and fallback settings. properties: voiceId: x-fern-type-name: ElevenLabsVoiceId @@ -374,6 +1014,10 @@ components: x-fern-type: literal<"11labs"> SmallestAIVoice: title: SmallestAIVoice + description: >- + Configuration for synthesizing assistant speech with Smallest AI, + including voice and model selection, speed, chunking, caching, and + fallback settings. properties: voiceId: x-fern-type-name: SmallestAIVoiceId @@ -385,9 +1029,13 @@ components: x-fern-type: literal<"11labs"> CreateElevenLabsCredentialDTO: title: CreateElevenLabsCredentialDTO + description: >- + Credentials for authenticating speech recognition and voice synthesis + requests with ElevenLabs. properties: provider: x-fern-type: literal<"11labs"> + description: Selects ElevenLabs as the credential provider. UpdateElevenLabsCredentialDTO: properties: provider: @@ -409,6 +1057,9 @@ components: "11labs": name: ElevenLabs KeypadInputPlan: + description: >- + Controls collection of dual-tone multi-frequency (DTMF) keypad input, + including enablement, processing timeout, and delimiters. properties: delimiters: x-fern-enum: @@ -428,16 +1079,28 @@ components: name: Hash NeuphonicVoice: title: NeuphonicVoice + description: >- + Configuration for synthesizing assistant speech with Neuphonic, + including voice and model selection, language, speed, chunking, caching, + and fallback settings. properties: voiceId: x-fern-type: string FallbackNeuphonicVoice: title: FallbackNeuphonicVoice + description: >- + Fallback configuration for synthesizing assistant speech with Neuphonic, + including voice and model selection, language, speed, chunking, and + caching. properties: voiceId: x-fern-type: string LMNTVoice: title: LMNTVoice + description: >- + Configuration for synthesizing assistant speech with LMNT, including + voice selection, language, speed, chunking, caching, and fallback + settings. properties: voiceId: x-fern-type-name: LMNTVoiceId @@ -452,6 +1115,10 @@ components: - x-fern-type-name: NeetsVoiceIdEnum OpenAIVoice: title: OpenAIVoice + description: >- + Configuration for synthesizing assistant speech with OpenAI, including + voice and model selection, delivery instructions, speed, chunking, + caching, and fallback settings. properties: voiceId: x-fern-type-name: OpenAIVoiceId @@ -459,6 +1126,10 @@ components: - x-fern-type-name: OpenAIVoiceIdEnum RimeAIVoice: title: RimeAIVoice + description: >- + Configuration for synthesizing assistant speech with Rime AI, including + voice and model selection, language, speed, pauses, phonemization, + latency, chunking, caching, and fallback settings. properties: voiceId: x-fern-type-name: RimeAIVoiceId @@ -466,6 +1137,10 @@ components: - x-fern-type-name: RimeAIVoiceIdEnum PlayHTVoice: title: PlayHTVoice + description: >- + Configuration for synthesizing assistant speech with PlayHT, including + voice and model selection, language, emotion and style guidance, + chunking, caching, and fallback settings. properties: voiceId: x-fern-type-name: PlayHTVoiceId @@ -473,6 +1148,10 @@ components: - x-fern-type-name: PlayHTVoiceIdEnum DeepgramTranscriber: title: DeepgramTranscriber + description: >- + Configuration for transcribing speech during assistant conversations + with Deepgram, including model, language, formatting, endpointing, + vocabulary, and fallback settings. properties: model: $ref: "#/components/schemas/DeepgramTranscriberModel" @@ -683,6 +1362,9 @@ components: name: whisper FallbackDeepgramTranscriber: title: FallbackDeepgramTranscriber + description: >- + Fallback configuration for transcribing speech with Deepgram, including + model, language, formatting, endpointing, and vocabulary. properties: model: $ref: "#/components/schemas/DeepgramTranscriberModel" @@ -893,7 +1575,12 @@ components: name: whisper TransferDestinationAssistant: title: TransferDestinationAssistant + description: >- + Transfers a call to another assistant by name, with an optional message + and assistant-transfer mode. properties: + type: + description: Selects another assistant as the transfer destination. transferMode: $ref: "#/components/schemas/TransferMode" TransferMode: @@ -906,6 +1593,9 @@ components: "swap-system-message-in-history": name: swapSystemMessageInHistory ChunkPlan: + description: >- + Controls how model output is split into chunks before voice synthesis, + including minimum length, punctuation boundaries, and formatting. properties: punctuationBoundaries: items: @@ -974,151 +1664,967 @@ components: name: COLON description: ":" CartesiaExperimentalControls: + description: Cartesia voice controls for speed and emotion. properties: speed: + description: >- + Speaking-speed control expressed as a preset or a value from -1 to + 1. x-fern-type-name: CartesiaSpeedControl + emotion: + description: Emotion and intensity applied to the Cartesia voice. + + AWSIAMCredentialsAuthenticationPlan: + description: Direct AWS IAM credentials used to authenticate requests. + properties: + type: + description: Selects direct AWS IAM credential authentication. + AWSStsAuthenticationPlan: + description: >- + AWS Security Token Service role-assumption configuration used to + authenticate requests. + AnthropicThinkingConfig: + description: >- + Enables Anthropic extended thinking with a maximum thinking-token + budget. + properties: + type: + description: Enables Anthropic extended thinking. + AzureBlobStorageBucketPlan: + description: >- + Azure Blob Storage container configuration for call artifacts, + including its connection string, container name, and storage path. + CartesiaGenerationConfig: + description: >- + Generation controls for Cartesia Sonic 3 voices, including speed, + volume, and accent localization. + CartesiaGenerationConfigExperimental: + description: >- + Cartesia Sonic 3 generation controls, including accent localization. + ElevenLabsPronunciationDictionaryLocator: + description: >- + Identifies a specific version of an ElevenLabs pronunciation + dictionary. + FormatPlan: + description: >- + Controls text normalization before voice synthesis, including built-in + formatters, number handling, and custom replacements. + GeminiMultimodalLivePrebuiltVoiceConfig: + description: >- + Selects a prebuilt voice for Gemini Multimodal Live audio output. + properties: + voiceName: + description: Prebuilt Gemini voice used for audio output. + GeminiMultimodalLiveSpeechConfig: + description: Speech-output configuration for Gemini Multimodal Live. + properties: + voiceConfig: + description: >- + Voice configuration used for Gemini Multimodal Live speech output. + GeminiMultimodalLiveVoiceConfig: + description: Voice selection configuration for Gemini Multimodal Live. + properties: + prebuiltVoiceConfig: + description: >- + Prebuilt voice used for Gemini Multimodal Live speech output. + GhlToolMetadata: + description: GHL workflow and location identifiers attached to a tool. + properties: + workflowId: + description: GHL workflow identifier associated with the tool. + locationId: + description: GHL location identifier associated with the tool. + GladiaCustomVocabularyConfigDTO: + description: >- + Custom vocabulary configuration for Gladia transcription, including + vocabulary items and default recognition intensity. + GladiaVocabularyItemDTO: + description: >- + A Gladia custom vocabulary word or phrase with optional pronunciations, + intensity, and language. + GoogleRealtimeConfig: + description: >- + Realtime Gemini generation and speech-output settings, including + sampling, repetition penalties, and voice configuration. + RegexOption: + description: >- + Enables or disables one regular-expression matching option for a text + replacement. + TavusConversationProperties: + description: >- + Tavus conversation behavior and media settings, including duration, + participant timeouts, recording, transcription, background, language, + and recording storage. + VapiPronunciationDictionaryLocator: + description: >- + Identifies a pronunciation dictionary and optional version used for + voice synthesis. + AssistantMessageEvaluationContinuePlan: + description: >- + Controls how an evaluation proceeds after judging an assistant message, + including failure handling and optional message overrides. + AssistantMessageJudgePlanAI: + description: >- + Evaluates an assistant message with an LLM judge and a configured + evaluation model. + AssistantMessageJudgePlanExact: + description: >- + Evaluates an assistant message using case-insensitive exact content + matching and expected tool calls. + AssistantMessageJudgePlanRegex: + description: >- + Evaluates assistant-message content and tool-call arguments using + regular-expression patterns. + ChatEvalAssistantMessageEvaluation: + description: >- + An expected assistant turn in an evaluation, including the judge plan + and how the evaluation should continue afterward. + ChatEvalAssistantMessageMock: + description: >- + A simulated assistant turn in an evaluation conversation, with optional + message content and tool calls. + ChatEvalAssistantMessageMockToolCall: + description: >- + A simulated assistant tool call with the tool name and optional + arguments. + ChatEvalSystemMessageMock: + description: A simulated system message in an evaluation conversation. + ChatEvalToolResponseMessageEvaluation: + description: >- + An expected tool-response turn evaluated by a configured LLM judge. + ChatEvalToolResponseMessageMock: + description: A simulated tool response in an evaluation conversation. + ChatEvalUserMessageMock: + description: A simulated user message in an evaluation conversation. + EvalAnthropicModel: + description: >- + Anthropic model configuration for an LLM judge, including its messages, + generation settings, and optional extended thinking. + EvalCustomModel: + description: >- + OpenAI-compatible custom model configuration for an LLM judge, + including its endpoint, headers, messages, and generation settings. + EvalGoogleModel: + description: >- + Google model configuration for an LLM judge, including its messages and + generation settings. + EvalOpenAIModel: + description: >- + OpenAI model configuration for an LLM judge, including its messages and + generation settings. + EvalRunResult: + description: >- + The pass or fail result of an evaluation run, including its conversation + messages and timing. + EvalRunTargetAssistant: + description: >- + An assistant evaluation target provided as a saved assistant ID or a + transient assistant, with optional assistant overrides. + EvalRunTargetSquad: + description: >- + A squad evaluation target provided as a saved squad ID or a transient + squad, with optional assistant overrides. + ScorecardMetric: + description: >- + A scorecard metric that awards points when a structured output meets its + configured conditions. UserMessage: title: UserMessage + description: >- + A user-authored entry in the call message history, including content, + timing, security-filter results, and optional speaker metadata. SystemMessage: title: SystemMessage + description: >- + A system-authored entry in the call message history, including its + content and timing. BotMessage: title: BotMessage + description: >- + An assistant-authored entry in the call message history, including + content, timing, source, and duration. ToolCallMessage: title: ToolCallMessage + description: >- + An entry in the call message history that records one or more tool calls + requested during the conversation. ToolCallResultMessage: title: ToolCallResultMessage + description: >- + An entry in the call message history that records the result and + metadata for a completed tool call. FallbackAssemblyAITranscriber: title: FallbackAssemblyAITranscriber + description: >- + Fallback configuration for transcribing speech with AssemblyAI, + including language, streaming model, endpointing, and vocabulary. FallbackAzureSpeechTranscriber: title: FallbackAzureSpeechTranscriber + description: >- + Fallback configuration for transcribing speech with Azure Speech, + including language and segmentation. FallbackCustomTranscriber: title: FallbackCustomTranscriber + description: >- + Fallback configuration for sending conversation audio to a custom + WebSocket transcription server. FallbackElevenLabsTranscriber: title: FallbackElevenLabsTranscriber + description: >- + Fallback configuration for transcribing speech with ElevenLabs, + including model, language, and speech thresholds. FallbackGladiaTranscriber: title: FallbackGladiaTranscriber + description: >- + Fallback configuration for transcribing speech with Gladia, including + language behavior, audio processing, endpointing, vocabulary, and + region. FallbackGoogleTranscriber: title: FallbackGoogleTranscriber + description: >- + Fallback configuration for transcribing speech with Google, including + model and language. FallbackTalkscriberTranscriber: title: FallbackTalkscriberTranscriber + description: >- + Fallback configuration for transcribing speech with Talkscriber, + including model and language. FallbackSpeechmaticsTranscriber: title: FallbackSpeechmaticsTranscriber + description: >- + Fallback configuration for transcribing speech with Speechmatics, + including language, region, diarization, vocabulary, endpointing, and + formatting. + properties: + language: + description: >- + Language used for transcription. Set to `auto` to detect the + language automatically. + customVocabulary: + description: >- + Words and phrases that Speechmatics should recognize more + accurately, with optional phonetic alternatives. FallbackOpenAITranscriber: title: FallbackOpenAITranscriber + description: >- + Fallback configuration for transcribing speech with OpenAI, including + model and language. TextContent: title: TextContent + description: >- + Localized text content used as a language-specific message variant. + properties: + type: + description: Selects text as the content type. + text: + description: Text spoken or displayed for this content variant. + language: + description: Language code associated with this text variant. ToolMessageStart: title: ToolMessageStart + description: >- + Message spoken when a tool call starts, with optional language variants, + argument conditions, and blocking behavior. ToolMessageComplete: title: ToolMessageComplete + description: >- + Message spoken when a tool call completes, with optional language + variants, argument conditions, role, and end-call behavior. ToolMessageFailed: title: ToolMessageFailed + description: >- + Message spoken when a tool call fails, with optional language variants, + argument conditions, and end-call behavior. ToolMessageDelayed: title: ToolMessageDelayed + description: >- + Message spoken when a tool call exceeds a configured response delay, + with optional language variants and argument conditions. CustomMessage: title: CustomMessage + description: >- + A message spoken by the assistant with optional language-specific + content variants. TransferDestinationNumber: title: TransferDestinationNumber + description: >- + Transfers a call to a phone number, with optional extension, caller ID, + message, transfer plan, and number validation. + properties: + type: + description: Selects a phone number as the transfer destination. TransferDestinationSip: title: TransferDestinationSip + description: >- + Transfers a call to a SIP URI, with optional caller ID, headers, message, + and transfer plan. + properties: + type: + description: Selects a SIP URI as the transfer destination. CreateApiRequestToolDTO: title: CreateApiRequestToolDTO + description: >- + Configuration used to create a reusable tool that sends HTTP requests + to a configured API and can authenticate, retry failures, and extract + variables from responses. + properties: + method: + description: The HTTP method used for the API request. + CreateCodeToolDTO: + description: >- + Configuration used to create a reusable tool that executes TypeScript + code with configured credentials, environment variables, and timeout. CreateBashToolDTO: title: CreateBashToolDTO + description: >- + Configuration used to create a tool that executes shell commands in a + configured environment. CreateComputerToolDTO: title: CreateComputerToolDTO + description: >- + Configuration used to create a tool that lets the model interact with a + computer display through screen, pointer, and keyboard actions. CreateDtmfToolDTO: title: CreateDtmfToolDTO + description: >- + Configuration used to create a tool that lets an assistant send DTMF + keypad tones during a call. CreateEndCallToolDTO: title: CreateEndCallToolDTO + description: >- + Configuration used to create a tool that lets an assistant end the + active call. CreateFunctionToolDTO: title: CreateFunctionToolDTO + description: >- + Configuration used to create a custom function tool that sends + model-generated arguments to a server and returns the result to the + assistant. + CreateHandoffToolDTO: + description: >- + Configuration used to create a tool that hands a conversation to + another assistant, squad, or dynamically selected destination. CreateGoHighLevelCalendarAvailabilityToolDTO: title: CreateGoHighLevelCalendarAvailabilityToolDTO + description: >- + Configuration used to create a tool that checks calendar availability + in a connected GoHighLevel account. CreateGoHighLevelCalendarEventCreateToolDTO: title: CreateGoHighLevelCalendarEventCreateToolDTO + description: >- + Configuration used to create a tool that adds calendar events to a + connected GoHighLevel account. CreateGoHighLevelContactCreateToolDTO: title: CreateGoHighLevelContactCreateToolDTO + description: >- + Configuration used to create a tool that adds contacts to a connected + GoHighLevel account. CreateGoHighLevelContactGetToolDTO: title: CreateGoHighLevelContactGetToolDTO + description: >- + Configuration used to create a tool that retrieves contacts from a + connected GoHighLevel account. CreateGoogleCalendarCheckAvailabilityToolDTO: title: CreateGoogleCalendarCheckAvailabilityToolDTO + description: >- + Configuration used to create a tool that checks availability in a + connected Google Calendar. CreateGoogleCalendarCreateEventToolDTO: title: CreateGoogleCalendarCreateEventToolDTO + description: >- + Configuration used to create a tool that adds events to a connected + Google Calendar. CreateGoogleSheetsRowAppendToolDTO: title: CreateGoogleSheetsRowAppendToolDTO + description: >- + Configuration used to create a tool that appends rows to a connected + Google Sheet. CreateMcpToolDTO: title: CreateMcpToolDTO + description: >- + Configuration used to create a tool that connects an assistant to a + Model Context Protocol server and exposes its available tools. + properties: + metadata: + description: >- + Connection metadata for the MCP server, including its communication + protocol. CreateQueryToolDTO: title: CreateQueryToolDTO + description: >- + Configuration used to create a tool that searches configured knowledge + bases and returns relevant content to the assistant. CreateSlackSendMessageToolDTO: title: CreateSlackSendMessageToolDTO + description: >- + Configuration used to create a tool that lets an assistant send a + message to Slack. CreateSmsToolDTO: title: CreateSmsToolDTO + description: >- + Configuration used to create a tool that lets an assistant send an SMS + message during a call. CreateTextEditorToolDTO: title: CreateTextEditorToolDTO + description: >- + Configuration used to create a tool that reads and edits text files in + a configured environment. CreateTransferCallToolDTO: title: CreateTransferCallToolDTO + description: >- + Configuration used to create a tool that transfers the active call to + one of its configured destinations. + properties: + type: + description: >- + The tool type. Use `transferCall` for a call-transfer tool. + CreateSipRequestToolDTO: + description: >- + Configuration used to create a tool that sends SIP `INFO`, `MESSAGE`, + or `NOTIFY` requests with configured headers and body. + CreateVoicemailToolDTO: + description: >- + Configuration used to create a voicemail-detection tool with optional + beep detection for supported calls. CreateCustomKnowledgeBaseDTO: title: CreateCustomKnowledgeBaseDTO + description: >- + Configuration for connecting a custom knowledge-base implementation + through a customer-hosted server. + KnowledgeBase: + description: >- + A knowledge-base configuration, including its provider, model, + description, and associated files. + CodeToolEnvironmentVariable: + description: >- + An environment variable supplied to code-tool execution, with support + for Liquid templates in its value. + McpToolMessages: + description: >- + Per-tool message overrides for a tool discovered through an MCP server. + McpToolMetadata: + description: >- + Protocol metadata used to communicate with an MCP server. + OpenAIFunction: + description: >- + Function definition exposed to a language model, including its name, + purpose, parameter schema, and strict-schema behavior. + OpenAIFunctionParameters: + description: >- + JSON object schema defining the properties accepted by a function and + which properties are required. + ToolParameter: + description: >- + Static key-value parameter added to a tool request, with Liquid template + support for string values. + ToolRejectionPlan: + description: >- + Conditions evaluated to determine whether a requested tool call should + be rejected. + TransferFallbackPlan: + description: >- + Controls the message and end-call behavior used when a call transfer + fails. + TransferPlan: + description: >- + Controls how a call transfer is executed, including blind and warm + transfer modes, dialing and SIP behavior, hold audio, context, summary, + and failure handling. WorkflowOpenAIModel: title: WorkflowOpenAIModel + description: >- + Workflow model configuration for OpenAI, including model selection, + temperature, and maximum output tokens. WorkflowAnthropicModel: title: WorkflowAnthropicModel + description: >- + Workflow model configuration for Anthropic, including model selection, + thinking, temperature, and maximum output tokens. + WorkflowAnthropicBedrockModel: + description: >- + Workflow model configuration for Anthropic through Amazon Bedrock, + including model selection, thinking, temperature, and maximum output + tokens. + WorkflowGoogleModel: + description: >- + Workflow model configuration for Google, including model selection, + temperature, and maximum output tokens. + WorkflowCustomModel: + description: >- + Workflow model configuration for a custom language model endpoint, + including URL, headers, metadata delivery, timeout, model, temperature, + and maximum output tokens. + WorkflowOverrides: + description: >- + Per-call overrides for values used in workflow template variables. + CreateWorkflowDTO: + description: >- + Configuration for creating a graph-based workflow, including + conversation and tool nodes, directed edges, global prompts, shared + providers, hooks, credentials, and call behavior. + properties: + nodes: + description: >- + Nodes that make up the workflow graph. Conversation nodes interact + with the customer, while tool nodes invoke configured tools. + name: + description: Name used to identify the workflow. + edges: + description: Directed connections that determine transitions between nodes. + globalPrompt: + description: Prompt applied across the workflow's conversation nodes. + GlobalNodePlan: + description: >- + Controls whether a conversation node can be entered globally and the + condition evaluated before that node runs. + Edge: + description: >- + A directed connection between two workflow nodes, with an optional + AI-evaluated transition condition. + properties: + condition: + description: Condition that must evaluate to true to follow this edge. + from: + description: Name of the source workflow node. + to: + description: Name of the destination workflow node. + Condition: + description: >- + Compares a named parameter with a value using the selected comparison + operator. + RegexCondition: + description: >- + Evaluates whether targeted conversation-message content matches a + regular expression. + LiquidCondition: + description: >- + Evaluates a Liquid template that must return `true` or `false`. + GroupCondition: + description: >- + Combines nested regular-expression, Liquid, or grouped conditions with + an `AND` or `OR` operator. + MessageTarget: + description: >- + Selects a conversation message by participant role and position for + condition evaluation. + ContextEngineeringPlanAll: + description: >- + Includes all available messages when constructing context for a handoff. + properties: + type: + description: Selects inclusion of all available messages. + ContextEngineeringPlanLastNMessages: + description: >- + Includes a configured number of the most recent messages when + constructing context for a handoff. + properties: + type: + description: Selects inclusion of the most recent messages. + ContextEngineeringPlanNone: + description: >- + Excludes prior conversation messages when constructing context for a + handoff. + properties: + type: + description: Selects exclusion of prior conversation messages. + ContextEngineeringPlanUserAndAssistantMessages: + description: >- + Includes only user and assistant messages when constructing context for + a handoff. + properties: + type: + description: Selects inclusion of user and assistant messages only. + HandoffDestinationAssistant: + description: >- + Routes a handoff to a saved or transient assistant, with optional + context engineering, variable extraction, and assistant overrides. + properties: + type: + description: Selects an assistant as the handoff destination. + HandoffDestinationDynamic: + description: >- + Uses a webhook response to select the handoff destination at runtime. + properties: + type: + description: Selects a dynamically resolved handoff destination. + HandoffDestinationSquad: + description: >- + Routes a handoff to a saved or transient squad, with optional entry + assistant, context engineering, variable extraction, and overrides. + properties: + type: + description: Selects a squad as the handoff destination. + CallHookModelResponseTimeout: + description: >- + Runs configured actions when the language model does not respond before + its timeout. + VariableExtractionPlan: + description: >- + Defines structured variables to extract and optional aliases made + available during and after a call. + VariableExtractionAlias: + description: >- + Defines an additional Liquid-based variable from values extracted + during a call. + JsonSchema: + description: >- + JSON Schema definition used to describe structured data for extraction, + validation, or model output. + AnalyticsOperation: + description: >- + An aggregation or history operation applied to an analytics column, with + an optional response alias. + AnalyticsQuery: + description: >- + A named analytics query against call or subscription data, including + grouping, time range, and aggregation operations. + BarInsightMetadata: + description: >- + Display settings for a bar insight, including chart name, axis labels, + and optional y-axis bounds. + properties: + xAxisLabel: + description: Label displayed on the chart's x-axis. + yAxisLabel: + description: Label displayed on the chart's y-axis. + yAxisMin: + description: Minimum value displayed on the chart's y-axis. + yAxisMax: + description: Maximum value displayed on the chart's y-axis. + name: + description: Display name for the insight chart. + LineInsightMetadata: + description: >- + Display settings for a line insight, including chart name, axis labels, + and optional y-axis bounds. + properties: + xAxisLabel: + description: Label displayed on the chart's x-axis. + yAxisLabel: + description: Label displayed on the chart's y-axis. + yAxisMin: + description: Minimum value displayed on the chart's y-axis. + yAxisMax: + description: Maximum value displayed on the chart's y-axis. + name: + description: Display name for the insight chart. + EventsTableBooleanCondition: + description: >- + Filters event data by comparing a boolean field with an expected value. + EventsTableNumberCondition: + description: >- + Filters event data by comparing a numeric field with a value. + EventsTableStringCondition: + description: >- + Filters event data by comparing or searching a string field. + FilterDateTypeColumnOnCallTable: + description: >- + Filters call records by comparing a start or end timestamp with a date. + FilterNumberArrayTypeColumnOnCallTable: + description: >- + Filters numeric call fields using a list of values or an emptiness test. + FilterNumberTypeColumnOnCallTable: + description: >- + Filters call records by comparing a numeric field with a value. + FilterStringArrayTypeColumnOnCallTable: + description: >- + Filters string-valued call fields using a list of values or an emptiness + test. + FilterStringTypeColumnOnCallTable: + description: >- + Filters call records by comparing or searching a string-valued field. + FilterStructuredOutputColumnOnCallTable: + description: >- + Filters a structured-output value stored on a call using comparison, + membership, containment, or emptiness operators. + Insight: + description: >- + A saved insight returned by the API, including its visualization type, + identity, organization, and lifecycle timestamps. + InsightFormula: + description: >- + A formula used to calculate an insight from its query results, with an + optional display name. + InsightRunFormatPlan: + description: >- + Selects whether an insight run returns raw data or Recharts-formatted + data. + InsightTimeRange: + description: >- + Start, end, and timezone used to limit an insight query by time. + InsightTimeRangeWithStep: + description: >- + Start, end, timezone, and aggregation step used for a time-series insight + query. + JSONQueryOnCallTableWithNumberTypeColumn: + description: >- + VapiQL JSON query that aggregates a numeric call-table column with + optional call filters. + JSONQueryOnCallTableWithStringTypeColumn: + description: >- + VapiQL JSON query that counts values from a string-valued call-table + column with optional call filters. + JSONQueryOnCallTableWithStructuredOutputColumn: + description: >- + VapiQL JSON query that aggregates or counts a structured-output value + stored on call records. + JSONQueryOnEventsTable: + description: >- + VapiQL JSON query that counts or calculates the percentage of matching + events using optional typed event-data filters. + TimeRange: + description: >- + Start, end, timezone, and time step used for analytics aggregation. + VariableValueGroupBy: + description: >- + Groups analytics results by a selected assistant variable-value key. AssemblyAITranscriber: title: AssemblyAITranscriber + description: >- + Configuration for transcribing speech during assistant conversations + with AssemblyAI, including language, streaming model, endpointing, + vocabulary, and fallback settings. AzureSpeechTranscriber: title: AzureSpeechTranscriber + description: >- + Configuration for transcribing speech during assistant conversations + with Azure Speech, including language, segmentation, and fallback + settings. CustomTranscriber: title: CustomTranscriber + description: >- + Configuration for sending conversation audio to a custom WebSocket + transcription server. ElevenLabsTranscriber: title: ElevenLabsTranscriber + description: >- + Configuration for transcribing speech during assistant conversations + with ElevenLabs, including model, language, speech thresholds, and + fallback settings. GladiaTranscriber: title: GladiaTranscriber + description: >- + Configuration for transcribing speech during assistant conversations + with Gladia, including language behavior, audio processing, endpointing, + vocabulary, region, and fallback settings. GoogleTranscriber: title: GoogleTranscriber + description: >- + Configuration for transcribing speech during assistant conversations + with Google, including model, language, and fallback settings. SpeechmaticsTranscriber: title: SpeechmaticsTranscriber + description: >- + Configuration for transcribing speech during assistant conversations + with Speechmatics, including language, region, diarization, vocabulary, + endpointing, formatting, and fallback settings. + properties: + language: + description: >- + Language used for transcription. Set to `auto` to detect the + language automatically. + customVocabulary: + description: >- + Words and phrases that Speechmatics should recognize more + accurately, with optional phonetic alternatives. + SpeechmaticsCustomVocabularyItem: + description: >- + A word or phrase to prioritize during Speechmatics transcription, with + optional phonetic alternatives. TalkscriberTranscriber: title: TalkscriberTranscriber + description: >- + Configuration for transcribing speech during assistant conversations + with Talkscriber, including model, language, and fallback settings. OpenAITranscriber: title: OpenAITranscriber + description: >- + Configuration for transcribing speech during assistant conversations + with OpenAI, including model, language, and fallback settings. + CartesiaTranscriber: + description: >- + Configuration for transcribing speech during assistant conversations + with Cartesia, including model, language, and fallback settings. + properties: + provider: + description: Selects Cartesia for speech-to-text transcription. + model: + description: The Cartesia speech-to-text model used for transcription. + language: + description: The language code used for transcription. + SonioxTranscriber: + description: >- + Configuration for transcribing speech during assistant conversations + with Soniox, including model, language detection, endpointing, + vocabulary, and fallback settings. + properties: + provider: + description: Selects Soniox for speech-to-text transcription. CartesiaVoice: title: CartesiaVoice + description: >- + Configuration for synthesizing assistant speech with Cartesia, including + voice and model selection, language, generation controls, pronunciation + dictionaries, chunking, caching, and fallback settings. CustomVoice: title: CustomVoice + description: >- + Configuration for synthesizing assistant speech through a custom server, + including voice selection, server connection, chunking, caching, and + fallback settings. HumeVoice: title: HumeVoice + description: >- + Configuration for synthesizing assistant speech with Hume, including + model and voice selection, custom voice metadata, chunking, caching, and + fallback settings. TavusVoice: title: TavusVoice + description: >- + Configuration for using Tavus as the assistant's voice provider, + including persona, callback, context, greeting, conversation properties, + chunking, caching, and fallback settings. VapiVoice: title: VapiVoice + description: >- + Configuration for synthesizing assistant speech with Vapi, including + voice selection, speed, pronunciation dictionary, chunking, caching, and + fallback settings. + WellSaidVoice: + description: >- + Configuration for synthesizing assistant speech with WellSaid, including + voice and model selection, Speech Synthesis Markup Language support, + voice libraries, chunking, caching, and fallback settings. + SesameVoice: + description: >- + Configuration for synthesizing assistant speech with Sesame, including + voice and model selection, chunking, caching, and fallback settings. + InworldVoice: + description: >- + Configuration for synthesizing assistant speech with Inworld, including + voice and model selection, language, temperature, speaking rate, + chunking, caching, and fallback settings. + MinimaxVoice: + description: >- + Configuration for synthesizing assistant speech with MiniMax, including + voice and model selection, emotion, pitch, speed, volume, region, + language, text normalization, chunking, caching, and fallback settings. AIEdgeCondition: title: AIEdgeCondition + description: >- + An AI-evaluated boolean condition that determines whether a workflow + follows an edge. + properties: + type: + description: Selects an AI-evaluated workflow edge condition. LogicEdgeCondition: title: LogicEdgeCondition FailedEdgeCondition: title: FailedEdgeCondition ConversationNode: title: ConversationNode + description: >- + A workflow node where the assistant conducts a conversation using + optional node-specific providers, tools, prompt, and variable extraction. + properties: + prompt: + description: Prompt that guides the assistant while this node is active. + name: + description: Unique name used to identify this workflow node. ToolNode: title: ToolNode + description: >- + A workflow node that invokes an inline tool or an existing saved tool. + properties: + name: + description: Unique name used to identify this workflow node. ExactReplacement: title: ExactReplacement + description: >- + Replaces an exact word or phrase before text is sent to a voice + provider. RegexReplacement: title: RegexReplacement + description: >- + Replaces text matching a regular expression before it is sent to a + voice provider. FallbackCartesiaVoice: title: FallbackCartesiaVoice + description: >- + Fallback configuration for synthesizing assistant speech with Cartesia, + including voice and model selection, language, generation controls, + pronunciation dictionaries, chunking, and caching. FallbackHumeVoice: title: FallbackHumeVoice + description: >- + Fallback configuration for synthesizing assistant speech with Hume, + including model and voice selection, custom voice metadata, chunking, + and caching. FallbackCustomVoice: title: FallbackCustomVoice + description: >- + Fallback configuration for synthesizing assistant speech through a + custom server, including voice selection, server connection, chunking, + and caching. FallbackVapiVoice: title: FallbackVapiVoice + description: >- + Fallback configuration for synthesizing assistant speech with Vapi, + including voice selection, speed, pronunciation dictionary, chunking, + and caching. FallbackTavusVoice: title: FallbackTavusVoice + description: >- + Fallback configuration for using Tavus as the assistant's voice + provider, including persona, callback, context, greeting, conversation + properties, chunking, and caching. + FallbackCartesiaTranscriber: + description: >- + Fallback configuration for transcribing speech with Cartesia, including + model and language. + properties: + provider: + description: Selects Cartesia for speech-to-text transcription. + model: + description: The Cartesia speech-to-text model used for transcription. + language: + description: The language code used for transcription. + FallbackSonioxTranscriber: + description: >- + Fallback configuration for transcribing speech with Soniox, including + model, language detection, endpointing, and vocabulary. + properties: + provider: + description: Selects Soniox for speech-to-text transcription. + FallbackInworldVoice: + description: >- + Fallback configuration for synthesizing assistant speech with Inworld, + including voice and model selection, language, temperature, speaking + rate, chunking, and caching. + FallbackSesameVoice: + description: >- + Fallback configuration for synthesizing assistant speech with Sesame, + including voice and model selection, chunking, and caching. + FallbackWellSaidVoice: + description: >- + Fallback configuration for synthesizing assistant speech with WellSaid, + including voice and model selection, Speech Synthesis Markup Language + support, voice libraries, chunking, and caching. + FallbackPlan: + description: >- + Lists backup voice configurations that can be used if the primary voice + provider fails. + FallbackTranscriberPlan: + description: >- + Lists backup transcriber configurations that can be used if the primary + transcriber fails. + properties: + transcribers: + description: >- + Transcriber configurations available when the primary transcriber + fails. TransferAssistantHookAction: title: TransferAssistantHookAction FunctionCallAssistantHookAction: @@ -1127,148 +2633,885 @@ components: title: SayAssistantHookAction VapiSmartEndpointingPlan: title: VapiSmartEndpointingPlan + description: >- + Selects Vapi smart endpointing to determine when customer speech is + complete. LivekitSmartEndpointingPlan: title: LivekitSmartEndpointingPlan + description: >- + Configuration for using LiveKit smart endpointing, including provider + selection and wait-function behavior. + CustomEndpointingModelSmartEndpointingPlan: + description: >- + Configuration for using a custom endpointing model, including its + provider identifier and server connection. AssistantCustomEndpointingRule: title: AssistantCustomEndpointingRule + description: >- + A custom endpointing rule that matches the assistant's last message and + applies a configured timeout. CustomerCustomEndpointingRule: title: CustomerCustomEndpointingRule + description: >- + A custom endpointing rule that matches the customer's current speech + and applies a configured timeout. BothCustomEndpointingRule: title: BothCustomEndpointingRule + description: >- + A custom endpointing rule that matches both the assistant's last + message and the customer's current speech before applying a configured + timeout. + properties: + customerRegex: + description: >- + The regular expression pattern matched against the customer's + speech. + StartSpeakingPlan: + description: >- + Controls when the assistant begins speaking after customer speech, + including the minimum wait, endpointing strategy, and custom endpointing + rules. + StopSpeakingPlan: + description: >- + Controls when the assistant stops speaking after a customer + interruption, including word and voice thresholds, restart delay, and + phrase exceptions. + BackgroundSpeechDenoisingPlan: + description: >- + Controls smart and Fourier denoising applied to customer audio before + transcription. + TranscriptionEndpointingPlan: + description: >- + Controls endpointing delays based on whether customer speech ends with + punctuation, without punctuation, or with a number. + SmartDenoisingPlan: + description: >- + Controls whether Krisp smart denoising filters background speech and + noise. + FourierDenoisingPlan: + description: >- + Configuration for Fourier denoising, including media detection, + thresholds, baseline calculation, and analysis window. + VoicemailDetectionBackoffPlan: + description: >- + Controls voicemail-detection retry timing, including when retries start, + retry frequency, and maximum attempts. + AnalysisPlan: + description: >- + Configuration for post-call analysis of summaries, structured-data + extraction, success evaluation, and outcomes. + SummaryPlan: + description: >- + Controls generation of a post-call summary, including prompt messages, + enablement, and request timeout. + StructuredDataPlan: + description: >- + Controls extraction of post-call structured data, including prompt + messages, JSON schema, enablement, and request timeout. + StructuredDataMultiPlan: + description: >- + Associates a catalog key with a structured data extraction plan. + SuccessEvaluationPlan: + description: >- + Controls post-call success evaluation, including the rubric, prompt + messages, enablement, and request timeout. + ArtifactPlan: + description: >- + Controls artifacts generated and stored for calls, including recordings, + packet captures, logs, transcripts, structured outputs, scorecards, and + custom storage paths. + TranscriptPlan: + description: >- + Controls whether the call transcript is stored and the speaker names + used in the transcript. + MonitorPlan: + description: >- + Controls real-time listening and control for assistant calls, + authentication requirements for monitor URLs, and attached monitors. + properties: + monitorIds: + description: >- + IDs of the monitors attached to the assistant. Use this field for + transient assistants or to update the monitors attached to an + existing assistant. Defaults to an empty array. + CompliancePlan: + description: >- + Controls HIPAA and PCI requirements, transcript security filtering, and + recording-consent handling for assistant calls. + properties: + recordingConsentPlan: + description: >- + Controls how recording consent is requested before the assistant + joins the call. + RecordingConsentPlanStayOnLine: + description: >- + Configuration for requesting recording consent by treating continued + presence on the call as consent, including the announcement voice and + wait time. + properties: + type: + description: >- + Identifies a stay-on-line recording-consent plan, which treats + remaining on the call as consent. + RecordingConsentPlanVerbal: + description: >- + Configuration for requesting explicit verbal recording consent, + including the announcement voice and action to take when the customer + declines. + properties: + type: + description: >- + Identifies a verbal recording-consent plan that requires the + customer to explicitly consent or decline. + SecurityFilterBase: + description: >- + Base configuration for a security filter applied to transcripts before + model processing. + SecurityFilterPlan: + description: >- + Controls filtering of transcripts for security threats before content + is sent to the assistant's language model, including filter selection, + handling mode, and replacement text. + SQLInjectionSecurityFilter: + description: Filters potential SQL injection patterns from transcripts. + XSSSecurityFilter: + description: >- + Filters potential cross-site scripting (XSS) patterns from transcripts. + SSRFSecurityFilter: + description: >- + Filters potential server-side request forgery (SSRF) patterns from + transcripts. + RCESecurityFilter: + description: >- + Filters potential remote code execution (RCE) patterns from transcripts. + PromptInjectionSecurityFilter: + description: Filters potential prompt-injection patterns from transcripts. + RegexSecurityFilter: + description: >- + Filters transcript content that matches a custom regular expression. + BackoffPlan: + description: >- + Controls retry behavior for failed server requests, including strategy, + maximum retries, base delay, and status codes excluded from retries. + properties: + baseDelaySeconds: + description: >- + Base delay in seconds. For fixed backoff, this is the delay between + retries. For exponential backoff, this is the initial delay. + excludedStatusCodes: + description: >- + HTTP status codes that should not trigger a retry. By default, any + non-2xx status code not listed here can be retried. + Server: + description: >- + Configuration for requests Vapi sends to a customer server, including + URL, authentication, headers, timeout, encryption, static IP addresses, + and retry behavior. + CallHookCallEnding: + description: >- + Runs configured actions when a call is ending, optionally only when its + filters match. + CallHookAssistantSpeechInterrupted: + description: >- + Runs configured actions when the customer's speech interrupts the + assistant. + CallHookCustomerSpeechInterrupted: + description: >- + Runs configured actions when the assistant interrupts the customer's + speech. + CallHookCustomerSpeechTimeout: + description: >- + Runs configured actions when the customer does not speak before the + configured timeout, with support for trigger limits and named instances. + properties: + options: + description: >- + Controls the speech timeout, maximum trigger count, and counter + reset behavior for this hook. + ToolCallHookAction: + description: >- + A hook action that invokes an inline tool or an existing tool when the + hook triggers. + MessageAddHookAction: + description: >- + A hook action that adds an OpenAI-format message to the conversation and + can trigger an assistant response. + CallHookFilter: + description: >- + Matches a call field against one or more allowed values to determine + whether a hook runs. + SayHookAction: + description: >- + A hook action that makes the assistant speak exact text or generate a + response from a prompt. + CustomerSpeechTimeoutOptions: + description: >- + Controls how long a hook waits for customer speech, how often it can + trigger, and when its trigger counter resets. + properties: + triggerResetMode: + description: >- + Controls whether the hook's trigger counter resets after the + customer speaks. Defaults to `never`. AnthropicModel: title: AnthropicModel + description: >- + Configuration for generating assistant responses with Anthropic, + including model, prompts, tools, knowledge-base access, reasoning, and + generation settings. + AnthropicBedrockModel: + description: >- + Configuration for generating assistant responses with Anthropic models + through Amazon Bedrock, including model, prompts, tools, knowledge-base + access, reasoning, and generation settings. AnyscaleModel: title: AnyscaleModel + description: >- + Configuration for generating assistant responses with Anyscale, + including model, prompts, tools, knowledge-base access, and generation + settings. + properties: + provider: + description: Routes assistant response generation through Anyscale. CerebrasModel: title: CerebrasModel + description: >- + Configuration for generating assistant responses with Cerebras, + including model, prompts, tools, knowledge-base access, and generation + settings. + properties: + provider: + description: Routes assistant response generation through Cerebras. CustomLLMModel: title: CustomLLMModel + description: >- + Configuration for generating assistant responses through a custom + language model endpoint, including server URL, headers, metadata, + prompts, tools, and generation settings. DeepInfraModel: title: DeepInfraModel + description: >- + Configuration for generating assistant responses with DeepInfra, + including model, prompts, tools, knowledge-base access, and generation + settings. + properties: + provider: + description: Routes assistant response generation through DeepInfra. DeepSeekModel: title: DeepSeekModel + description: >- + Configuration for generating assistant responses with DeepSeek, + including model, prompts, tools, knowledge-base access, and generation + settings. + properties: + provider: + description: Routes assistant response generation through DeepSeek. GoogleModel: title: GoogleModel + description: >- + Configuration for generating assistant responses with Google, including + model, prompts, tools, knowledge-base access, realtime settings, and + generation settings. + properties: + provider: + description: Routes assistant response generation through Google. GroqModel: title: GroqModel + description: >- + Configuration for generating assistant responses with Groq, including + model, prompts, tools, knowledge-base access, and generation settings. + properties: + provider: + description: Routes assistant response generation through Groq. InflectionAIModel: title: InflectionAIModel + description: >- + Configuration for generating assistant responses with Inflection AI, + including model, prompts, tools, knowledge-base access, and generation + settings. + properties: + provider: + description: Routes assistant response generation through Inflection AI. + MinimaxLLMModel: + description: >- + Configuration for generating assistant responses with MiniMax, including + model, prompts, tools, knowledge-base access, and generation settings. + properties: + provider: + description: Routes assistant response generation through MiniMax. OpenAIModel: title: OpenAIModel + description: >- + Configuration for generating assistant responses with OpenAI, including + model selection, fallback models, prompts, tools, prompt caching, and + generation settings. OpenRouterModel: title: OpenRouterModel + description: >- + Configuration for generating assistant responses through OpenRouter, + including routed model selection, prompts, tools, knowledge-base access, + and generation settings. + properties: + provider: + description: Routes assistant response generation through OpenRouter. PerplexityAIModel: title: PerplexityAIModel + description: >- + Configuration for generating assistant responses with Perplexity AI, + including model, prompts, tools, knowledge-base access, and generation + settings. + properties: + provider: + description: Routes assistant response generation through Perplexity AI. TogetherAIModel: title: TogetherAIModel + description: >- + Configuration for generating assistant responses with Together AI, + including model, prompts, tools, knowledge-base access, and generation + settings. + properties: + provider: + description: Routes assistant response generation through Together AI. XaiModel: title: XaiModel + description: >- + Configuration for generating assistant responses with xAI, including + model, prompts, tools, knowledge-base access, and generation settings. + properties: + provider: + description: Routes assistant response generation through xAI. GoogleVoicemailDetectionPlan: title: GoogleVoicemailDetectionPlan + description: >- + Configuration for detecting voicemail with Google, including detection + type, maximum beep wait, and retry backoff. OpenAIVoicemailDetectionPlan: title: OpenAIVoicemailDetectionPlan + description: >- + Configuration for detecting voicemail with OpenAI, including detection + type, maximum beep wait, and retry backoff. TwilioVoicemailDetectionPlan: title: TwilioVoicemailDetectionPlan + description: >- + Configuration for Twilio answering-machine detection, including + recognized outcomes, enablement, timeout, speech thresholds, and silence + timeout. VapiVoicemailDetectionPlan: title: VapiVoicemailDetectionPlan + description: >- + Configuration for detecting voicemail with Vapi, including detection + type, maximum beep wait, and retry backoff. TransportConfigurationTwilio: title: TransportConfigurationTwilio + description: >- + Configuration passed to Twilio for assistant calls, including ring + timeout and Twilio recording behavior. + properties: + provider: + description: Selects Twilio as the call transport provider. LangfuseObservabilityPlan: title: LangfuseObservabilityPlan + description: >- + Configuration for sending assistant call traces to Langfuse, including + prompt version linkage, trace naming, tags, and metadata. + properties: + provider: + description: Routes assistant call observability data to Langfuse. CreateAnthropicCredentialDTO: title: CreateAnthropicCredentialDTO + description: >- + Credentials for authenticating assistant model requests with Anthropic. + properties: + provider: + description: Selects Anthropic as the credential provider. + CreateAnthropicBedrockCredentialDTO: + description: >- + Credentials for authenticating Anthropic model requests through Amazon + Bedrock, including AWS region and authentication method. + properties: + provider: + description: Selects Anthropic through Amazon Bedrock as the credential provider. CreateAnyscaleCredentialDTO: title: CreateAnyscaleCredentialDTO + description: >- + Credentials for authenticating assistant model requests with Anyscale. + properties: + provider: + description: Selects Anyscale as the credential provider. CreateAssemblyAICredentialDTO: title: CreateAssemblyAICredentialDTO + description: >- + Credentials for authenticating transcription requests with AssemblyAI. + properties: + provider: + description: Selects AssemblyAI as the credential provider. CreateAzureCredentialDTO: title: CreateAzureCredentialDTO + description: >- + Credentials for Azure Speech or Blob Storage, including service, region, + and optional storage bucket settings. + properties: + provider: + description: Selects Azure as the credential provider. CreateAzureOpenAICredentialDTO: title: CreateAzureOpenAICredentialDTO + description: >- + Credentials for authenticating assistant model requests with Azure + OpenAI, including region, endpoint, and available models. + properties: + provider: + description: Selects Azure OpenAI as the credential provider. + region: + description: Azure region that hosts the OpenAI resource. + models: + description: Azure OpenAI models available through this credential. + openAIEndpoint: + description: Endpoint URL for the Azure OpenAI resource. CreateByoSipTrunkCredentialDTO: title: CreateByoSipTrunkCredentialDTO + description: >- + Configuration for connecting Vapi to a bring-your-own SIP trunk or + carrier, including gateways, outbound authentication, number handling, + and optional session border controller routing. + properties: + provider: + description: Selects a bring-your-own SIP trunk as the credential provider. CreateCartesiaCredentialDTO: title: CreateCartesiaCredentialDTO + description: >- + Credentials for authenticating speech recognition and voice synthesis + requests with Cartesia. + properties: + provider: + description: Selects Cartesia as the credential provider. CreateCerebrasCredentialDTO: title: CreateCerebrasCredentialDTO + description: >- + Credentials for authenticating assistant model requests with Cerebras. + properties: + provider: + description: Selects Cerebras as the credential provider. CreateCloudflareCredentialDTO: title: CreateCloudflareCredentialDTO + description: >- + Credentials for storing call artifacts in Cloudflare R2, including + account details, bucket configuration, and upload fallback order. + properties: + provider: + description: Selects Cloudflare R2 as the credential provider. CreateCustomLLMCredentialDTO: title: CreateCustomLLMCredentialDTO + description: >- + Credentials for authenticating requests to a custom language model with + an API key or OAuth 2.0 authentication plan. + properties: + provider: + description: Selects a custom language model as the credential provider. CreateDeepgramCredentialDTO: title: CreateDeepgramCredentialDTO + description: >- + Credentials for authenticating speech recognition and voice synthesis + requests with Deepgram, with an optional API URL for an on-premises + instance. + properties: + provider: + description: Selects Deepgram as the credential provider. CreateDeepInfraCredentialDTO: title: CreateDeepInfraCredentialDTO + description: >- + Credentials for authenticating assistant model requests with DeepInfra. + properties: + provider: + description: Selects DeepInfra as the credential provider. CreateDeepSeekCredentialDTO: title: CreateDeepSeekCredentialDTO + description: >- + Credentials for authenticating assistant model requests with DeepSeek. + properties: + provider: + description: Selects DeepSeek as the credential provider. CreateGcpCredentialDTO: title: CreateGcpCredentialDTO + description: >- + Service-account credentials for Google Cloud resources and optional + call-artifact storage, including region, bucket configuration, and + upload fallback order. + properties: + provider: + description: Selects Google Cloud as the credential provider. + bucketPlan: + description: >- + Bucket configuration used to store call artifacts in Google Cloud + Storage. CreateGladiaCredentialDTO: title: CreateGladiaCredentialDTO + description: >- + Credentials for authenticating transcription requests with Gladia. + properties: + provider: + description: Selects Gladia as the credential provider. CreateGoHighLevelCredentialDTO: title: CreateGoHighLevelCredentialDTO + description: >- + Credentials for authenticating Vapi integrations with GoHighLevel. + properties: + provider: + description: Selects GoHighLevel as the credential provider. CreateGoogleCredentialDTO: title: CreateGoogleCredentialDTO + description: >- + Credentials for authenticating assistant model requests with Google AI. + properties: + provider: + description: Selects Google AI as the credential provider. CreateGroqCredentialDTO: title: CreateGroqCredentialDTO + description: >- + Credentials for authenticating assistant model requests with Groq. + properties: + provider: + description: Selects Groq as the credential provider. CreateHumeCredentialDTO: title: CreateHumeCredentialDTO + description: >- + Credentials for authenticating voice synthesis requests with Hume. + properties: + provider: + description: Selects Hume as the credential provider. CreateInflectionAICredentialDTO: title: CreateInflectionAICredentialDTO + description: >- + Credentials for authenticating assistant model requests with Inflection + AI. + properties: + provider: + description: Selects Inflection AI as the credential provider. CreateLangfuseCredentialDTO: title: CreateLangfuseCredentialDTO + description: >- + Credentials for sending assistant call traces to a Langfuse project, + including its public key, secret key, and host URL. + properties: + provider: + description: Selects Langfuse as the credential provider. CreateLmntCredentialDTO: title: CreateLmntCredentialDTO + description: >- + Credentials for authenticating voice synthesis requests with LMNT. + properties: + provider: + description: Selects LMNT as the credential provider. CreateMakeCredentialDTO: title: CreateMakeCredentialDTO + description: >- + Credentials for authenticating Vapi integrations with Make, including + team, region, and API key. + properties: + provider: + description: Selects Make as the credential provider. CreateMistralCredentialDTO: title: CreateMistralCredentialDTO + description: >- + Credentials for authenticating assistant model requests with Mistral. + properties: + provider: + description: Selects Mistral as the credential provider. + CreateMinimaxCredentialDTO: + description: >- + Credentials for authenticating assistant model and voice synthesis + requests with MiniMax, including the MiniMax group identifier. + properties: + provider: + description: Selects MiniMax as the credential provider. CreateNeuphonicCredentialDTO: title: CreateNeuphonicCredentialDTO + description: >- + Credentials for authenticating voice synthesis requests with Neuphonic. + properties: + provider: + description: Selects Neuphonic as the credential provider. CreateOpenAICredentialDTO: title: CreateOpenAICredentialDTO + description: >- + Credentials for authenticating assistant model, transcription, and + voice synthesis requests with OpenAI. + properties: + provider: + description: Selects OpenAI as the credential provider. CreateOpenRouterCredentialDTO: title: CreateOpenRouterCredentialDTO + description: >- + Credentials for authenticating assistant model requests with OpenRouter. + properties: + provider: + description: Selects OpenRouter as the credential provider. CreatePerplexityAICredentialDTO: title: CreatePerplexityAICredentialDTO + description: >- + Credentials for authenticating assistant model requests with Perplexity + AI. + properties: + provider: + description: Selects Perplexity AI as the credential provider. CreatePlayHTCredentialDTO: title: CreatePlayHTCredentialDTO + description: >- + Credentials for authenticating voice synthesis requests with PlayHT, + including the PlayHT user identifier. + properties: + provider: + description: Selects PlayHT as the credential provider. + userId: + description: PlayHT user identifier associated with the API key. CreateRimeAICredentialDTO: title: CreateRimeAICredentialDTO + description: >- + Credentials for authenticating voice synthesis requests with Rime AI. + properties: + provider: + description: Selects Rime AI as the credential provider. CreateRunpodCredentialDTO: title: CreateRunpodCredentialDTO + description: >- + Credentials for authenticating assistant model requests through Runpod. + properties: + provider: + description: Selects Runpod as the credential provider. CreateS3CredentialDTO: title: CreateS3CredentialDTO + description: >- + Credentials for storing call artifacts in Amazon S3, including access + keys, region, bucket, path prefix, and upload fallback order. + properties: + provider: + description: Selects Amazon S3 as the credential provider. CreateSmallestAICredentialDTO: title: CreateSmallestAICredentialDTO + description: >- + Credentials for authenticating voice synthesis requests with Smallest + AI. + properties: + provider: + description: Selects Smallest AI as the credential provider. CreateSpeechmaticsCredentialDTO: title: CreateSpeechmaticsCredentialDTO + description: >- + Credentials for authenticating transcription requests with Speechmatics. + properties: + provider: + description: Selects Speechmatics as the credential provider. + CreateSonioxCredentialDTO: + description: >- + Credentials for authenticating transcription requests with Soniox. + properties: + provider: + description: Selects Soniox as the credential provider. CreateSupabaseCredentialDTO: title: CreateSupabaseCredentialDTO + description: >- + Credentials for storing call artifacts in Supabase's S3-compatible + storage, including bucket configuration and upload fallback order. + properties: + provider: + description: Selects Supabase Storage as the credential provider. + bucketPlan: + description: >- + Supabase S3-compatible bucket configuration used to store call + artifacts. CreateTavusCredentialDTO: title: CreateTavusCredentialDTO + description: >- + Credentials for authenticating voice synthesis requests with Tavus. + properties: + provider: + description: Selects Tavus as the credential provider. CreateTogetherAICredentialDTO: title: CreateTogetherAICredentialDTO + description: >- + Credentials for authenticating assistant model requests with Together + AI. + properties: + provider: + description: Selects Together AI as the credential provider. CreateTrieveCredentialDTO: title: CreateTrieveCredentialDTO + description: >- + Credentials for authenticating knowledge-base requests with Trieve. + properties: + provider: + description: Selects Trieve as the credential provider. CreateTwilioCredentialDTO: title: CreateTwilioCredentialDTO + description: >- + Credentials for authenticating telephony requests with Twilio using an + account SID and either an auth token or API key credentials. + properties: + provider: + description: Selects Twilio as the credential provider. + accountSid: + description: Twilio Account SID associated with the credential. CreateVonageCredentialDTO: title: CreateVonageCredentialDTO + description: >- + Credentials for authenticating telephony requests with Vonage. + properties: + provider: + description: Selects Vonage as the credential provider. + apiKey: + description: Vonage API key associated with the credential. CreateWebhookCredentialDTO: title: CreateWebhookCredentialDTO + properties: + provider: + description: Selects webhook authentication as the credential provider. CreateXAiCredentialDTO: title: CreateXAiCredentialDTO + description: >- + Credentials for authenticating assistant model requests with xAI. + properties: + provider: + description: Selects xAI as the credential provider. + CreateInworldCredentialDTO: + description: >- + Credentials for authenticating voice synthesis requests with Inworld. + properties: + provider: + description: Selects Inworld as the credential provider. + CreateWellSaidCredentialDTO: + description: >- + Credentials for authenticating voice synthesis requests with WellSaid. + properties: + provider: + description: Selects WellSaid as the credential provider. CreateGoogleCalendarOAuth2ClientCredentialDTO: title: CreateGoogleCalendarOAuth2ClientCredentialDTO + description: >- + OAuth 2.0 client credential for Google Calendar integrations. + properties: + provider: + description: Selects a Google Calendar OAuth 2.0 client credential. CreateGoogleCalendarOAuth2AuthorizationCredentialDTO: title: CreateGoogleCalendarOAuth2AuthorizationCredentialDTO + description: >- + Stored OAuth 2.0 authorization for Google Calendar operations. + properties: + provider: + description: Selects a Google Calendar OAuth 2.0 authorization credential. CreateGoogleSheetsOAuth2AuthorizationCredentialDTO: title: CreateGoogleSheetsOAuth2AuthorizationCredentialDTO + description: >- + Stored OAuth 2.0 authorization for Google Sheets operations. + properties: + provider: + description: Selects a Google Sheets OAuth 2.0 authorization credential. CreateSlackOAuth2AuthorizationCredentialDTO: title: CreateSlackOAuth2AuthorizationCredentialDTO + description: >- + Stored OAuth 2.0 authorization for Slack operations. + properties: + provider: + description: Selects a Slack OAuth 2.0 authorization credential. CreateGoHighLevelMCPCredentialDTO: title: CreateGoHighLevelMCPCredentialDTO + description: >- + OAuth 2.0 session credentials for authenticating GoHighLevel MCP + requests. + properties: + provider: + description: Selects GoHighLevel OAuth 2.0 authorization for MCP. + CreateCustomCredentialDTO: + description: >- + Reusable custom credentials for authenticating outbound requests, with + optional public-key encryption for sensitive request data. + properties: + provider: + description: Selects a custom credential configuration. + CreateEmailCredentialDTO: + description: >- + Destination configuration for sending Vapi alerts to an email address. + properties: + provider: + description: Selects email as the alert destination provider. + CreateSlackWebhookCredentialDTO: + description: >- + Credentials for sending Vapi alerts through a Slack incoming webhook. + properties: + provider: + description: Selects a Slack incoming webhook as the credential provider. + SipTrunkGateway: + description: >- + Network and routing settings for a SIP trunk gateway, including address, + port, netmask, inbound and outbound use, signaling protocol, and OPTIONS + health checks. + SipTrunkOutboundAuthenticationPlan: + description: >- + Credentials and optional SIP REGISTER settings used to authenticate + outbound calls with a SIP trunk. + properties: + authUsername: + description: Username used to authenticate outbound SIP requests. + SipTrunkOutboundSipRegisterPlan: + description: >- + Registration settings used when the SIP trunk requires SIP REGISTER. + properties: + domain: + description: SIP registrar domain used for registration. + username: + description: Username sent with the SIP REGISTER request. + realm: + description: Authentication realm used for SIP registration. + SbcConfiguration: + description: >- + Routes bring-your-own SIP traffic through an on-premises session border + controller instead of Vapi's managed controller. + CloudflareR2BucketPlan: + description: >- + Cloudflare R2 bucket configuration for call-artifact storage, including + access keys, base URL, bucket name, and path. + GcpKey: + description: >- + Google Cloud service-account key used to authenticate access to Google + Cloud resources. + BucketPlan: + description: >- + Google Cloud Storage bucket configuration for call artifacts, including + bucket name, region, path, and optional HMAC credentials. + SupabaseBucketPlan: + description: >- + Supabase S3-compatible bucket configuration for call artifacts, + including region, endpoint, access keys, bucket name, and path. + OAuth2AuthenticationPlan: + description: >- + Client-credentials configuration for obtaining an OAuth 2.0 access token + used to authenticate outbound requests. + properties: + type: + description: Selects OAuth 2.0 authentication. + HMACAuthenticationPlan: + description: >- + Configuration for signing outbound requests with an HMAC secret, + including algorithm, headers, payload format, and signature encoding. + properties: + type: + description: Selects HMAC request authentication. + BearerAuthenticationPlan: + description: >- + Configuration for authenticating outbound requests with a bearer token, + including header name and optional `Bearer` prefix. + properties: + type: + description: Selects bearer-token authentication. + PublicKeyEncryptionPlan: + description: >- + Configuration for encrypting sensitive outbound request data with a + public key. + SpkiPemPublicKeyConfig: + description: >- + An SPKI public key in PEM format used to encrypt sensitive request data. + Oauth2AuthenticationSession: + description: >- + OAuth 2.0 session tokens and expiration used to authenticate integration + requests. AssistantHookCallEnding: title: AssistantHookCallEnding AssistantHookAssistantSpeechInterrupted: @@ -1277,42 +3520,250 @@ components: title: AssistantHookCustomerSpeechInterrupted TransferPhoneNumberHookAction: title: TransferPhoneNumberHookAction + description: >- + A phone-number hook action that transfers the call to a phone number or + SIP destination. SayPhoneNumberHookAction: title: SayPhoneNumberHookAction + description: >- + A phone-number hook action that speaks an exact message to the caller. PhoneNumberHookCallRinging: title: PhoneNumberHookCallRinging + description: >- + Runs configured transfer or message actions when an incoming call rings + and its caller-number prefix filters match. + PhoneNumberHookCallEnding: + description: >- + Runs configured transfer or message actions when a call ends with a + matching assistant-request failure reason. + PhoneNumberCallRingingHookFilter: + description: >- + Matches an incoming caller's phone number against one or more prefixes + before a ringing hook runs. + PhoneNumberCallEndingHookFilter: + description: >- + Matches the call's ended reason against configured assistant-request + failure reasons before an ending hook runs. + CreateCustomerDTO: + description: >- + Customer details used for call delivery and assistant personalization, + including phone or SIP destination, contact identifiers, extension, and + assistant overrides. + SchedulePlan: + description: >- + Time window that controls the earliest and latest time a call may begin. + DialPlanEntry: + description: >- + Associates a phone number with the customers to dial through that number + in a batch call plan. + SipAuthentication: + description: >- + Realm, username, and password used to authenticate SIP requests. + ImportTwilioPhoneNumberDTO: + description: >- + Configuration for importing a Twilio phone number into Vapi, including + Twilio credentials, routing target, fallback destination, hooks, SMS, + and server settings. + Analysis: + description: >- + Post-call analysis results, including summary, structured data, and + success evaluation outputs. + Artifact: + description: >- + Artifacts generated during a call, including messages, recordings, + transcript, logs, packet capture, workflow-node data, variables, + performance metrics, structured outputs, scorecards, and transfers. + NodeArtifact: + description: >- + Messages and variable values captured while a workflow node was active. + AssistantActivation: + description: >- + Identifies an assistant that became active during a call. + Recording: + description: >- + Call recording locations, including stereo, video, and separated mono + recording URLs. + Mono: + description: >- + Mono recording URLs for the combined call and isolated assistant and + customer audio. + RecordingConsent: + description: >- + Result of the recording-consent flow, including consent type and the + time consent was granted. + Compliance: + description: >- + Compliance information captured for a call, including recording consent. + ComplianceOverride: + description: >- + Overrides storage behavior for an output when HIPAA compliance is + enabled. + PerformanceMetrics: + description: >- + Call performance measurements, including per-turn and average provider, + endpointing, transport, and interruption metrics. + TurnLatency: + description: >- + Model, voice, transcription, endpointing, and total latency measurements + for a conversation turn. + Monitor: + description: >- + Live monitoring data for a call, including attached monitor results and + listening and control URLs. + properties: + monitors: + description: Results produced by monitors attached to the call. + MonitorResult: + description: >- + Result of evaluating an attached monitor's filter for a call. + properties: + monitorId: + description: Unique identifier of the monitor that produced this result. + filterPassed: + description: Whether the monitor's filter matched the call. + CallBatchError: + description: >- + Error returned for one customer entry in a batch call request. + properties: + customer: + description: Customer configuration associated with the failed call. + error: + description: Error message explaining why the call could not be created. + CostBreakdown: + description: >- + Aggregated call costs and usage, including transport, transcription, + model, voice, Vapi, analysis, token, and character totals. + AnalysisCostBreakdown: + description: >- + Analysis costs and token usage grouped by summary, structured data, + success evaluation, and structured-output generation. + SubscriptionLimits: + description: >- + Organization concurrency limits and remaining concurrent call capacity. TransportCost: title: TransportCost + description: >- + Telephony transport cost for a call, including provider, billable + minutes, and amount. + properties: + provider: + description: Telephony or transport provider that generated the cost. TranscriberCost: title: TranscriberCost + description: >- + Speech-to-text cost for a call, including transcriber, billable minutes, + and amount. ModelCost: title: ModelCost + description: >- + Language-model cost for a call, including model, token usage, and amount. VoiceCost: title: VoiceCost + description: >- + Voice-synthesis cost for a call, including voice, character usage, and + amount. VapiCost: title: VapiCost + description: >- + Vapi platform cost for a call, including cost subtype, billable minutes, + and amount. VoicemailDetectionCost: title: VoicemailDetectionCost + description: >- + Voicemail-detection model cost, including provider, model, multimodal + token usage, and amount. AnalysisCost: title: AnalysisCost + description: >- + Cost for an individual analysis request, including analysis type, model, + token usage, and amount. KnowledgeBaseCost: title: KnowledgeBaseCost + description: >- + Knowledge-base model cost, including model, token usage, and amount. AssistantMessage: title: AssistantMessage + description: >- + An assistant-authored message, including content, refusal text, tool + calls, participant name, and metadata. ToolMessage: title: ToolMessage + description: >- + A tool-result message associated with a specific tool call. DeveloperMessage: title: DeveloperMessage + description: >- + A developer-authored instruction message supplied to the language + model. + OpenAIMessage: + description: >- + A conversation message represented in OpenAI chat format. + properties: + content: + description: Content of the conversation message. + role: + description: Role associated with the conversation message. + ToolCall: + description: >- + A tool invocation requested by the assistant, including its identifier, + type, and function details. + ToolCallFunction: + description: >- + The function name and serialized arguments associated with a tool call. ByoPhoneNumber: title: ByoPhoneNumber + description: >- + A phone number connected to Vapi through a bring-your-own telephony + provider, including its credential, routing, hooks, server settings, + and lifecycle metadata. TwilioPhoneNumber: title: TwilioPhoneNumber + description: >- + A Twilio phone number connected to Vapi, including its Twilio account + details, SMS configuration, routing, hooks, server settings, and + lifecycle metadata. VonagePhoneNumber: title: VonagePhoneNumber + description: >- + A Vonage phone number connected to Vapi, including its credential, + routing, hooks, server settings, and lifecycle metadata. VapiPhoneNumber: title: VapiPhoneNumber + description: >- + A Vapi-managed phone number or SIP URI, including its authentication, + routing, hooks, server settings, and lifecycle metadata. TelnyxPhoneNumber: title: TelnyxPhoneNumber + description: >- + A Telnyx phone number connected to Vapi, including its credential, + routing, hooks, server settings, and lifecycle metadata. + PhoneNumberPaginatedResponse: + description: >- + A paginated collection of phone numbers and metadata describing the + result set. + PaginationMeta: + description: >- + Pagination and retention metadata returned with a paginated list of + phone numbers. + properties: + itemsPerPage: + description: The number of phone numbers returned per page. + totalItems: + description: The total number of phone numbers matching the request. + currentPage: + description: The current page number. + itemsBeyondRetention: + description: >- + Whether additional matching phone numbers exist beyond the + organization's data-retention window. + createdAtLe: + description: >- + The inclusive upper creation-time boundary applied to the result + set. + createdAtGe: + description: >- + The inclusive lower creation-time boundary applied to the result + set. TrieveKnowledgeBaseImport: title: TrieveKnowledgeBaseImport TestSuiteTestScorerAI: @@ -1343,14 +3794,29 @@ components: title: GoHighLevelContactGetToolProviderDetails CreateByoPhoneNumberDTO: title: CreateByoPhoneNumberDTO + description: >- + Configuration used to connect a bring-your-own phone number to Vapi + with a stored telephony credential and routing settings. CreateTwilioPhoneNumberDTO: title: CreateTwilioPhoneNumberDTO + description: >- + Configuration used to import a Twilio phone number into Vapi with its + account credentials and routing settings. CreateVonagePhoneNumberDTO: title: CreateVonagePhoneNumberDTO + description: >- + Configuration used to import a Vonage phone number into Vapi with a + stored credential and routing settings. CreateVapiPhoneNumberDTO: title: CreateVapiPhoneNumberDTO + description: >- + Configuration used to provision a Vapi-managed phone number or connect + a SIP URI, with optional routing and authentication settings. CreateTelnyxPhoneNumberDTO: title: CreateTelnyxPhoneNumberDTO + description: >- + Configuration used to import a Telnyx phone number into Vapi with a + stored credential and routing settings. FunctionToolWithToolCall: title: FunctionToolWithToolCall GhlToolWithToolCall: @@ -1443,8 +3909,35 @@ components: title: ClientInboundMessageTransfer Call: title: Call + description: >- + A call record returned by Vapi. It contains the configuration and + resources used for the call, its lifecycle status and timestamps, + conversation messages, artifacts, analysis, and costs. + properties: + messages: + description: >- + Messages exchanged during the call, including user, assistant, + system, tool-call, and tool-result messages. CallBatchResponse: title: CallBatchResponse + description: >- + The result of a batch call creation request, containing successfully + created calls, per-call failures, and subscription limits recorded at + the end of the batch. + CreateCallDTO: + description: >- + Configuration used to create a single call or a batch of outbound + calls. Choose a saved or transient assistant, squad, or workflow, then + provide the customer, phone-number, scheduling, and transport settings + that apply. + UpdateCallDTO: + description: >- + Fields used to update an existing call. Currently, the call name can be + changed. + DeleteCallDTO: + description: >- + Configuration for deleting stored call data, including optional call + IDs for asynchronous bulk deletion. Chat: title: Chat CreateChatStreamResponse: @@ -1461,104 +3954,278 @@ components: title: ResponseErrorEvent UpdateByoPhoneNumberDTO: title: UpdateByoPhoneNumberDTO + description: >- + Fields used to update a bring-your-own phone number, including its + credential, number, routing, hooks, and server settings. UpdateTwilioPhoneNumberDTO: title: UpdateTwilioPhoneNumberDTO + description: >- + Fields used to update a Twilio phone number, including its account + credentials, SMS configuration, routing, hooks, and server settings. UpdateVonagePhoneNumberDTO: title: UpdateVonagePhoneNumberDTO + description: >- + Fields used to update a Vonage phone number, including its credential, + number, routing, hooks, and server settings. UpdateVapiPhoneNumberDTO: title: UpdateVapiPhoneNumberDTO + description: >- + Fields used to update a Vapi-managed phone number or SIP URI, including + its authentication, routing, hooks, and server settings. UpdateTelnyxPhoneNumberDTO: title: UpdateTelnyxPhoneNumberDTO + description: >- + Fields used to update a Telnyx phone number, including its credential, + number, routing, hooks, and server settings. CreateGhlToolDTO: title: CreateGhlToolDTO CreateMakeToolDTO: title: CreateMakeToolDTO CreateOutputToolDTO: title: CreateOutputToolDTO + ApiRequestTool: + description: >- + A reusable tool that sends HTTP requests to a configured API and can + authenticate, retry failures, and extract variables from responses. + properties: + method: + description: The HTTP method used for the API request. + CodeTool: + description: >- + A reusable tool that executes TypeScript code with configured + credentials, environment variables, and timeout. DtmfTool: title: DtmfTool + description: >- + A reusable tool that lets an assistant send DTMF keypad tones during a + call. EndCallTool: title: EndCallTool + description: >- + A reusable tool that lets an assistant end the active call. FunctionTool: title: FunctionTool + description: >- + A reusable custom function tool that sends model-generated arguments to + a configured server and returns the result to the assistant. GhlTool: title: GhlTool MakeTool: title: MakeTool TransferCallTool: title: TransferCallTool + description: >- + A reusable tool that transfers the active call to one of its configured + destinations. + properties: + type: + description: >- + The tool type. Use `transferCall` for a call-transfer tool. + HandoffTool: + description: >- + A reusable tool that hands a conversation to another assistant, squad, + or dynamically selected destination. + SipRequestTool: + description: >- + A reusable tool that sends SIP `INFO`, `MESSAGE`, or `NOTIFY` requests + with configured headers and body. + VoicemailTool: + description: >- + A reusable voicemail-detection tool with optional beep detection for + supported calls. OutputTool: title: OutputTool BashTool: title: BashTool + description: >- + A reusable tool that executes shell commands in a configured + environment. ComputerTool: title: ComputerTool + description: >- + A reusable tool that lets the model interact with a computer display + through screen, pointer, and keyboard actions. TextEditorTool: title: TextEditorTool + description: >- + A reusable tool that reads and edits text files in a configured + environment. QueryTool: title: QueryTool + description: >- + A reusable tool that searches configured knowledge bases and returns + relevant content to the assistant. GoogleCalendarCreateEventTool: title: GoogleCalendarCreateEventTool + description: >- + A reusable tool that adds events to a connected Google Calendar. GoogleSheetsRowAppendTool: title: GoogleSheetsRowAppendTool + description: >- + A reusable tool that appends rows to a connected Google Sheet. GoogleCalendarCheckAvailabilityTool: title: GoogleCalendarCheckAvailabilityTool + description: >- + A reusable tool that checks availability in a connected Google + Calendar. SlackSendMessageTool: title: SlackSendMessageTool + description: >- + A reusable tool that lets an assistant send a message to Slack. SmsTool: title: SmsTool + description: >- + A reusable tool that lets an assistant send an SMS message during a + call. McpTool: title: McpTool + description: >- + A reusable tool that connects an assistant to a Model Context Protocol + server and exposes its available tools. + properties: + metadata: + description: >- + Connection metadata for the MCP server, including its communication + protocol. GoHighLevelCalendarAvailabilityTool: title: GoHighLevelCalendarAvailabilityTool + description: >- + A reusable tool that checks calendar availability in a connected + GoHighLevel account. GoHighLevelCalendarEventCreateTool: title: GoHighLevelCalendarEventCreateTool + description: >- + A reusable tool that adds calendar events to a connected GoHighLevel + account. GoHighLevelContactCreateTool: title: GoHighLevelContactCreateTool + description: >- + A reusable tool that adds contacts to a connected GoHighLevel account. GoHighLevelContactGetTool: title: GoHighLevelContactGetTool + description: >- + A reusable tool that retrieves contacts from a connected GoHighLevel + account. + UpdateApiRequestToolDTO: + description: >- + Fields used to update an API-request tool, including its URL, HTTP + method, authentication, request data, retries, and response handling. + properties: + method: + description: The HTTP method used for the API request. UpdateDtmfToolDTO: title: UpdateDtmfToolDTO + description: >- + Fields used to update a DTMF tool, including its spoken messages, + rejection plan, and SIP INFO behavior. UpdateEndCallToolDTO: title: UpdateEndCallToolDTO + description: >- + Fields used to update an end-call tool, including its spoken messages + and rejection plan. UpdateFunctionToolDTO: title: UpdateFunctionToolDTO + description: >- + Fields used to update a custom function tool, including its function + definition, server, parameters, messages, and execution behavior. + UpdateHandoffToolDTO: + description: >- + Fields used to update a handoff tool, including its destinations, + function definition, default result, messages, and rejection plan. UpdateGhlToolDTO: title: UpdateGhlToolDTO UpdateMakeToolDTO: title: UpdateMakeToolDTO UpdateTransferCallToolDTO: title: UpdateTransferCallToolDTO + description: >- + Fields used to update a call-transfer tool, including its destinations, + spoken messages, and rejection plan. + UpdateSipRequestToolDTO: + description: >- + Fields used to update a SIP-request tool, including its method, headers, + body, spoken messages, and rejection plan. + UpdateVoicemailToolDTO: + description: >- + Fields used to update a voicemail-detection tool, including beep + detection, spoken messages, and rejection plan. UpdateOutputToolDTO: title: UpdateOutputToolDTO UpdateBashToolDTO: title: UpdateBashToolDTO + description: >- + Fields used to update a Bash tool, including its name, environment + subtype, server, messages, and rejection plan. UpdateComputerToolDTO: title: UpdateComputerToolDTO + description: >- + Fields used to update a computer tool, including its display settings, + environment subtype, server, messages, and rejection plan. UpdateTextEditorToolDTO: title: UpdateTextEditorToolDTO + description: >- + Fields used to update a text-editor tool, including its name, + environment subtype, server, messages, and rejection plan. UpdateQueryToolDTO: title: UpdateQueryToolDTO + description: >- + Fields used to update a query tool, including its knowledge bases, + spoken messages, and rejection plan. UpdateGoogleCalendarCreateEventToolDTO: title: UpdateGoogleCalendarCreateEventToolDTO + description: >- + Fields used to update a Google Calendar event-creation tool, including + its spoken messages and rejection plan. UpdateGoogleSheetsRowAppendToolDTO: title: UpdateGoogleSheetsRowAppendToolDTO + description: >- + Fields used to update a Google Sheets row-append tool, including its + spoken messages and rejection plan. UpdateGoogleCalendarCheckAvailabilityToolDTO: title: UpdateGoogleCalendarCheckAvailabilityToolDTO + description: >- + Fields used to update a Google Calendar availability tool, including + its spoken messages and rejection plan. UpdateSlackSendMessageToolDTO: title: UpdateSlackSendMessageToolDTO + description: >- + Fields used to update a Slack message tool, including its spoken + messages and rejection plan. UpdateSmsToolDTO: title: UpdateSmsToolDTO + description: >- + Fields used to update an SMS tool, including its spoken messages and + rejection plan. UpdateMcpToolDTO: title: UpdateMcpToolDTO + description: >- + Fields used to update an MCP tool, including its server, connection + metadata, exposed tool messages, and rejection plan. + properties: + metadata: + description: >- + Connection metadata for the MCP server, including its communication + protocol. UpdateGoHighLevelCalendarAvailabilityToolDTO: title: UpdateGoHighLevelCalendarAvailabilityToolDTO + description: >- + Fields used to update a GoHighLevel calendar-availability tool, + including its spoken messages and rejection plan. UpdateGoHighLevelCalendarEventCreateToolDTO: title: UpdateGoHighLevelCalendarEventCreateToolDTO + description: >- + Fields used to update a GoHighLevel calendar-event tool, including its + spoken messages and rejection plan. UpdateGoHighLevelContactCreateToolDTO: title: UpdateGoHighLevelContactCreateToolDTO + description: >- + Fields used to update a GoHighLevel contact-creation tool, including its + spoken messages and rejection plan. UpdateGoHighLevelContactGetToolDTO: title: UpdateGoHighLevelContactGetToolDTO + description: >- + Fields used to update a GoHighLevel contact-retrieval tool, including + its spoken messages and rejection plan. CreateTrieveKnowledgeBaseDTO: title: CreateTrieveKnowledgeBaseDTO TrieveKnowledgeBase: @@ -1578,6 +4245,12 @@ components: UpdateTestSuiteTestChatDto: title: UpdateTestSuiteTestChatDto securitySchemes: + bearer: + description: >- + Authenticate server-side requests with a private Vapi API key. Create or + copy a key from the [Vapi Dashboard](https://dashboard.vapi.ai) and send + it in the `Authorization` header as `Bearer `. Keep private API + keys out of client-side code and public repositories. BearerAuth: type: http scheme: bearer From 8046b0c3113ce689db52a4d169af4ceaacdf2951 Mon Sep 17 00:00:00 2001 From: Stephen Smith Date: Thu, 23 Jul 2026 15:36:44 -0700 Subject: [PATCH 2/2] first draft --- fern/apis/api/generators.yml | 1 + ...openapi-parameter-descriptions-overlay.yml | 77 +++++++++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 fern/apis/api/openapi-parameter-descriptions-overlay.yml diff --git a/fern/apis/api/generators.yml b/fern/apis/api/generators.yml index 06857510a..f9bc714a1 100644 --- a/fern/apis/api/generators.yml +++ b/fern/apis/api/generators.yml @@ -3,6 +3,7 @@ api: specs: - openapi: ./openapi.json overrides: ./openapi-overrides.yml + overlays: ./openapi-parameter-descriptions-overlay.yml origin: https://api.vapi.ai/api-json settings: title-as-schema-name: false diff --git a/fern/apis/api/openapi-parameter-descriptions-overlay.yml b/fern/apis/api/openapi-parameter-descriptions-overlay.yml new file mode 100644 index 000000000..db5fb73b6 --- /dev/null +++ b/fern/apis/api/openapi-parameter-descriptions-overlay.yml @@ -0,0 +1,77 @@ +overlay: 1.0.0 +info: + title: Document API parameters + version: 1.0.0 +actions: + # Path parameters + - target: $.paths['/assistant/{id}'].*.parameters[?(@.name == 'id' && @.in == 'path')] + update: + description: The unique identifier of the assistant. + - target: $.paths['/squad/{id}'].*.parameters[?(@.name == 'id' && @.in == 'path')] + update: + description: The unique identifier of the squad. + - target: $.paths['/call/{id}'].*.parameters[?(@.name == 'id' && @.in == 'path')] + update: + description: The unique identifier of the call. + - target: $.paths['/campaign/{id}'].*.parameters[?(@.name == 'id' && @.in == 'path')] + update: + description: The unique identifier of the campaign. + - target: $.paths['/phone-number/{id}'].*.parameters[?(@.name == 'id' && @.in == 'path')] + update: + description: The unique identifier of the phone number. + - target: $.paths['/tool/{id}'].*.parameters[?(@.name == 'id' && @.in == 'path')] + update: + description: The unique identifier of the tool. + - target: $.paths['/file/{id}'].*.parameters[?(@.name == 'id' && @.in == 'path')] + update: + description: The unique identifier of the file. + - target: $.paths['/structured-output/{id}'].*.parameters[?(@.name == 'id' && @.in == 'path')] + update: + description: The unique identifier of the structured output. + - target: $.paths['/reporting/insight/{id}'].*.parameters[?(@.name == 'id' && @.in == 'path')] + update: + description: The unique identifier of the reporting insight. + - target: $.paths['/reporting/insight/{id}/run'].post.parameters[?(@.name == 'id' && @.in == 'path')] + update: + description: The unique identifier of the reporting insight. + - target: $.paths['/eval/{id}'].*.parameters[?(@.name == 'id' && @.in == 'path')] + update: + description: The unique identifier of the eval definition. + - target: $.paths['/eval/run/{id}'].*.parameters[?(@.name == 'id' && @.in == 'path')] + update: + description: The unique identifier of the eval run. + - target: $.paths['/observability/scorecard/{id}'].*.parameters[?(@.name == 'id' && @.in == 'path')] + update: + description: The unique identifier of the scorecard. + - target: $.paths['/provider/{provider}/{resourceName}/{id}'].*.parameters[?(@.name == 'id' && @.in == 'path')] + update: + description: The unique identifier of the provider resource. + + # Query parameters + - target: $.paths['/campaign'].get.parameters[?(@.name == 'id' && @.in == 'query')] + update: + description: Filters campaigns by ID. + - target: $.paths['/campaign'].get.parameters[?(@.name == 'status' && @.in == 'query')] + update: + description: Filters campaigns by status. + - target: $.paths['/structured-output/{id}'].patch.parameters[?(@.name == 'schemaOverride' && @.in == 'query')] + update: + description: Set to the string `true` to allow changing the schema's top-level type. Other values do not enable schema type changes. + - target: $.paths['/reporting/insight'].get.parameters[?(@.name == 'id' && @.in == 'query')] + update: + description: Filters reporting insights by ID. + - target: $.paths['/eval'].get.parameters[?(@.name == 'id' && @.in == 'query')] + update: + description: Filters eval definitions by ID. + - target: $.paths['/eval/run'].get.parameters[?(@.name == 'id' && @.in == 'query')] + update: + description: Filters eval runs by ID. + - target: $.paths['/observability/scorecard'].get.parameters[?(@.name == 'id' && @.in == 'query')] + update: + description: Filters scorecards by ID. + - target: $.paths['/provider/{provider}/{resourceName}'].get.parameters[?(@.name == 'id' && @.in == 'query')] + update: + description: Filters provider resources by their resource ID. + - target: $.paths['/provider/{provider}/{resourceName}'].get.parameters[?(@.name == 'resourceId' && @.in == 'query')] + update: + description: Filters provider resources by their provider-specific resource ID.