diff --git a/fern/apis/api/openapi.json b/fern/apis/api/openapi.json index 03be8b53a..eb949620c 100644 --- a/fern/apis/api/openapi.json +++ b/fern/apis/api/openapi.json @@ -3278,6 +3278,1057 @@ } ] } + }, + "/test-suite": { + "get": { + "operationId": "TestSuiteController_findAllPaginated", + "summary": "List Test Suites", + "parameters": [ + { + "name": "page", + "required": false, + "in": "query", + "description": "This is the page number to return. Defaults to 1.", + "schema": { + "minimum": 1, + "type": "number" + } + }, + { + "name": "sortOrder", + "required": false, + "in": "query", + "description": "This is the sort order for pagination. Defaults to 'DESC'.", + "schema": { + "enum": [ + "ASC", + "DESC" + ], + "type": "string" + } + }, + { + "name": "limit", + "required": false, + "in": "query", + "description": "This is the maximum number of items to return. Defaults to 100.", + "schema": { + "minimum": 0, + "maximum": 1000, + "type": "number" + } + }, + { + "name": "createdAtGt", + "required": false, + "in": "query", + "description": "This will return items where the createdAt is greater than the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "createdAtLt", + "required": false, + "in": "query", + "description": "This will return items where the createdAt is less than the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "createdAtGe", + "required": false, + "in": "query", + "description": "This will return items where the createdAt is greater than or equal to the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "createdAtLe", + "required": false, + "in": "query", + "description": "This will return items where the createdAt is less than or equal to the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "updatedAtGt", + "required": false, + "in": "query", + "description": "This will return items where the updatedAt is greater than the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "updatedAtLt", + "required": false, + "in": "query", + "description": "This will return items where the updatedAt is less than the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "updatedAtGe", + "required": false, + "in": "query", + "description": "This will return items where the updatedAt is greater than or equal to the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "updatedAtLe", + "required": false, + "in": "query", + "description": "This will return items where the updatedAt is less than or equal to the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestSuitesPaginatedResponse" + } + } + } + } + }, + "tags": [ + "Test Suites" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "post": { + "operationId": "TestSuiteController_create", + "summary": "Create Test Suite", + "parameters": [], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateTestSuiteDto" + } + } + } + }, + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestSuite" + } + } + } + } + }, + "tags": [ + "Test Suites" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/test-suite/{id}": { + "get": { + "operationId": "TestSuiteController_findOne", + "summary": "Get Test Suite", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestSuite" + } + } + } + } + }, + "tags": [ + "Test Suites" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "patch": { + "operationId": "TestSuiteController_update", + "summary": "Update Test Suite", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateTestSuiteDto" + } + } + } + }, + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestSuite" + } + } + } + } + }, + "tags": [ + "Test Suites" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "delete": { + "operationId": "TestSuiteController_remove", + "summary": "Delete Test Suite", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestSuite" + } + } + } + } + }, + "tags": [ + "Test Suites" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/test-suite/{testSuiteId}/test": { + "get": { + "operationId": "TestSuiteTestController_findAllPaginated", + "summary": "List Tests", + "parameters": [ + { + "name": "testSuiteId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "required": false, + "in": "query", + "description": "This is the page number to return. Defaults to 1.", + "schema": { + "minimum": 1, + "type": "number" + } + }, + { + "name": "sortOrder", + "required": false, + "in": "query", + "description": "This is the sort order for pagination. Defaults to 'DESC'.", + "schema": { + "enum": [ + "ASC", + "DESC" + ], + "type": "string" + } + }, + { + "name": "limit", + "required": false, + "in": "query", + "description": "This is the maximum number of items to return. Defaults to 100.", + "schema": { + "minimum": 0, + "maximum": 1000, + "type": "number" + } + }, + { + "name": "createdAtGt", + "required": false, + "in": "query", + "description": "This will return items where the createdAt is greater than the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "createdAtLt", + "required": false, + "in": "query", + "description": "This will return items where the createdAt is less than the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "createdAtGe", + "required": false, + "in": "query", + "description": "This will return items where the createdAt is greater than or equal to the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "createdAtLe", + "required": false, + "in": "query", + "description": "This will return items where the createdAt is less than or equal to the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "updatedAtGt", + "required": false, + "in": "query", + "description": "This will return items where the updatedAt is greater than the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "updatedAtLt", + "required": false, + "in": "query", + "description": "This will return items where the updatedAt is less than the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "updatedAtGe", + "required": false, + "in": "query", + "description": "This will return items where the updatedAt is greater than or equal to the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "updatedAtLe", + "required": false, + "in": "query", + "description": "This will return items where the updatedAt is less than or equal to the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestSuiteTestsPaginatedResponse" + } + } + } + } + }, + "tags": [ + "Test Suite Tests" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "post": { + "operationId": "TestSuiteTestController_create", + "summary": "Create Test", + "parameters": [ + { + "name": "testSuiteId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "oneOf": [ + { + "$ref": "#/components/schemas/CreateTestSuiteTestVoiceDto", + "title": "TestSuiteTestVoice" + } + ], + "discriminator": { + "propertyName": "type", + "mapping": { + "voice": "#/components/schemas/CreateTestSuiteTestVoiceDto" + } + } + } + } + } + }, + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestSuiteTestVoice" + } + } + } + }, + "default": { + "description": "", + "content": { + "application/json": { + "schema": { + "oneOf": [ + { + "$ref": "#/components/schemas/TestSuiteTestVoice", + "title": "Voice" + } + ], + "discriminator": { + "propertyName": "type", + "mapping": { + "voice": "#/components/schemas/TestSuiteTestVoice" + } + } + } + } + } + } + }, + "tags": [ + "Test Suite Tests" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/test-suite/{testSuiteId}/test/{id}": { + "get": { + "operationId": "TestSuiteTestController_findOne", + "summary": "Get Test", + "parameters": [ + { + "name": "testSuiteId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestSuiteTestVoice" + } + } + } + }, + "default": { + "description": "", + "content": { + "application/json": { + "schema": { + "oneOf": [ + { + "$ref": "#/components/schemas/TestSuiteTestVoice", + "title": "Voice" + } + ], + "discriminator": { + "propertyName": "type", + "mapping": { + "voice": "#/components/schemas/TestSuiteTestVoice" + } + } + } + } + } + } + }, + "tags": [ + "Test Suite Tests" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "patch": { + "operationId": "TestSuiteTestController_update", + "summary": "Update Test", + "parameters": [ + { + "name": "testSuiteId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "oneOf": [ + { + "$ref": "#/components/schemas/UpdateTestSuiteTestVoiceDto", + "title": "TestSuiteTestVoice" + } + ], + "discriminator": { + "propertyName": "type", + "mapping": { + "voice": "#/components/schemas/UpdateTestSuiteTestVoiceDto" + } + } + } + } + } + }, + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestSuiteTestVoice" + } + } + } + }, + "default": { + "description": "", + "content": { + "application/json": { + "schema": { + "oneOf": [ + { + "$ref": "#/components/schemas/TestSuiteTestVoice", + "title": "Voice" + } + ], + "discriminator": { + "propertyName": "type", + "mapping": { + "voice": "#/components/schemas/TestSuiteTestVoice" + } + } + } + } + } + } + }, + "tags": [ + "Test Suite Tests" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "delete": { + "operationId": "TestSuiteTestController_remove", + "summary": "Delete Test", + "parameters": [ + { + "name": "testSuiteId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "oneOf": [ + { + "$ref": "#/components/schemas/TestSuiteTestVoice", + "title": "Voice" + } + ], + "discriminator": { + "propertyName": "type", + "mapping": { + "voice": "#/components/schemas/TestSuiteTestVoice" + } + } + } + } + } + } + }, + "tags": [ + "Test Suite Tests" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/test-suite/{testSuiteId}/run": { + "get": { + "operationId": "TestSuiteRunController_findAllPaginated", + "summary": "List Test Suite Runs", + "parameters": [ + { + "name": "testSuiteId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "required": false, + "in": "query", + "description": "This is the page number to return. Defaults to 1.", + "schema": { + "minimum": 1, + "type": "number" + } + }, + { + "name": "sortOrder", + "required": false, + "in": "query", + "description": "This is the sort order for pagination. Defaults to 'DESC'.", + "schema": { + "enum": [ + "ASC", + "DESC" + ], + "type": "string" + } + }, + { + "name": "limit", + "required": false, + "in": "query", + "description": "This is the maximum number of items to return. Defaults to 100.", + "schema": { + "minimum": 0, + "maximum": 1000, + "type": "number" + } + }, + { + "name": "createdAtGt", + "required": false, + "in": "query", + "description": "This will return items where the createdAt is greater than the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "createdAtLt", + "required": false, + "in": "query", + "description": "This will return items where the createdAt is less than the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "createdAtGe", + "required": false, + "in": "query", + "description": "This will return items where the createdAt is greater than or equal to the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "createdAtLe", + "required": false, + "in": "query", + "description": "This will return items where the createdAt is less than or equal to the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "updatedAtGt", + "required": false, + "in": "query", + "description": "This will return items where the updatedAt is greater than the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "updatedAtLt", + "required": false, + "in": "query", + "description": "This will return items where the updatedAt is less than the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "updatedAtGe", + "required": false, + "in": "query", + "description": "This will return items where the updatedAt is greater than or equal to the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + }, + { + "name": "updatedAtLe", + "required": false, + "in": "query", + "description": "This will return items where the updatedAt is less than or equal to the specified value.", + "schema": { + "format": "date-time", + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestSuiteRunsPaginatedResponse" + } + } + } + } + }, + "tags": [ + "Test Suite Runs" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "post": { + "operationId": "TestSuiteRunController_create", + "summary": "Create Test Suite Run", + "parameters": [ + { + "name": "testSuiteId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateTestSuiteRunDto" + } + } + } + }, + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestSuiteRun" + } + } + } + } + }, + "tags": [ + "Test Suite Runs" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/test-suite/{testSuiteId}/run/{id}": { + "get": { + "operationId": "TestSuiteRunController_findOne", + "summary": "Get Test Suite Run", + "parameters": [ + { + "name": "testSuiteId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestSuiteRun" + } + } + } + } + }, + "tags": [ + "Test Suite Runs" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "patch": { + "operationId": "TestSuiteRunController_update", + "summary": "Update Test Suite Run", + "parameters": [ + { + "name": "testSuiteId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateTestSuiteRunDto" + } + } + } + }, + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestSuiteRun" + } + } + } + } + }, + "tags": [ + "Test Suite Runs" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "delete": { + "operationId": "TestSuiteRunController_remove", + "summary": "Delete Test Suite Run", + "parameters": [ + { + "name": "testSuiteId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TestSuiteRun" + } + } + } + } + }, + "tags": [ + "Test Suite Runs" + ], + "security": [ + { + "bearer": [] + } + ] + } } }, "info": { @@ -5122,12 +6173,13 @@ "properties": { "mode": { "type": "string", - "description": "This configures how transfer is executed and the experience of the destination party receiving the call.\n\nUsage:\n- `blind-transfer`: The assistant forwards the call to the destination without any message or summary.\n- `blind-transfer-add-summary-to-sip-header`: The assistant forwards the call to the destination and adds a SIP header X-Transfer-Summary to the call to include the summary.\n- `warm-transfer-say-message`: The assistant dials the destination, delivers the `message` to the destination party, connects the customer, and leaves the call.\n- `warm-transfer-say-summary`: The assistant dials the destination, provides a summary of the call to the destination party, connects the customer, and leaves the call.\n- `warm-transfer-wait-for-operator-to-speak-first-and-then-say-message`: The assistant dials the destination, waits for the operator to speak, delivers the `message` to the destination party, and then connects the customer.\n- `warm-transfer-wait-for-operator-to-speak-first-and-then-say-summary`: The assistant dials the destination, waits for the operator to speak, provides a summary of the call to the destination party, and then connects the customer.\n\n@default 'blind-transfer'", + "description": "This configures how transfer is executed and the experience of the destination party receiving the call.\n\nUsage:\n- `blind-transfer`: The assistant forwards the call to the destination without any message or summary.\n- `blind-transfer-add-summary-to-sip-header`: The assistant forwards the call to the destination and adds a SIP header X-Transfer-Summary to the call to include the summary.\n- `warm-transfer-say-message`: The assistant dials the destination, delivers the `message` to the destination party, connects the customer, and leaves the call.\n- `warm-transfer-say-summary`: The assistant dials the destination, provides a summary of the call to the destination party, connects the customer, and leaves the call.\n- `warm-transfer-wait-for-operator-to-speak-first-and-then-say-message`: The assistant dials the destination, waits for the operator to speak, delivers the `message` to the destination party, and then connects the customer.\n- `warm-transfer-wait-for-operator-to-speak-first-and-then-say-summary`: The assistant dials the destination, waits for the operator to speak, provides a summary of the call to the destination party, and then connects the customer.\n- `warm-transfer-twiml`: The assistant dials the destination, executes the twiml instructions on the destination call leg, connects the customer, and leaves the call.\n\n@default 'blind-transfer'", "enum": [ "blind-transfer", "blind-transfer-add-summary-to-sip-header", "warm-transfer-say-message", "warm-transfer-say-summary", + "warm-transfer-twiml", "warm-transfer-wait-for-operator-to-speak-first-and-then-say-message", "warm-transfer-wait-for-operator-to-speak-first-and-then-say-summary" ] @@ -5152,6 +6204,11 @@ "bye" ] }, + "twiml": { + "type": "string", + "description": "This is the TwiML instructions to execute on the destination call leg before connecting the customer.\n\nUsage:\n- Used only when `mode` is `warm-transfer-twiml`.\n- Supports only `Play`, `Say`, `Gather`, `Hangup` and `Pause` verbs.\n- Maximum length is 4096 characters.\n\nExample:\n```\nHello, transferring a customer to you.\n\nThey called about billing questions.\n```", + "maxLength": 4096 + }, "summaryPlan": { "description": "This is the plan for generating a summary of the call to present to the destination party.\n\nUsage:\n- Used only when `mode` is `blind-transfer-add-summary-to-sip-header` or `warm-transfer-say-summary` or `warm-transfer-wait-for-operator-to-speak-first-and-then-say-summary`.", "allOf": [ @@ -8322,26 +9379,6 @@ { "type": "string", "enum": [ - "marsh", - "bayou", - "creek", - "brook", - "flower", - "spore", - "glacier", - "gulch", - "alpine", - "cove", - "lagoon", - "tundra", - "steppe", - "mesa", - "grove", - "rainforest", - "moraine", - "wildflower", - "peak", - "boulder", "abbie", "allison", "ally", @@ -8402,7 +9439,29 @@ "tj", "tyler", "viv", - "yadira" + "yadira", + "marsh", + "bayou", + "creek", + "brook", + "flower", + "spore", + "glacier", + "gulch", + "alpine", + "cove", + "lagoon", + "tundra", + "steppe", + "mesa", + "grove", + "rainforest", + "moraine", + "wildflower", + "peak", + "boulder", + "gypsum", + "zest" ], "title": "Preset Voice Options" }, @@ -8417,9 +9476,10 @@ "description": "This is the model that will be used. Defaults to 'v1' when not specified.", "enum": [ "v1", - "mist" + "mist", + "mistv2" ], - "example": "v1" + "example": "mistv2" }, "speed": { "type": "number", @@ -9295,26 +10355,6 @@ { "type": "string", "enum": [ - "marsh", - "bayou", - "creek", - "brook", - "flower", - "spore", - "glacier", - "gulch", - "alpine", - "cove", - "lagoon", - "tundra", - "steppe", - "mesa", - "grove", - "rainforest", - "moraine", - "wildflower", - "peak", - "boulder", "abbie", "allison", "ally", @@ -9375,7 +10415,29 @@ "tj", "tyler", "viv", - "yadira" + "yadira", + "marsh", + "bayou", + "creek", + "brook", + "flower", + "spore", + "glacier", + "gulch", + "alpine", + "cove", + "lagoon", + "tundra", + "steppe", + "mesa", + "grove", + "rainforest", + "moraine", + "wildflower", + "peak", + "boulder", + "gypsum", + "zest" ], "title": "Preset Voice Options" }, @@ -9390,9 +10452,10 @@ "description": "This is the model that will be used. Defaults to 'v1' when not specified.", "enum": [ "v1", - "mist" + "mist", + "mistv2" ], - "example": "v1" + "example": "mistv2" }, "speed": { "type": "number",