From 1bf8c1c9566e7958cbc687cd2945faaf77bd9020 Mon Sep 17 00:00:00 2001 From: github-actions Date: Thu, 5 Feb 2026 00:37:14 +0000 Subject: [PATCH] Update API specifications with fern api update --- fern/apis/api/openapi.json | 358 ++++++++++++++++++++++++++++--------- 1 file changed, 273 insertions(+), 85 deletions(-) diff --git a/fern/apis/api/openapi.json b/fern/apis/api/openapi.json index d48aac42f..d47abf69e 100644 --- a/fern/apis/api/openapi.json +++ b/fern/apis/api/openapi.json @@ -12425,6 +12425,20 @@ "type" ] }, + "ContextEngineeringPlanUserAndAssistantMessages": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "userAndAssistantMessages" + ] + } + }, + "required": [ + "type" + ] + }, "VariableExtractionAlias": { "type": "object", "properties": { @@ -12489,6 +12503,10 @@ { "$ref": "#/components/schemas/ContextEngineeringPlanAll", "title": "All" + }, + { + "$ref": "#/components/schemas/ContextEngineeringPlanUserAndAssistantMessages", + "title": "User And Assistant Messages" } ] }, @@ -12559,6 +12577,145 @@ "type" ] }, + "SquadMemberDTO": { + "type": "object", + "properties": { + "assistantDestinations": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/components/schemas/TransferDestinationAssistant", + "title": "Transfer Destination" + }, + { + "$ref": "#/components/schemas/HandoffDestinationAssistant", + "title": "Handoff Destination" + } + ] + } + }, + "assistantId": { + "type": "string", + "nullable": true, + "description": "This is the assistant that will be used for the call. To use a transient assistant, use `assistant` instead." + }, + "assistant": { + "description": "This is the assistant that will be used for the call. To use an existing assistant, use `assistantId` instead.", + "allOf": [ + { + "$ref": "#/components/schemas/CreateAssistantDTO" + } + ] + }, + "assistantOverrides": { + "description": "This can be used to override the assistant's settings and provide values for it's template variables.", + "allOf": [ + { + "$ref": "#/components/schemas/AssistantOverrides" + } + ] + } + } + }, + "CreateSquadDTO": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "This is the name of the squad." + }, + "members": { + "description": "This is the list of assistants that make up the squad.\n\nThe call will start with the first assistant in the list.", + "type": "array", + "items": { + "$ref": "#/components/schemas/SquadMemberDTO" + } + }, + "membersOverrides": { + "description": "This can be used to override all the assistants' settings and provide values for their template variables.\n\nBoth `membersOverrides` and `members[n].assistantOverrides` can be used together. First, `members[n].assistantOverrides` is applied. Then, `membersOverrides` is applied as a global override.", + "allOf": [ + { + "$ref": "#/components/schemas/AssistantOverrides" + } + ] + } + }, + "required": [ + "members" + ] + }, + "HandoffDestinationSquad": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "squad" + ] + }, + "contextEngineeringPlan": { + "description": "This is the plan for manipulating the message context before handing off the call to the squad.", + "oneOf": [ + { + "$ref": "#/components/schemas/ContextEngineeringPlanLastNMessages", + "title": "Last N Messages" + }, + { + "$ref": "#/components/schemas/ContextEngineeringPlanNone", + "title": "None" + }, + { + "$ref": "#/components/schemas/ContextEngineeringPlanAll", + "title": "All" + }, + { + "$ref": "#/components/schemas/ContextEngineeringPlanUserAndAssistantMessages", + "title": "User And Assistant Messages" + } + ] + }, + "squadId": { + "type": "string", + "description": "This is the squad id to transfer the call to." + }, + "squad": { + "description": "This is a transient squad to transfer the call to.", + "allOf": [ + { + "$ref": "#/components/schemas/CreateSquadDTO" + } + ] + }, + "entryAssistantName": { + "type": "string", + "description": "This is the name of the entry assistant to start with when handing off to the squad.\nIf not provided, the first member of the squad will be used." + }, + "variableExtractionPlan": { + "description": "This is the variable extraction plan for the handoff tool.", + "allOf": [ + { + "$ref": "#/components/schemas/VariableExtractionPlan" + } + ] + }, + "squadOverrides": { + "description": "These are the overrides to apply to the squad configuration.\nMaps to squad-level membersOverrides.", + "allOf": [ + { + "$ref": "#/components/schemas/AssistantOverrides" + } + ] + }, + "description": { + "type": "string", + "description": "This is the description of the destination, used by the AI to choose when and how to transfer the call." + } + }, + "required": [ + "type" + ] + }, "CreateHandoffToolDTO": { "type": "object", "properties": { @@ -12605,6 +12762,10 @@ { "$ref": "#/components/schemas/HandoffDestinationDynamic", "title": "Dynamic" + }, + { + "$ref": "#/components/schemas/HandoffDestinationSquad", + "title": "Squad" } ] } @@ -15250,6 +15411,7 @@ "gpt-4o-realtime-preview-2024-12-17", "gpt-4o-mini-realtime-preview-2024-12-17", "gpt-realtime-2025-08-28", + "gpt-realtime-mini-2025-12-15", "gpt-4o-mini-2024-07-18", "gpt-4o-mini", "gpt-4o", @@ -15376,6 +15538,7 @@ "gpt-4o-realtime-preview-2024-12-17", "gpt-4o-mini-realtime-preview-2024-12-17", "gpt-realtime-2025-08-28", + "gpt-realtime-mini-2025-12-15", "gpt-4o-mini-2024-07-18", "gpt-4o-mini", "gpt-4o", @@ -21973,7 +22136,7 @@ }, "voiceId": { "type": "string", - "description": "Available voices by language:\n• en: Alex, Ashley, Craig, Deborah, Dennis, Edward, Elizabeth, Hades, Julia, Pixie, Mark, Olivia, Priya, Ronald, Sarah, Shaun, Theodore, Timothy, Wendy, Dominus\n• zh: Yichen, Xiaoyin, Xinyi, Jing\n• nl: Erik, Katrien, Lennart, Lore\n• fr: Alain, Hélène, Mathieu, Étienne\n• de: Johanna, Josef\n• it: Gianni, Orietta\n• ja: Asuka, Satoshi\n• ko: Hyunwoo, Minji, Seojun, Yoona\n• pl: Szymon, Wojciech\n• pt: Heitor, Maitê\n• es: Diego, Lupita, Miguel, Rafael", + "description": "Available voices by language:\n• en: Alex, Ashley, Craig, Deborah, Dennis, Edward, Elizabeth, Hades, Julia, Pixie, Mark, Olivia, Priya, Ronald, Sarah, Shaun, Theodore, Timothy, Wendy, Dominus, Hana, Clive, Carter, Blake, Luna\n• zh: Yichen, Xiaoyin, Xinyi, Jing\n• nl: Erik, Katrien, Lennart, Lore\n• fr: Alain, Hélène, Mathieu, Étienne\n• de: Johanna, Josef\n• it: Gianni, Orietta\n• ja: Asuka, Satoshi\n• ko: Hyunwoo, Minji, Seojun, Yoona\n• pl: Szymon, Wojciech\n• pt: Heitor, Maitê\n• es: Diego, Lupita, Miguel, Rafael\n• ru: Svetlana, Elena, Dmitry, Nikolai\n• hi: Riya, Manoj\n• he: Yael, Oren\n• ar: Nour, Omar", "maxLength": 120, "title": "Inworld Voice ID", "enum": [ @@ -21997,6 +22160,11 @@ "Timothy", "Wendy", "Dominus", + "Hana", + "Clive", + "Carter", + "Blake", + "Luna", "Yichen", "Xiaoyin", "Xinyi", @@ -22026,7 +22194,17 @@ "Diego", "Lupita", "Miguel", - "Rafael" + "Rafael", + "Svetlana", + "Elena", + "Dmitry", + "Nikolai", + "Riya", + "Manoj", + "Yael", + "Oren", + "Nour", + "Omar" ], "example": "Alex" }, @@ -22053,7 +22231,11 @@ "de", "it", "pl", - "pt" + "pt", + "ru", + "hi", + "he", + "ar" ] }, "temperature": { @@ -24183,7 +24365,7 @@ }, "voiceId": { "type": "string", - "description": "Available voices by language:\n• en: Alex, Ashley, Craig, Deborah, Dennis, Edward, Elizabeth, Hades, Julia, Pixie, Mark, Olivia, Priya, Ronald, Sarah, Shaun, Theodore, Timothy, Wendy, Dominus\n• zh: Yichen, Xiaoyin, Xinyi, Jing\n• nl: Erik, Katrien, Lennart, Lore\n• fr: Alain, Hélène, Mathieu, Étienne\n• de: Johanna, Josef\n• it: Gianni, Orietta\n• ja: Asuka, Satoshi\n• ko: Hyunwoo, Minji, Seojun, Yoona\n• pl: Szymon, Wojciech\n• pt: Heitor, Maitê\n• es: Diego, Lupita, Miguel, Rafael", + "description": "Available voices by language:\n• en: Alex, Ashley, Craig, Deborah, Dennis, Edward, Elizabeth, Hades, Julia, Pixie, Mark, Olivia, Priya, Ronald, Sarah, Shaun, Theodore, Timothy, Wendy, Dominus, Hana, Clive, Carter, Blake, Luna\n• zh: Yichen, Xiaoyin, Xinyi, Jing\n• nl: Erik, Katrien, Lennart, Lore\n• fr: Alain, Hélène, Mathieu, Étienne\n• de: Johanna, Josef\n• it: Gianni, Orietta\n• ja: Asuka, Satoshi\n• ko: Hyunwoo, Minji, Seojun, Yoona\n• pl: Szymon, Wojciech\n• pt: Heitor, Maitê\n• es: Diego, Lupita, Miguel, Rafael\n• ru: Svetlana, Elena, Dmitry, Nikolai\n• hi: Riya, Manoj\n• he: Yael, Oren\n• ar: Nour, Omar", "maxLength": 120, "title": "Inworld Voice ID", "enum": [ @@ -24207,6 +24389,11 @@ "Timothy", "Wendy", "Dominus", + "Hana", + "Clive", + "Carter", + "Blake", + "Luna", "Yichen", "Xiaoyin", "Xinyi", @@ -24236,7 +24423,17 @@ "Diego", "Lupita", "Miguel", - "Rafael" + "Rafael", + "Svetlana", + "Elena", + "Dmitry", + "Nikolai", + "Riya", + "Manoj", + "Yael", + "Oren", + "Nour", + "Omar" ], "example": "Alex" }, @@ -24263,7 +24460,11 @@ "de", "it", "pl", - "pt" + "pt", + "ru", + "hi", + "he", + "ar" ] }, "temperature": { @@ -29695,74 +29896,6 @@ } } }, - "SquadMemberDTO": { - "type": "object", - "properties": { - "assistantDestinations": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/components/schemas/TransferDestinationAssistant", - "title": "Transfer Destination" - }, - { - "$ref": "#/components/schemas/HandoffDestinationAssistant", - "title": "Handoff Destination" - } - ] - } - }, - "assistantId": { - "type": "string", - "nullable": true, - "description": "This is the assistant that will be used for the call. To use a transient assistant, use `assistant` instead." - }, - "assistant": { - "description": "This is the assistant that will be used for the call. To use an existing assistant, use `assistantId` instead.", - "allOf": [ - { - "$ref": "#/components/schemas/CreateAssistantDTO" - } - ] - }, - "assistantOverrides": { - "description": "This can be used to override the assistant's settings and provide values for it's template variables.", - "allOf": [ - { - "$ref": "#/components/schemas/AssistantOverrides" - } - ] - } - } - }, - "CreateSquadDTO": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "This is the name of the squad." - }, - "members": { - "description": "This is the list of assistants that make up the squad.\n\nThe call will start with the first assistant in the list.", - "type": "array", - "items": { - "$ref": "#/components/schemas/SquadMemberDTO" - } - }, - "membersOverrides": { - "description": "This can be used to override all the assistants' settings and provide values for their template variables.\n\nBoth `membersOverrides` and `members[n].assistantOverrides` can be used together. First, `members[n].assistantOverrides` is applied. Then, `membersOverrides` is applied as a global override.", - "allOf": [ - { - "$ref": "#/components/schemas/AssistantOverrides" - } - ] - } - }, - "required": [ - "members" - ] - }, "Squad": { "type": "object", "properties": { @@ -31958,9 +32091,30 @@ } } }, + "MonitorResult": { + "type": "object", + "properties": { + "monitorId": { + "type": "string" + }, + "filterPassed": { + "type": "boolean" + } + }, + "required": [ + "monitorId", + "filterPassed" + ] + }, "Monitor": { "type": "object", "properties": { + "monitors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MonitorResult" + } + }, "listenUrl": { "type": "string", "description": "This is the URL where the assistant's calls can be listened to in real-time. To enable, set `assistant.monitorPlan.listenEnabled` to `true`." @@ -34865,7 +35019,15 @@ "properties": { "assistantId": { "type": "string", - "description": "The assistant ID to use for this chat" + "description": "This is the assistant ID to use for this chat. To use a transient assistant, use `assistant` instead." + }, + "assistant": { + "description": "This is the transient assistant configuration for this chat. To use an existing assistant, use `assistantId` instead.", + "allOf": [ + { + "$ref": "#/components/schemas/CreateAssistantDTO" + } + ] }, "sessionId": { "type": "string", @@ -34951,7 +35113,6 @@ } }, "required": [ - "assistantId", "input" ] }, @@ -35005,7 +35166,15 @@ "properties": { "assistantId": { "type": "string", - "description": "The assistant ID to use for this chat" + "description": "This is the assistant ID to use for this chat. To use a transient assistant, use `assistant` instead." + }, + "assistant": { + "description": "This is the transient assistant configuration for this chat. To use an existing assistant, use `assistantId` instead.", + "allOf": [ + { + "$ref": "#/components/schemas/CreateAssistantDTO" + } + ] }, "sessionId": { "type": "string", @@ -35091,7 +35260,6 @@ } }, "required": [ - "assistantId", "input" ] }, @@ -38867,6 +39035,10 @@ { "$ref": "#/components/schemas/HandoffDestinationDynamic", "title": "Dynamic" + }, + { + "$ref": "#/components/schemas/HandoffDestinationSquad", + "title": "Squad" } ] } @@ -41312,6 +41484,10 @@ { "$ref": "#/components/schemas/HandoffDestinationDynamic", "title": "Dynamic" + }, + { + "$ref": "#/components/schemas/HandoffDestinationSquad", + "title": "Squad" } ] } @@ -43657,6 +43833,7 @@ "phoneNumberId", "type", "endedReason", + "customerNumber", "campaignId", "artifact.structuredOutputs[OutputID]" ] @@ -43771,6 +43948,7 @@ "phoneNumberId", "type", "endedReason", + "customerNumber", "campaignId", "artifact.structuredOutputs[OutputID]" ] @@ -43896,6 +44074,7 @@ "phoneNumberId", "type", "endedReason", + "customerNumber", "campaignId", "artifact.structuredOutputs[OutputID]" ] @@ -44069,6 +44248,7 @@ "phoneNumberId", "type", "endedReason", + "customerNumber", "campaignId", "artifact.structuredOutputs[OutputID]" ] @@ -44138,6 +44318,7 @@ "phoneNumberId", "type", "endedReason", + "customerNumber", "campaignId", "artifact.structuredOutputs[OutputID]" ] @@ -44211,6 +44392,7 @@ "phoneNumberId", "type", "endedReason", + "customerNumber", "campaignId", "artifact.structuredOutputs[OutputID]" ] @@ -44332,6 +44514,7 @@ "phoneNumberId", "type", "endedReason", + "customerNumber", "campaignId", "artifact.structuredOutputs[OutputID]" ] @@ -44405,6 +44588,7 @@ "phoneNumberId", "type", "endedReason", + "customerNumber", "campaignId", "artifact.structuredOutputs[OutputID]" ] @@ -44482,6 +44666,7 @@ "phoneNumberId", "type", "endedReason", + "customerNumber", "campaignId", "artifact.structuredOutputs[OutputID]" ] @@ -44873,6 +45058,9 @@ "assistant.model.requestStarted", "assistant.model.requestSucceeded", "assistant.model.requestFailed", + "assistant.model.requestAttemptStarted", + "assistant.model.requestAttemptSucceeded", + "assistant.model.requestAttemptFailed", "assistant.model.connectionOpened", "assistant.model.connectionClosed", "assistant.model.firstTokenReceived", @@ -44901,7 +45089,8 @@ "assistant.transcriber.cleanup", "assistant.transcriber.clearing", "assistant.transcriber.transcriptIgnored", - "assistant.transcriber.languageSwitched" + "assistant.transcriber.languageSwitched", + "assistant.analysis.structuredOutputGenerated" ] }, "operation": { @@ -45330,6 +45519,7 @@ "phoneNumberId", "type", "endedReason", + "customerNumber", "campaignId", "artifact.structuredOutputs[OutputID]" ] @@ -45403,6 +45593,7 @@ "phoneNumberId", "type", "endedReason", + "customerNumber", "campaignId", "artifact.structuredOutputs[OutputID]" ] @@ -45480,6 +45671,7 @@ "phoneNumberId", "type", "endedReason", + "customerNumber", "campaignId", "artifact.structuredOutputs[OutputID]" ] @@ -59999,12 +60191,8 @@ "type": "object", "properties": { "destination": { - "description": "This is the destination you'd like the call to be transferred to.", - "allOf": [ - { - "$ref": "#/components/schemas/HandoffDestinationAssistant" - } - ] + "type": "object", + "description": "This is the destination you'd like the call to be transferred to." }, "error": { "type": "string",