diff --git a/fern/apis/api/openapi.json b/fern/apis/api/openapi.json index 9ce13a763..960745dce 100644 --- a/fern/apis/api/openapi.json +++ b/fern/apis/api/openapi.json @@ -3075,6 +3075,50 @@ } ] } + }, + "/enterprise": { + "post": { + "operationId": "EnterpriseInfoController_createEnterprise", + "summary": "Create Enterprise", + "parameters": [], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateEnterpriseInfoDTO" + } + } + } + }, + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnterpriseInfo" + } + } + } + }, + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateEnterpriseInfoDTO" + } + } + } + } + }, + "security": [ + { + "bearer": [] + } + ] + } } }, "info": { @@ -3624,6 +3668,21 @@ "provider" ] }, + "AzureSpeechTranscriber": { + "type": "object", + "properties": { + "provider": { + "type": "string", + "description": "This is the transcription provider that will be used.", + "enum": [ + "azure" + ] + } + }, + "required": [ + "provider" + ] + }, "TextContent": { "type": "object", "properties": { @@ -5565,9 +5624,6 @@ "mixtral-8x7b-32768", "llama3-8b-8192", "llama3-70b-8192", - "llama3-groq-8b-8192-tool-use-preview", - "llama3-groq-70b-8192-tool-use-preview", - "gemma-7b-it", "gemma2-9b-it" ] }, @@ -5787,7 +5843,13 @@ "type": "string", "description": "This is the OpenAI model that will be used.", "enum": [ + "o1-preview", + "o1-preview-2024-09-12", + "o1-mini", + "o1-mini-2024-09-12", "gpt-4o-realtime-preview-2024-10-01", + "gpt-4o-realtime-preview-2024-12-17", + "gpt-4o-mini-realtime-preview-2024-12-17", "gpt-4o-mini", "gpt-4o-mini-2024-07-18", "gpt-4o", @@ -5812,7 +5874,13 @@ "type": "array", "description": "These are the fallback models that will be used if the primary model fails. This shouldn't be specified unless you have a specific reason to do so. Vapi will automatically find the fastest fallbacks that make sense.", "enum": [ + "o1-preview", + "o1-preview-2024-09-12", + "o1-mini", + "o1-mini-2024-09-12", "gpt-4o-realtime-preview-2024-10-01", + "gpt-4o-realtime-preview-2024-12-17", + "gpt-4o-mini-realtime-preview-2024-12-17", "gpt-4o-mini", "gpt-4o-mini-2024-07-18", "gpt-4o", @@ -5839,7 +5907,13 @@ "items": { "type": "string", "enum": [ + "o1-preview", + "o1-preview-2024-09-12", + "o1-mini", + "o1-mini-2024-09-12", "gpt-4o-realtime-preview-2024-10-01", + "gpt-4o-realtime-preview-2024-12-17", + "gpt-4o-mini-realtime-preview-2024-12-17", "gpt-4o-mini", "gpt-4o-mini-2024-07-18", "gpt-4o", @@ -6751,7 +6825,9 @@ "description": "This is the model that will be used. This is optional and will default to the correct model for the voiceId.", "enum": [ "sonic-english", - "sonic-multilingual" + "sonic-multilingual", + "sonic-preview", + "sonic" ], "example": "sonic-english" }, @@ -6987,6 +7063,8 @@ "eleven_multilingual_v2", "eleven_turbo_v2", "eleven_turbo_v2_5", + "eleven_flash_v2", + "eleven_flash_v2_5", "eleven_monolingual_v1" ], "example": "eleven_turbo_v2_5" @@ -7133,7 +7211,7 @@ ] }, "voiceId": { - "description": "This is the provider-specific ID that will be used.\nPlease note that ash, ballad, coral, sage, and verse may only be used with the `gpt-4o-realtime-preview-2024-10-01` model.", + "description": "This is the provider-specific ID that will be used.\nPlease note that ash, ballad, coral, sage, and verse may only be used with realtime models.", "enum": [ "alloy", "echo", @@ -7685,7 +7763,9 @@ "description": "This is the model that will be used. This is optional and will default to the correct model for the voiceId.", "enum": [ "sonic-english", - "sonic-multilingual" + "sonic-multilingual", + "sonic-preview", + "sonic" ], "example": "sonic-english" }, @@ -7897,6 +7977,8 @@ "eleven_multilingual_v2", "eleven_turbo_v2", "eleven_turbo_v2_5", + "eleven_flash_v2", + "eleven_flash_v2_5", "eleven_monolingual_v1" ], "example": "eleven_turbo_v2_5" @@ -8019,7 +8101,7 @@ ] }, "voiceId": { - "description": "This is the provider-specific ID that will be used.\nPlease note that ash, ballad, coral, sage, and verse may only be used with the `gpt-4o-realtime-preview-2024-10-01` model.", + "description": "This is the provider-specific ID that will be used.\nPlease note that ash, ballad, coral, sage, and verse may only be used with realtime models.", "enum": [ "alloy", "echo", @@ -8938,6 +9020,10 @@ "$ref": "#/components/schemas/AssemblyAITranscriber", "title": "AssemblyAI" }, + { + "$ref": "#/components/schemas/AzureSpeechTranscriber", + "title": "Azure" + }, { "$ref": "#/components/schemas/CustomTranscriber", "title": "CustomTranscriber" @@ -9350,6 +9436,10 @@ "$ref": "#/components/schemas/AssemblyAITranscriber", "title": "AssemblyAI" }, + { + "$ref": "#/components/schemas/AzureSpeechTranscriber", + "title": "Azure" + }, { "$ref": "#/components/schemas/CustomTranscriber", "title": "CustomTranscriber" @@ -9858,13 +9948,13 @@ "type": "string", "description": "This is the squad that will be used for incoming calls to this phone number.\n\nIf neither `assistantId` nor `squadId` is set, `assistant-request` will be sent to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the shape of the message and response that is expected." }, - "serverUrl": { - "type": "string", - "description": "This is the server URL where messages will be sent for calls on this number. This includes the `assistant-request` message.\n\nYou can see the shape of the messages sent in `ServerMessage`.\n\nThis overrides the `org.serverUrl`. Order of precedence: tool.server.url > assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret Vapi will send with every message to your server. It's sent as a header called x-vapi-secret.\n\nSame precedence logic as serverUrl." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] } }, "required": [ @@ -10272,6 +10362,30 @@ "type": "string", "description": "This is the explanation for how the call ended.", "enum": [ + "assistant-not-invalid", + "assistant-not-provided", + "call-start-error-neither-assistant-nor-server-set", + "assistant-request-failed", + "assistant-request-returned-error", + "assistant-request-returned-unspeakable-error", + "assistant-request-returned-invalid-assistant", + "assistant-request-returned-no-assistant", + "assistant-request-returned-forwarding-phone-number", + "assistant-ended-call", + "assistant-said-end-call-phrase", + "assistant-forwarded-call", + "assistant-join-timed-out", + "customer-busy", + "customer-ended-call", + "customer-did-not-answer", + "customer-did-not-give-microphone-permission", + "assistant-said-message-with-end-call-enabled", + "exceeded-max-duration", + "manually-canceled", + "phone-call-provider-closed-websocket", + "db-error", + "assistant-not-found", + "license-check-failed", "pipeline-error-openai-voice-failed", "pipeline-error-cartesia-voice-failed", "pipeline-error-deepgram-voice-failed", @@ -10281,9 +10395,11 @@ "pipeline-error-azure-voice-failed", "pipeline-error-rime-ai-voice-failed", "pipeline-error-neets-voice-failed", - "db-error", - "assistant-not-found", - "license-check-failed", + "pipeline-error-deepgram-transcriber-failed", + "pipeline-error-gladia-transcriber-failed", + "pipeline-error-assembly-ai-transcriber-failed", + "pipeline-error-talkscriber-transcriber-failed", + "pipeline-error-azure-speech-transcriber-failed", "pipeline-error-vapi-llm-failed", "pipeline-error-vapi-400-bad-request-validation-failed", "pipeline-error-vapi-401-unauthorized", @@ -10303,36 +10419,12 @@ "vapifault-web-call-worker-setup-failed", "vapifault-transport-connected-but-call-not-active", "vapifault-call-started-but-connection-to-transport-missing", - "pipeline-error-deepgram-transcriber-failed", - "pipeline-error-gladia-transcriber-failed", - "pipeline-error-assembly-ai-transcriber-failed", "pipeline-error-openai-llm-failed", "pipeline-error-azure-openai-llm-failed", "pipeline-error-groq-llm-failed", "pipeline-error-google-llm-failed", "pipeline-error-xai-llm-failed", "pipeline-error-inflection-ai-llm-failed", - "assistant-not-invalid", - "assistant-not-provided", - "call-start-error-neither-assistant-nor-server-set", - "assistant-request-failed", - "assistant-request-returned-error", - "assistant-request-returned-unspeakable-error", - "assistant-request-returned-invalid-assistant", - "assistant-request-returned-no-assistant", - "assistant-request-returned-forwarding-phone-number", - "assistant-ended-call", - "assistant-said-end-call-phrase", - "assistant-forwarded-call", - "assistant-join-timed-out", - "customer-busy", - "customer-ended-call", - "customer-did-not-answer", - "customer-did-not-give-microphone-permission", - "assistant-said-message-with-end-call-enabled", - "exceeded-max-duration", - "manually-canceled", - "phone-call-provider-closed-websocket", "pipeline-error-openai-400-bad-request-validation-failed", "pipeline-error-openai-401-unauthorized", "pipeline-error-openai-403-model-access-denied", @@ -10450,6 +10542,8 @@ "pipeline-error-playht-429-exceeded-quota", "pipeline-error-playht-502-gateway-error", "pipeline-error-playht-504-gateway-error", + "pipeline-error-tavus-video-failed", + "pipeline-error-custom-transcriber-failed", "pipeline-error-deepgram-returning-403-model-access-denied", "pipeline-error-deepgram-returning-401-invalid-credentials", "pipeline-error-deepgram-returning-404-not-found", @@ -10457,8 +10551,6 @@ "pipeline-error-deepgram-returning-500-invalid-json", "pipeline-error-deepgram-returning-502-network-error", "pipeline-error-deepgram-returning-502-bad-gateway-ehostunreach", - "pipeline-error-tavus-video-failed", - "pipeline-error-custom-transcriber-failed", "silence-timed-out", "sip-gateway-failed-to-connect-call", "twilio-failed-to-connect-call", @@ -10793,6 +10885,10 @@ "$ref": "#/components/schemas/AssemblyAITranscriber", "title": "AssemblyAI" }, + { + "$ref": "#/components/schemas/AzureSpeechTranscriber", + "title": "Azure" + }, { "$ref": "#/components/schemas/CustomTranscriber", "title": "CustomTranscriber" @@ -11229,6 +11325,10 @@ "$ref": "#/components/schemas/AssemblyAITranscriber", "title": "AssemblyAI" }, + { + "$ref": "#/components/schemas/AzureSpeechTranscriber", + "title": "Azure" + }, { "$ref": "#/components/schemas/CustomTranscriber", "title": "CustomTranscriber" @@ -11690,13 +11790,13 @@ "type": "string", "description": "This is the squad that will be used for incoming calls to this phone number.\n\nIf neither `assistantId` nor `squadId` is set, `assistant-request` will be sent to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the shape of the message and response that is expected." }, - "serverUrl": { - "type": "string", - "description": "This is the server URL where messages will be sent for calls on this number. This includes the `assistant-request` message.\n\nYou can see the shape of the messages sent in `ServerMessage`.\n\nThis overrides the `org.serverUrl`. Order of precedence: tool.server.url > assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret Vapi will send with every message to your server. It's sent as a header called x-vapi-secret.\n\nSame precedence logic as serverUrl." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] }, "number": { "type": "string", @@ -11772,13 +11872,13 @@ "type": "string", "description": "This is the squad that will be used for incoming calls to this phone number.\n\nIf neither `assistantId` nor `squadId` is set, `assistant-request` will be sent to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the shape of the message and response that is expected." }, - "serverUrl": { - "type": "string", - "description": "This is the server URL where messages will be sent for calls on this number. This includes the `assistant-request` message.\n\nYou can see the shape of the messages sent in `ServerMessage`.\n\nThis overrides the `org.serverUrl`. Order of precedence: tool.server.url > assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret Vapi will send with every message to your server. It's sent as a header called x-vapi-secret.\n\nSame precedence logic as serverUrl." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] }, "number": { "type": "string", @@ -11858,13 +11958,13 @@ "type": "string", "description": "This is the squad that will be used for incoming calls to this phone number.\n\nIf neither `assistantId` nor `squadId` is set, `assistant-request` will be sent to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the shape of the message and response that is expected." }, - "serverUrl": { - "type": "string", - "description": "This is the server URL where messages will be sent for calls on this number. This includes the `assistant-request` message.\n\nYou can see the shape of the messages sent in `ServerMessage`.\n\nThis overrides the `org.serverUrl`. Order of precedence: tool.server.url > assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret Vapi will send with every message to your server. It's sent as a header called x-vapi-secret.\n\nSame precedence logic as serverUrl." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] }, "number": { "type": "string", @@ -11964,13 +12064,13 @@ "type": "string", "description": "This is the squad that will be used for incoming calls to this phone number.\n\nIf neither `assistantId` nor `squadId` is set, `assistant-request` will be sent to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the shape of the message and response that is expected." }, - "serverUrl": { - "type": "string", - "description": "This is the server URL where messages will be sent for calls on this number. This includes the `assistant-request` message.\n\nYou can see the shape of the messages sent in `ServerMessage`.\n\nThis overrides the `org.serverUrl`. Order of precedence: tool.server.url > assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret Vapi will send with every message to your server. It's sent as a header called x-vapi-secret.\n\nSame precedence logic as serverUrl." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] }, "sipUri": { "type": "string", @@ -12045,13 +12145,13 @@ "type": "string", "description": "This is the squad that will be used for incoming calls to this phone number.\n\nIf neither `assistantId` nor `squadId` is set, `assistant-request` will be sent to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the shape of the message and response that is expected." }, - "serverUrl": { - "type": "string", - "description": "This is the server URL where messages will be sent for calls on this number. This includes the `assistant-request` message.\n\nYou can see the shape of the messages sent in `ServerMessage`.\n\nThis overrides the `org.serverUrl`. Order of precedence: tool.server.url > assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret Vapi will send with every message to your server. It's sent as a header called x-vapi-secret.\n\nSame precedence logic as serverUrl." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] } }, "required": [ @@ -12107,13 +12207,13 @@ "type": "string", "description": "This is the squad that will be used for incoming calls to this phone number.\n\nIf neither `assistantId` nor `squadId` is set, `assistant-request` will be sent to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the shape of the message and response that is expected." }, - "serverUrl": { - "type": "string", - "description": "This is the server URL where messages will be sent for calls on this number. This includes the `assistant-request` message.\n\nYou can see the shape of the messages sent in `ServerMessage`.\n\nThis overrides the `org.serverUrl`. Order of precedence: tool.server.url > assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret Vapi will send with every message to your server. It's sent as a header called x-vapi-secret.\n\nSame precedence logic as serverUrl." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] } }, "required": [ @@ -12167,13 +12267,13 @@ "type": "string", "description": "This is the squad that will be used for incoming calls to this phone number.\n\nIf neither `assistantId` nor `squadId` is set, `assistant-request` will be sent to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the shape of the message and response that is expected." }, - "serverUrl": { - "type": "string", - "description": "This is the server URL where messages will be sent for calls on this number. This includes the `assistant-request` message.\n\nYou can see the shape of the messages sent in `ServerMessage`.\n\nThis overrides the `org.serverUrl`. Order of precedence: tool.server.url > assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret Vapi will send with every message to your server. It's sent as a header called x-vapi-secret.\n\nSame precedence logic as serverUrl." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] } }, "required": [ @@ -12230,13 +12330,13 @@ "type": "string", "description": "This is the squad that will be used for incoming calls to this phone number.\n\nIf neither `assistantId` nor `squadId` is set, `assistant-request` will be sent to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the shape of the message and response that is expected." }, - "serverUrl": { - "type": "string", - "description": "This is the server URL where messages will be sent for calls on this number. This includes the `assistant-request` message.\n\nYou can see the shape of the messages sent in `ServerMessage`.\n\nThis overrides the `org.serverUrl`. Order of precedence: tool.server.url > assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret Vapi will send with every message to your server. It's sent as a header called x-vapi-secret.\n\nSame precedence logic as serverUrl." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] } }, "required": [ @@ -12279,13 +12379,13 @@ "type": "string", "description": "This is the squad that will be used for incoming calls to this phone number.\n\nIf neither `assistantId` nor `squadId` is set, `assistant-request` will be sent to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the shape of the message and response that is expected." }, - "serverUrl": { - "type": "string", - "description": "This is the server URL where messages will be sent for calls on this number. This includes the `assistant-request` message.\n\nYou can see the shape of the messages sent in `ServerMessage`.\n\nThis overrides the `org.serverUrl`. Order of precedence: tool.server.url > assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret Vapi will send with every message to your server. It's sent as a header called x-vapi-secret.\n\nSame precedence logic as serverUrl." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] } }, "required": [ @@ -12330,13 +12430,13 @@ "type": "string", "description": "This is the squad that will be used for incoming calls to this phone number.\n\nIf neither `assistantId` nor `squadId` is set, `assistant-request` will be sent to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the shape of the message and response that is expected." }, - "serverUrl": { - "type": "string", - "description": "This is the server URL where messages will be sent for calls on this number. This includes the `assistant-request` message.\n\nYou can see the shape of the messages sent in `ServerMessage`.\n\nThis overrides the `org.serverUrl`. Order of precedence: tool.server.url > assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret Vapi will send with every message to your server. It's sent as a header called x-vapi-secret.\n\nSame precedence logic as serverUrl." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] } }, "required": [ @@ -12410,13 +12510,13 @@ "type": "string", "description": "This is the squad that will be used for incoming calls to this phone number.\n\nIf neither `assistantId` nor `squadId` is set, `assistant-request` will be sent to your Server URL. Check `ServerMessage` and `ServerMessageResponse` for the shape of the message and response that is expected." }, - "serverUrl": { - "type": "string", - "description": "This is the server URL where messages will be sent for calls on this number. This includes the `assistant-request` message.\n\nYou can see the shape of the messages sent in `ServerMessage`.\n\nThis overrides the `org.serverUrl`. Order of precedence: tool.server.url > assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret Vapi will send with every message to your server. It's sent as a header called x-vapi-secret.\n\nSame precedence logic as serverUrl." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] } } }, @@ -12526,7 +12626,7 @@ }, "stripeCustomerEmail": { "type": "string", - "description": "This is the stripe customer's email." + "description": "This is the customer's email on Stripe." }, "referredByEmail": { "type": "string", @@ -12598,6 +12698,15 @@ "concurrencyLimitPurchased" ] }, + "UpdateSubscriptionDTO": { + "type": "object", + "properties": { + "stripeCustomerEmail": { + "type": "string", + "description": "This is the customer's email on Stripe." + } + } + }, "Payment": { "type": "object", "properties": { @@ -15658,6 +15767,29 @@ "metadata" ] }, + "ChatDTO": { + "type": "object", + "properties": { + "messages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OpenAIMessage" + } + }, + "assistantId": { + "type": "string" + }, + "assistant": { + "$ref": "#/components/schemas/CreateAssistantDTO" + }, + "assistantOverrides": { + "$ref": "#/components/schemas/AssistantOverrides" + } + }, + "required": [ + "messages" + ] + }, "AnthropicCredential": { "type": "object", "properties": { @@ -15833,7 +15965,7 @@ "northcentralus", "norway", "southcentralus", - "sweden", + "swedencentral", "switzerland", "uk", "westus", @@ -15902,7 +16034,7 @@ "northcentralus", "norway", "southcentralus", - "sweden", + "swedencentral", "switzerland", "uk", "westus", @@ -17780,7 +17912,7 @@ "northcentralus", "norway", "southcentralus", - "sweden", + "swedencentral", "switzerland", "uk", "westus", @@ -17827,7 +17959,7 @@ "northcentralus", "norway", "southcentralus", - "sweden", + "swedencentral", "switzerland", "uk", "westus", @@ -18821,7 +18953,7 @@ "northcentralus", "norway", "southcentralus", - "sweden", + "swedencentral", "switzerland", "uk", "westus", @@ -18868,7 +19000,7 @@ "northcentralus", "norway", "southcentralus", - "sweden", + "swedencentral", "switzerland", "uk", "westus", @@ -19755,13 +19887,13 @@ "minimum": 0, "maximum": 1000 }, - "serverUrl": { - "type": "string", - "description": "This is the URL Vapi will communicate with via HTTP GET and POST Requests. This is used for retrieving context, function calling, and end-of-call reports.\n\nAll requests will be sent with the call object among other things relevant to that message. You can find more details in the Server URL documentation." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret you can set that Vapi will send with every request to your server. Will be sent as a header called x-vapi-secret." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] }, "concurrencyLimit": { "type": "number", @@ -19865,13 +19997,13 @@ "minimum": 0, "maximum": 1000 }, - "serverUrl": { - "type": "string", - "description": "This is the URL Vapi will communicate with via HTTP GET and POST Requests. This is used for retrieving context, function calling, and end-of-call reports.\n\nAll requests will be sent with the call object among other things relevant to that message. You can find more details in the Server URL documentation." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret you can set that Vapi will send with every request to your server. Will be sent as a header called x-vapi-secret." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] }, "concurrencyLimit": { "type": "number", @@ -19917,13 +20049,13 @@ "minimum": 0, "maximum": 1000 }, - "serverUrl": { - "type": "string", - "description": "This is the URL Vapi will communicate with via HTTP GET and POST Requests. This is used for retrieving context, function calling, and end-of-call reports.\n\nAll requests will be sent with the call object among other things relevant to that message. You can find more details in the Server URL documentation." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret you can set that Vapi will send with every request to your server. Will be sent as a header called x-vapi-secret." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] }, "concurrencyLimit": { "type": "number", @@ -20067,13 +20199,13 @@ "minimum": 0, "maximum": 1000 }, - "serverUrl": { - "type": "string", - "description": "This is the URL Vapi will communicate with via HTTP GET and POST Requests. This is used for retrieving context, function calling, and end-of-call reports.\n\nAll requests will be sent with the call object among other things relevant to that message. You can find more details in the Server URL documentation." - }, - "serverUrlSecret": { - "type": "string", - "description": "This is the secret you can set that Vapi will send with every request to your server. Will be sent as a header called x-vapi-secret." + "server": { + "description": "This is where Vapi will send webhooks. You can find all webhooks available along with their shape in ServerMessage schema.\n\nThe order of precedence is:\n\n1. assistant.server\n2. phoneNumber.server\n3. org.server", + "allOf": [ + { + "$ref": "#/components/schemas/Server" + } + ] }, "concurrencyLimit": { "type": "number", @@ -20873,6 +21005,97 @@ } } }, + "CreateEnterpriseInfoDTO": { + "type": "object", + "properties": { + "companySize": { + "type": "string", + "description": "The size of the company." + }, + "source": { + "type": "string", + "description": "How the company heard about us." + }, + "companyType": { + "type": "string", + "description": "The type of the company." + }, + "callVolume": { + "type": "string", + "description": "The call volume of the company." + }, + "orgId": { + "type": "string", + "description": "The optional ID of the organization." + }, + "email": { + "type": "string", + "description": "The optional email of the company." + }, + "useCase": { + "type": "string", + "description": "The use case of the company." + } + }, + "required": [ + "companySize", + "source", + "companyType", + "callVolume" + ] + }, + "EnterpriseInfo": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The unique identifier for the enterprise info." + }, + "companySize": { + "type": "string", + "description": "The size of the company." + }, + "source": { + "type": "string", + "description": "How the company heard about us." + }, + "companyType": { + "type": "string", + "description": "The type of the company." + }, + "callVolume": { + "type": "string", + "description": "The call volume of the company." + }, + "orgId": { + "type": "string", + "description": "The optional ID of the organization." + }, + "email": { + "type": "string", + "description": "The optional email of the company." + }, + "createdAt": { + "format": "date-time", + "type": "string", + "description": "The ISO 8601 date-time string of when the enterprise info was created." + }, + "updatedAt": { + "format": "date-time", + "type": "string", + "description": "The ISO 8601 date-time string of when the enterprise info was last updated." + } + }, + "required": [ + "id", + "companySize", + "source", + "companyType", + "callVolume", + "createdAt", + "updatedAt" + ] + }, "ClientMessageConversationUpdate": { "type": "object", "properties": { @@ -21562,6 +21785,30 @@ "type": "string", "description": "This is the reason the call ended. This can also be found at `call.endedReason` on GET /call/:id.", "enum": [ + "assistant-not-invalid", + "assistant-not-provided", + "call-start-error-neither-assistant-nor-server-set", + "assistant-request-failed", + "assistant-request-returned-error", + "assistant-request-returned-unspeakable-error", + "assistant-request-returned-invalid-assistant", + "assistant-request-returned-no-assistant", + "assistant-request-returned-forwarding-phone-number", + "assistant-ended-call", + "assistant-said-end-call-phrase", + "assistant-forwarded-call", + "assistant-join-timed-out", + "customer-busy", + "customer-ended-call", + "customer-did-not-answer", + "customer-did-not-give-microphone-permission", + "assistant-said-message-with-end-call-enabled", + "exceeded-max-duration", + "manually-canceled", + "phone-call-provider-closed-websocket", + "db-error", + "assistant-not-found", + "license-check-failed", "pipeline-error-openai-voice-failed", "pipeline-error-cartesia-voice-failed", "pipeline-error-deepgram-voice-failed", @@ -21571,9 +21818,11 @@ "pipeline-error-azure-voice-failed", "pipeline-error-rime-ai-voice-failed", "pipeline-error-neets-voice-failed", - "db-error", - "assistant-not-found", - "license-check-failed", + "pipeline-error-deepgram-transcriber-failed", + "pipeline-error-gladia-transcriber-failed", + "pipeline-error-assembly-ai-transcriber-failed", + "pipeline-error-talkscriber-transcriber-failed", + "pipeline-error-azure-speech-transcriber-failed", "pipeline-error-vapi-llm-failed", "pipeline-error-vapi-400-bad-request-validation-failed", "pipeline-error-vapi-401-unauthorized", @@ -21593,36 +21842,12 @@ "vapifault-web-call-worker-setup-failed", "vapifault-transport-connected-but-call-not-active", "vapifault-call-started-but-connection-to-transport-missing", - "pipeline-error-deepgram-transcriber-failed", - "pipeline-error-gladia-transcriber-failed", - "pipeline-error-assembly-ai-transcriber-failed", "pipeline-error-openai-llm-failed", "pipeline-error-azure-openai-llm-failed", "pipeline-error-groq-llm-failed", "pipeline-error-google-llm-failed", "pipeline-error-xai-llm-failed", "pipeline-error-inflection-ai-llm-failed", - "assistant-not-invalid", - "assistant-not-provided", - "call-start-error-neither-assistant-nor-server-set", - "assistant-request-failed", - "assistant-request-returned-error", - "assistant-request-returned-unspeakable-error", - "assistant-request-returned-invalid-assistant", - "assistant-request-returned-no-assistant", - "assistant-request-returned-forwarding-phone-number", - "assistant-ended-call", - "assistant-said-end-call-phrase", - "assistant-forwarded-call", - "assistant-join-timed-out", - "customer-busy", - "customer-ended-call", - "customer-did-not-answer", - "customer-did-not-give-microphone-permission", - "assistant-said-message-with-end-call-enabled", - "exceeded-max-duration", - "manually-canceled", - "phone-call-provider-closed-websocket", "pipeline-error-openai-400-bad-request-validation-failed", "pipeline-error-openai-401-unauthorized", "pipeline-error-openai-403-model-access-denied", @@ -21740,6 +21965,8 @@ "pipeline-error-playht-429-exceeded-quota", "pipeline-error-playht-502-gateway-error", "pipeline-error-playht-504-gateway-error", + "pipeline-error-tavus-video-failed", + "pipeline-error-custom-transcriber-failed", "pipeline-error-deepgram-returning-403-model-access-denied", "pipeline-error-deepgram-returning-401-invalid-credentials", "pipeline-error-deepgram-returning-404-not-found", @@ -21747,8 +21974,6 @@ "pipeline-error-deepgram-returning-500-invalid-json", "pipeline-error-deepgram-returning-502-network-error", "pipeline-error-deepgram-returning-502-bad-gateway-ehostunreach", - "pipeline-error-tavus-video-failed", - "pipeline-error-custom-transcriber-failed", "silence-timed-out", "sip-gateway-failed-to-connect-call", "twilio-failed-to-connect-call", @@ -22342,6 +22567,30 @@ "type": "string", "description": "This is the reason the call ended. This is only sent if the status is \"ended\".", "enum": [ + "assistant-not-invalid", + "assistant-not-provided", + "call-start-error-neither-assistant-nor-server-set", + "assistant-request-failed", + "assistant-request-returned-error", + "assistant-request-returned-unspeakable-error", + "assistant-request-returned-invalid-assistant", + "assistant-request-returned-no-assistant", + "assistant-request-returned-forwarding-phone-number", + "assistant-ended-call", + "assistant-said-end-call-phrase", + "assistant-forwarded-call", + "assistant-join-timed-out", + "customer-busy", + "customer-ended-call", + "customer-did-not-answer", + "customer-did-not-give-microphone-permission", + "assistant-said-message-with-end-call-enabled", + "exceeded-max-duration", + "manually-canceled", + "phone-call-provider-closed-websocket", + "db-error", + "assistant-not-found", + "license-check-failed", "pipeline-error-openai-voice-failed", "pipeline-error-cartesia-voice-failed", "pipeline-error-deepgram-voice-failed", @@ -22351,9 +22600,11 @@ "pipeline-error-azure-voice-failed", "pipeline-error-rime-ai-voice-failed", "pipeline-error-neets-voice-failed", - "db-error", - "assistant-not-found", - "license-check-failed", + "pipeline-error-deepgram-transcriber-failed", + "pipeline-error-gladia-transcriber-failed", + "pipeline-error-assembly-ai-transcriber-failed", + "pipeline-error-talkscriber-transcriber-failed", + "pipeline-error-azure-speech-transcriber-failed", "pipeline-error-vapi-llm-failed", "pipeline-error-vapi-400-bad-request-validation-failed", "pipeline-error-vapi-401-unauthorized", @@ -22373,36 +22624,12 @@ "vapifault-web-call-worker-setup-failed", "vapifault-transport-connected-but-call-not-active", "vapifault-call-started-but-connection-to-transport-missing", - "pipeline-error-deepgram-transcriber-failed", - "pipeline-error-gladia-transcriber-failed", - "pipeline-error-assembly-ai-transcriber-failed", "pipeline-error-openai-llm-failed", "pipeline-error-azure-openai-llm-failed", "pipeline-error-groq-llm-failed", "pipeline-error-google-llm-failed", "pipeline-error-xai-llm-failed", "pipeline-error-inflection-ai-llm-failed", - "assistant-not-invalid", - "assistant-not-provided", - "call-start-error-neither-assistant-nor-server-set", - "assistant-request-failed", - "assistant-request-returned-error", - "assistant-request-returned-unspeakable-error", - "assistant-request-returned-invalid-assistant", - "assistant-request-returned-no-assistant", - "assistant-request-returned-forwarding-phone-number", - "assistant-ended-call", - "assistant-said-end-call-phrase", - "assistant-forwarded-call", - "assistant-join-timed-out", - "customer-busy", - "customer-ended-call", - "customer-did-not-answer", - "customer-did-not-give-microphone-permission", - "assistant-said-message-with-end-call-enabled", - "exceeded-max-duration", - "manually-canceled", - "phone-call-provider-closed-websocket", "pipeline-error-openai-400-bad-request-validation-failed", "pipeline-error-openai-401-unauthorized", "pipeline-error-openai-403-model-access-denied", @@ -22520,6 +22747,8 @@ "pipeline-error-playht-429-exceeded-quota", "pipeline-error-playht-502-gateway-error", "pipeline-error-playht-504-gateway-error", + "pipeline-error-tavus-video-failed", + "pipeline-error-custom-transcriber-failed", "pipeline-error-deepgram-returning-403-model-access-denied", "pipeline-error-deepgram-returning-401-invalid-credentials", "pipeline-error-deepgram-returning-404-not-found", @@ -22527,8 +22756,6 @@ "pipeline-error-deepgram-returning-500-invalid-json", "pipeline-error-deepgram-returning-502-network-error", "pipeline-error-deepgram-returning-502-bad-gateway-ehostunreach", - "pipeline-error-tavus-video-failed", - "pipeline-error-custom-transcriber-failed", "silence-timed-out", "sip-gateway-failed-to-connect-call", "twilio-failed-to-connect-call",