From fb09c09dc9ad6985e4ef3a5005bcb3a70a4d56f4 Mon Sep 17 00:00:00 2001 From: "fern-api[bot]" <115122769+fern-api[bot]@users.noreply.github.com> Date: Mon, 17 Feb 2025 00:02:35 +0000 Subject: [PATCH 1/3] fix(openapi): deprecate logsQuery and logsDeleteQuery, remove Eval objects --- fern/apis/api/openapi.json | 396 +------------------------------------ 1 file changed, 2 insertions(+), 394 deletions(-) diff --git a/fern/apis/api/openapi.json b/fern/apis/api/openapi.json index 05f4a0446..4a0919f88 100644 --- a/fern/apis/api/openapi.json +++ b/fern/apis/api/openapi.json @@ -2992,6 +2992,7 @@ "get": { "operationId": "LoggingController_logsQuery", "summary": "Get Logs", + "deprecated": true, "parameters": [ { "name": "type", @@ -3201,6 +3202,7 @@ "delete": { "operationId": "LoggingController_logsDeleteQuery", "summary": "Delete Logs", + "deprecated": true, "parameters": [ { "name": "type", @@ -24066,400 +24068,6 @@ } } }, - "Eval": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "This is the unique identifier for the evaluation." - }, - "orgId": { - "type": "string", - "description": "This is the unique identifier for the org that this evaluation belongs to." - }, - "createdAt": { - "format": "date-time", - "type": "string", - "description": "This is the ISO 8601 date-time string of when the evaluation was created." - }, - "updatedAt": { - "format": "date-time", - "type": "string", - "description": "This is the ISO 8601 date-time string of when the evaluation was last updated." - }, - "name": { - "type": "string", - "description": "This is the name of the evaluation.", - "maxLength": 80 - }, - "phoneNumberId": { - "type": "string", - "description": "This is the phone number ID associated with this evaluation." - } - }, - "required": [ - "id", - "orgId", - "createdAt", - "updatedAt" - ] - }, - "EvalsPaginatedResponse": { - "type": "object", - "properties": { - "results": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Eval" - } - }, - "metadata": { - "$ref": "#/components/schemas/PaginationMeta" - } - }, - "required": [ - "results", - "metadata" - ] - }, - "CreateEvalDto": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "This is the name of the evaluation.", - "maxLength": 80 - }, - "phoneNumberId": { - "type": "string", - "description": "This is the phone number ID associated with this evaluation." - } - } - }, - "UpdateEvalDto": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "This is the name of the evaluation.", - "maxLength": 80 - }, - "phoneNumberId": { - "type": "string", - "description": "This is the phone number ID associated with this evaluation." - } - } - }, - "EvalTestVoice": { - "type": "object", - "properties": { - "scorers": { - "type": "array", - "description": "These are the scorers used to evaluate the test.", - "items": { - "oneOf": [ - { - "$ref": "#/components/schemas/EvalTestScorerAI", - "title": "AI" - } - ] - } - }, - "type": { - "type": "string", - "description": "This is the type of the test, which must be voice.", - "enum": [ - "voice" - ], - "maxLength": 100 - }, - "id": { - "type": "string", - "description": "This is the unique identifier for the test." - }, - "evalId": { - "type": "string", - "description": "This is the unique identifier for the evaluation this test belongs to." - }, - "createdAt": { - "format": "date-time", - "type": "string", - "description": "This is the ISO 8601 date-time string of when the test was created." - }, - "updatedAt": { - "format": "date-time", - "type": "string", - "description": "This is the ISO 8601 date-time string of when the test was last updated." - }, - "name": { - "type": "string", - "description": "This is the name of the test.", - "maxLength": 80 - }, - "script": { - "type": "string", - "description": "This is the script to be used for the voice test.", - "maxLength": 10000 - }, - "attempts": { - "type": "number", - "description": "This is the number of attempts allowed for the test.", - "minimum": 1, - "maximum": 10 - } - }, - "required": [ - "scorers", - "type", - "id", - "evalId", - "createdAt", - "updatedAt", - "script", - "attempts" - ] - }, - "EvalTest": { - "type": "object", - "properties": { - "scorers": { - "type": "array", - "description": "These are the scorers used to evaluate the test.", - "items": { - "oneOf": [ - { - "$ref": "#/components/schemas/EvalTestScorerAI", - "title": "AI" - } - ] - } - }, - "type": { - "type": "string", - "description": "This is the type of the test, which must be voice.", - "enum": [ - "voice" - ], - "maxLength": 100 - }, - "id": { - "type": "string", - "description": "This is the unique identifier for the test." - }, - "evalId": { - "type": "string", - "description": "This is the unique identifier for the evaluation this test belongs to." - }, - "createdAt": { - "format": "date-time", - "type": "string", - "description": "This is the ISO 8601 date-time string of when the test was created." - }, - "updatedAt": { - "format": "date-time", - "type": "string", - "description": "This is the ISO 8601 date-time string of when the test was last updated." - }, - "name": { - "type": "string", - "description": "This is the name of the test.", - "maxLength": 80 - }, - "script": { - "type": "string", - "description": "This is the script to be used for the voice test.", - "maxLength": 10000 - }, - "attempts": { - "type": "number", - "description": "This is the number of attempts allowed for the test.", - "minimum": 1, - "maximum": 10 - } - }, - "required": [ - "scorers", - "type", - "id", - "evalId", - "createdAt", - "updatedAt", - "script", - "attempts" - ] - }, - "EvalTestsPaginatedResponse": { - "type": "object", - "properties": { - "results": { - "type": "array", - "items": { - "$ref": "#/components/schemas/EvalTest" - } - }, - "metadata": { - "$ref": "#/components/schemas/PaginationMeta" - } - }, - "required": [ - "results", - "metadata" - ] - }, - "EvalRunTestAttemptCall": { - "type": "object", - "properties": { - "artifact": { - "description": "This is the artifact associated with the call.", - "allOf": [ - { - "$ref": "#/components/schemas/Artifact" - } - ] - } - }, - "required": [ - "artifact" - ] - }, - "EvalRunScorer": { - "type": "object", - "properties": {} - }, - "EvalRunTestAttempt": { - "type": "object", - "properties": { - "call": { - "description": "This is the call made during the test attempt.", - "allOf": [ - { - "$ref": "#/components/schemas/EvalRunTestAttemptCall" - } - ] - }, - "scorers": { - "description": "These are the scorers used to evaluate the test attempt.", - "type": "array", - "items": { - "$ref": "#/components/schemas/EvalRunScorer" - } - } - }, - "required": [ - "call", - "scorers" - ] - }, - "EvalRunTestResult": { - "type": "object", - "properties": { - "testId": { - "type": "string", - "description": "This is the unique identifier for the test." - }, - "attempts": { - "description": "These are the attempts made for this test.", - "type": "array", - "items": { - "$ref": "#/components/schemas/EvalRunTestAttempt" - } - } - }, - "required": [ - "testId", - "attempts" - ] - }, - "EvalRun": { - "type": "object", - "properties": { - "status": { - "type": "string", - "description": "This is the current status of the evaluation run.", - "enum": [ - "queued", - "in-progress", - "completed" - ] - }, - "id": { - "type": "string", - "description": "This is the unique identifier for the evaluation run." - }, - "evalId": { - "type": "string", - "description": "This is the unique identifier for the evaluation this run belongs to." - }, - "createdAt": { - "format": "date-time", - "type": "string", - "description": "This is the ISO 8601 date-time string of when the evaluation run was created." - }, - "updatedAt": { - "format": "date-time", - "type": "string", - "description": "This is the ISO 8601 date-time string of when the evaluation run was last updated." - }, - "testResults": { - "description": "These are the results of the tests in this evaluation run.", - "type": "array", - "items": { - "$ref": "#/components/schemas/EvalRunTestResult" - } - }, - "name": { - "type": "string", - "description": "This is the name of the evaluation run.", - "maxLength": 80 - } - }, - "required": [ - "status", - "id", - "evalId", - "createdAt", - "updatedAt", - "testResults" - ] - }, - "EvalRunsPaginatedResponse": { - "type": "object", - "properties": { - "results": { - "type": "array", - "items": { - "$ref": "#/components/schemas/EvalRun" - } - }, - "metadata": { - "$ref": "#/components/schemas/PaginationMeta" - } - }, - "required": [ - "results", - "metadata" - ] - }, - "CreateEvalRunDto": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "This is the name of the evaluation run.", - "maxLength": 80 - } - } - }, - "UpdateEvalRunDto": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "This is the name of the evaluation run.", - "maxLength": 80 - } - } - }, "ClientMessageWorkflowNodeStarted": { "type": "object", "properties": { From e8fdd229c935ce67465479ba476c3bef354bbff2 Mon Sep 17 00:00:00 2001 From: "fern-api[bot]" <115122769+fern-api[bot]@users.noreply.github.com> Date: Wed, 19 Feb 2025 00:02:33 +0000 Subject: [PATCH 2/3] feat(openapi): add new model, update error codes, remove OrgWithOrgUser, add providers --- fern/apis/api/openapi.json | 168 +++++++++++++------------------------ 1 file changed, 58 insertions(+), 110 deletions(-) diff --git a/fern/apis/api/openapi.json b/fern/apis/api/openapi.json index 4a0919f88..20a2c2a8b 100644 --- a/fern/apis/api/openapi.json +++ b/fern/apis/api/openapi.json @@ -7216,7 +7216,8 @@ "description": "This is the name of the model. Ex. cognitivecomputations/dolphin-mixtral-8x7b", "enum": [ "grok-beta", - "grok-2" + "grok-2", + "grok-3" ] }, "provider": { @@ -7362,6 +7363,49 @@ } ] } + }, + "formattersEnabled": { + "type": "array", + "description": "List of formatters to apply. If not provided, all default formatters will be applied.\nIf provided, only the specified formatters will be applied.\nNote: Some essential formatters like angle bracket removal will always be applied.\n@default undefined", + "enum": [ + "markdown", + "asterisk", + "quote", + "dash", + "newline", + "colon", + "acronym", + "dollarAmount", + "email", + "date", + "time", + "distance", + "unit", + "percentage", + "phoneNumber", + "number" + ], + "items": { + "type": "string", + "enum": [ + "markdown", + "asterisk", + "quote", + "dash", + "newline", + "colon", + "acronym", + "dollarAmount", + "email", + "date", + "time", + "distance", + "unit", + "percentage", + "phoneNumber", + "number" + ] + } } } }, @@ -13235,8 +13279,10 @@ "pipeline-error-rime-ai-voice-failed", "pipeline-error-neets-voice-failed", "pipeline-error-smallest-ai-voice-failed", + "pipeline-error-neuphonic-voice-failed", "pipeline-error-deepgram-transcriber-failed", "pipeline-error-gladia-transcriber-failed", + "pipeline-error-speechmatics-transcriber-failed", "pipeline-error-assembly-ai-transcriber-failed", "pipeline-error-talkscriber-transcriber-failed", "pipeline-error-azure-speech-transcriber-failed", @@ -23156,115 +23202,6 @@ "role" ] }, - "OrgWithOrgUser": { - "type": "object", - "properties": { - "hipaaEnabled": { - "type": "boolean", - "description": "When this is enabled, no logs, recordings, or transcriptions will be stored. At the end of the call, you will still receive an end-of-call-report message to store on your server. Defaults to false.\nWhen HIPAA is enabled, only OpenAI/Custom LLM or Azure Providers will be available for LLM and Voice respectively.\nThis is due to the compliance requirements of HIPAA. Other providers may not meet these requirements.", - "example": false - }, - "subscription": { - "$ref": "#/components/schemas/Subscription" - }, - "subscriptionId": { - "type": "string", - "description": "This is the ID of the subscription the org belongs to." - }, - "id": { - "type": "string", - "description": "This is the unique identifier for the org." - }, - "createdAt": { - "format": "date-time", - "type": "string", - "description": "This is the ISO 8601 date-time string of when the org was created." - }, - "updatedAt": { - "format": "date-time", - "type": "string", - "description": "This is the ISO 8601 date-time string of when the org was last updated." - }, - "stripeCustomerId": { - "type": "string", - "description": "This is the Stripe customer for the org." - }, - "stripeSubscriptionId": { - "type": "string", - "description": "This is the subscription for the org." - }, - "stripeSubscriptionItemId": { - "type": "string", - "description": "This is the subscription's subscription item." - }, - "stripeSubscriptionCurrentPeriodStart": { - "format": "date-time", - "type": "string", - "description": "This is the subscription's current period start." - }, - "stripeSubscriptionStatus": { - "type": "string", - "description": "This is the subscription's status." - }, - "plan": { - "description": "This is the plan for the org.", - "allOf": [ - { - "$ref": "#/components/schemas/OrgPlan" - } - ] - }, - "name": { - "type": "string", - "description": "This is the name of the org. This is just for your own reference.", - "maxLength": 40 - }, - "channel": { - "type": "string", - "description": "This is the channel of the org. There is the cluster the API traffic for the org will be directed.", - "enum": [ - "default", - "weekly" - ] - }, - "billingLimit": { - "type": "number", - "description": "This is the monthly billing limit for the org. To go beyond $1000/mo, please contact us at support@vapi.ai.", - "minimum": 0, - "maximum": 1000 - }, - "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", - "description": "This is the concurrency limit for the org. This is the maximum number of calls that can be active at any given time. To go beyond 10, please contact us at support@vapi.ai.", - "minimum": 1, - "maximum": 10 - }, - "invitedByUserId": { - "type": "string" - }, - "role": { - "type": "string", - "enum": [ - "admin", - "editor", - "viewer" - ] - } - }, - "required": [ - "id", - "createdAt", - "updatedAt" - ] - }, "UpdateUserRoleDTO": { "type": "object", "properties": { @@ -23351,6 +23288,7 @@ "deepgram", "lmnt", "neets", + "neuphonic", "openai", "playht", "rime-ai", @@ -24042,6 +23980,7 @@ "deepgram", "lmnt", "neets", + "neuphonic", "openai", "playht", "rime-ai", @@ -24058,6 +23997,7 @@ "deepgram", "lmnt", "neets", + "neuphonic", "openai", "playht", "rime-ai", @@ -24817,8 +24757,10 @@ "pipeline-error-rime-ai-voice-failed", "pipeline-error-neets-voice-failed", "pipeline-error-smallest-ai-voice-failed", + "pipeline-error-neuphonic-voice-failed", "pipeline-error-deepgram-transcriber-failed", "pipeline-error-gladia-transcriber-failed", + "pipeline-error-speechmatics-transcriber-failed", "pipeline-error-assembly-ai-transcriber-failed", "pipeline-error-talkscriber-transcriber-failed", "pipeline-error-azure-speech-transcriber-failed", @@ -25619,8 +25561,10 @@ "pipeline-error-rime-ai-voice-failed", "pipeline-error-neets-voice-failed", "pipeline-error-smallest-ai-voice-failed", + "pipeline-error-neuphonic-voice-failed", "pipeline-error-deepgram-transcriber-failed", "pipeline-error-gladia-transcriber-failed", + "pipeline-error-speechmatics-transcriber-failed", "pipeline-error-assembly-ai-transcriber-failed", "pipeline-error-talkscriber-transcriber-failed", "pipeline-error-azure-speech-transcriber-failed", @@ -27028,6 +26972,10 @@ "title": "SipTransferDestination" } ] + }, + "content": { + "type": "string", + "description": "This is the content to say." } }, "required": [ From fd575b1405abe71a99a306d0cedb84d36bdb89b4 Mon Sep 17 00:00:00 2001 From: "fern-api[bot]" <115122769+fern-api[bot]@users.noreply.github.com> Date: Thu, 20 Feb 2025 00:02:39 +0000 Subject: [PATCH 3/3] feat(openapi): add keyterm prompting and minutes used reset timestamp --- fern/apis/api/openapi.json | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/fern/apis/api/openapi.json b/fern/apis/api/openapi.json index 20a2c2a8b..884b2e807 100644 --- a/fern/apis/api/openapi.json +++ b/fern/apis/api/openapi.json @@ -3576,6 +3576,13 @@ "pattern": "/^\\p{L}[\\p{L}\\d]*(?::[+-]?\\d+)?$/u" } }, + "keyterm": { + "description": "Keyterm Prompting allows you improve Keyword Recall Rate (KRR) for important keyterms or phrases up to 90%.", + "type": "array", + "items": { + "type": "string" + } + }, "endpointing": { "type": "number", "description": "This is the timeout after which Deepgram will send transcription on user silence. You can read in-depth documentation here: https://developers.deepgram.com/docs/endpointing.\n\nHere are the most important bits:\n- Defaults to 10. This is recommended for most use cases to optimize for latency.\n- 10 can cause some missing transcriptions since because of the shorter context. This mostly happens for one-word utterances. For those uses cases, it's recommended to try 300. It will add a bit of latency but the quality and reliability of the experience will be better.\n- If neither 10 nor 300 work, contact support@vapi.ai and we'll find another solution.\n\n@default 10", @@ -22925,14 +22932,19 @@ }, "minutesIncluded": { "type": "number", - "description": "The number of minutes included in the subscription. Enterprise only.", + "description": "The number of minutes included in the subscription.", "minimum": 1 }, "minutesUsed": { "type": "number", - "description": "The number of minutes used in the subscription. Enterprise only.", + "description": "The number of minutes used in the subscription.", "minimum": 1 }, + "minutesUsedNextResetAt": { + "format": "date-time", + "type": "string", + "description": "This is the timestamp at which the number of monthly free minutes is scheduled to reset at." + }, "minutesOverageCost": { "type": "number", "description": "The per minute charge on minutes that exceed the included minutes. Enterprise only." @@ -23195,6 +23207,9 @@ "viewer" ], "type": "string" + }, + "redirectTo": { + "type": "string" } }, "required": [