openapi: 3.1.0 info: title: Client SDK subpackage_testSuites API version: 1.0.0 servers: - url: https://predict.vellum.ai - url: https://api.vellum.ai - url: https://documents.vellum.ai tags: - name: subpackage_testSuites paths: /v1/test-suites/{id}/test-cases: get: operationId: list-test-suite-test-cases summary: List Test Suite Test Cases description: List the Test Cases associated with a Test Suite tags: - subpackage_testSuites parameters: - name: id in: path description: Either the Test Suites' ID or its unique name required: true schema: type: string - name: limit in: query description: Number of results to return per page. required: false schema: type: integer - name: offset in: query description: The initial index from which to return the results. required: false schema: type: integer - name: X-API-KEY in: header required: true schema: type: string - name: X-API-Version in: header required: false schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PaginatedTestSuiteTestCaseList' post: operationId: upsert-test-suite-test-case summary: Upsert Test Suite Test Case description: 'Upserts a new test case for a test suite, keying off of the optionally provided test case id. If an id is provided and has a match, the test case will be updated. If no id is provided or no match is found, a new test case will be appended to the end. Note that a full replacement of the test case is performed, so any fields not provided will be removed or overwritten with default values.' tags: - subpackage_testSuites parameters: - name: id in: path description: Either the Test Suites' ID or its unique name required: true schema: type: string - name: X-API-KEY in: header required: true schema: type: string - name: X-API-Version in: header required: false schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/TestSuiteTestCase' requestBody: content: application/json: schema: $ref: '#/components/schemas/UpsertTestSuiteTestCaseRequest' /v1/test-suites/{id}/test-cases-bulk: post: operationId: test-suite-test-cases-bulk summary: Test Suite Test Cases Bulk description: Created, replace, and delete Test Cases within the specified Test Suite in bulk tags: - subpackage_testSuites parameters: - name: id in: path description: Either the Test Suites' ID or its unique name required: true schema: type: string - name: X-API-KEY in: header required: true schema: type: string - name: X-API-Version in: header required: false schema: type: string responses: '200': description: '' content: text/event-stream: schema: type: array items: $ref: '#/components/schemas/TestSuiteTestCaseBulkResult' requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/TestSuiteTestCaseBulkOperationRequest' /v1/test-suites/{id}/test-cases/{test_case_id}: delete: operationId: delete-test-suite-test-case summary: Delete Test Suite Test Case description: 'Deletes an existing test case for a test suite, keying off of the test case id. ' tags: - subpackage_testSuites parameters: - name: id in: path description: Either the Test Suites' ID or its unique name required: true schema: type: string - name: test_case_id in: path description: An id identifying the test case that you'd like to delete required: true schema: type: string - name: X-API-KEY in: header required: true schema: type: string - name: X-API-Version in: header required: false schema: type: string responses: '204': description: No response body content: application/json: schema: $ref: '#/components/schemas/test-suites_delete_test_suite_test_case_Response_204' components: schemas: ArrayChatMessageContentRequest: type: object properties: type: $ref: '#/components/schemas/ArrayEnum' value: type: array items: $ref: '#/components/schemas/ArrayChatMessageContentItemRequest' required: - type - value description: A list of chat message content items. title: ArrayChatMessageContentRequest ErrorVellumValue: type: object properties: type: $ref: '#/components/schemas/ErrorEnum' value: oneOf: - $ref: '#/components/schemas/VellumError' - type: 'null' required: - type - value description: A value representing an Error. title: ErrorVellumValue PdfEnum: type: string enum: - PDF title: PdfEnum VideoVellumValueRequest: type: object properties: type: $ref: '#/components/schemas/VideoEnum' value: oneOf: - $ref: '#/components/schemas/VellumVideoRequest' - type: 'null' required: - type - value description: A base Vellum primitive value representing a video. title: VideoVellumValueRequest FunctionCallRequest: type: object properties: arguments: type: object additionalProperties: description: Any type id: type: - string - 'null' name: type: string required: - arguments - name description: The final resolved function call value. title: FunctionCallRequest DocumentVellumValueRequest: type: object properties: type: $ref: '#/components/schemas/DocumentEnum' value: oneOf: - $ref: '#/components/schemas/VellumDocumentRequest' - type: 'null' required: - type - value description: A base Vellum primitive value representing a document. title: DocumentVellumValueRequest SearchResultsVellumValue: type: object properties: type: $ref: '#/components/schemas/SearchResultsEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/SearchResult' required: - type - value description: A value representing Search Results. title: SearchResultsVellumValue ChatHistoryVellumValue: type: object properties: type: $ref: '#/components/schemas/ChatHistoryEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/ChatMessage' required: - type - value description: A value representing Chat History. title: ChatHistoryVellumValue NamedTestCaseJsonVariableValueRequest: type: object properties: type: $ref: '#/components/schemas/JsonEnum' value: oneOf: - description: Any type - type: 'null' name: type: string required: - type - value - name description: Named Test Case value that is of type JSON title: NamedTestCaseJsonVariableValueRequest ArrayVellumValue: type: object properties: type: $ref: '#/components/schemas/ArrayEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/VellumValue' required: - type - value description: A value representing an array of Vellum variable values. title: ArrayVellumValue VideoEnum: type: string enum: - VIDEO title: VideoEnum DocumentChatMessageContentRequest: type: object properties: type: $ref: '#/components/schemas/DocumentEnum' value: $ref: '#/components/schemas/VellumDocumentRequest' required: - type - value description: A document value that is used in a chat message. title: DocumentChatMessageContentRequest ErrorVellumValueRequest: type: object properties: type: $ref: '#/components/schemas/ErrorEnum' value: oneOf: - $ref: '#/components/schemas/VellumErrorRequest' - type: 'null' required: - type - value description: A value representing an Error. title: ErrorVellumValueRequest VideoChatMessageContent: type: object properties: type: $ref: '#/components/schemas/VideoEnum' value: $ref: '#/components/schemas/VellumVideo' required: - type - value description: A video value that is used in a chat message. title: VideoChatMessageContent FunctionCallChatMessageContentValueRequest: type: object properties: name: type: string arguments: type: object additionalProperties: description: Any type id: type: - string - 'null' required: - name - arguments description: The final resolved function call value. title: FunctionCallChatMessageContentValueRequest SearchResultMeta: type: object properties: source: oneOf: - $ref: '#/components/schemas/SearchResultMetaSource' - type: 'null' title: SearchResultMeta TestSuiteTestCaseReplacedBulkResult: type: object properties: id: type: string format: uuid description: An ID that maps back to one of the initially supplied operations. Can be used to determine the result of a given operation. type: $ref: '#/components/schemas/ReplacedEnum' data: $ref: '#/components/schemas/TestSuiteTestCaseReplacedBulkResultData' required: - id - type - data description: The result of a bulk operation that replaced a Test Case. title: TestSuiteTestCaseReplacedBulkResult TestSuiteTestCaseRejectedBulkResult: type: object properties: id: type: - string - 'null' format: uuid description: An ID that maps back to one of the initially supplied operations. Can be used to determine the result of a given operation. type: $ref: '#/components/schemas/RejectedEnum' data: type: object additionalProperties: description: Any type description: Details about the error that occurred required: - type - data description: The result of a bulk operation that failed to operate on a Test Case. title: TestSuiteTestCaseRejectedBulkResult VideoChatMessageContentRequest: type: object properties: type: $ref: '#/components/schemas/VideoEnum' value: $ref: '#/components/schemas/VellumVideoRequest' required: - type - value description: A video value that is used in a chat message. title: VideoChatMessageContentRequest AudioVellumValue: type: object properties: type: $ref: '#/components/schemas/AudioEnum' value: oneOf: - $ref: '#/components/schemas/VellumAudio' - type: 'null' required: - type - value description: A base Vellum primitive value representing audio. title: AudioVellumValue DeletedEnum: type: string enum: - DELETED title: DeletedEnum ArrayChatMessageContent: type: object properties: type: $ref: '#/components/schemas/ArrayEnum' value: type: array items: $ref: '#/components/schemas/ArrayChatMessageContentItem' required: - type - value description: A list of chat message content items. title: ArrayChatMessageContent ChatMessageRole: type: string enum: - SYSTEM - ASSISTANT - USER - FUNCTION description: '* `SYSTEM` - System * `ASSISTANT` - Assistant * `USER` - User * `FUNCTION` - Function' title: ChatMessageRole NumberEnum: type: string enum: - NUMBER title: NumberEnum FunctionCallVellumValueRequest: type: object properties: type: $ref: '#/components/schemas/FunctionCallEnum' value: oneOf: - $ref: '#/components/schemas/FunctionCallRequest' - type: 'null' required: - type - value description: A value representing a Function Call. title: FunctionCallVellumValueRequest SearchResultMetaRequest: type: object properties: source: oneOf: - $ref: '#/components/schemas/SearchResultMetaSourceRequest' - type: 'null' title: SearchResultMetaRequest TestCaseNumberVariableValue: type: object properties: variable_id: type: string name: type: string type: $ref: '#/components/schemas/NumberEnum' value: type: - number - 'null' format: double required: - variable_id - name - type - value description: A numerical value for a variable in a Test Case. title: TestCaseNumberVariableValue ArrayChatMessageContentItemRequest: oneOf: - $ref: '#/components/schemas/StringChatMessageContentRequest' - $ref: '#/components/schemas/FunctionCallChatMessageContentRequest' - $ref: '#/components/schemas/AudioChatMessageContentRequest' - $ref: '#/components/schemas/VideoChatMessageContentRequest' - $ref: '#/components/schemas/ImageChatMessageContentRequest' - $ref: '#/components/schemas/DocumentChatMessageContentRequest' title: ArrayChatMessageContentItemRequest TestSuiteTestCaseDeletedBulkResultData: type: object properties: id: type: string required: - id description: Information about the Test Case that was deleted title: TestSuiteTestCaseDeletedBulkResultData NamedTestCaseFunctionCallVariableValueRequest: type: object properties: type: $ref: '#/components/schemas/FunctionCallEnum' value: oneOf: - $ref: '#/components/schemas/FunctionCallRequest' - type: 'null' name: type: string required: - type - value - name description: Named Test Case value that is of type FUNCTION_CALL title: NamedTestCaseFunctionCallVariableValueRequest StringChatMessageContentRequest: type: object properties: type: $ref: '#/components/schemas/StringEnum' value: type: string required: - type - value description: A string value that is used in a chat message. title: StringChatMessageContentRequest ChatHistoryVellumValueRequest: type: object properties: type: $ref: '#/components/schemas/ChatHistoryEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/ChatMessageRequest' required: - type - value description: A value representing Chat History. title: ChatHistoryVellumValueRequest VellumImage: type: object properties: src: type: string description: "The reference to the source data. This can be one of the following formats:\n1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').\n2. A url pointing to a file accessible over HTTP or HTTPS.\n3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.\n You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details." metadata: type: - object - 'null' additionalProperties: description: Any type required: - src title: VellumImage NamedTestCaseChatHistoryVariableValueRequest: type: object properties: type: $ref: '#/components/schemas/ChatHistoryEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/ChatMessageRequest' name: type: string required: - type - value - name description: Named Test Case value that is of type CHAT_HISTORY title: NamedTestCaseChatHistoryVariableValueRequest PaginatedTestSuiteTestCaseList: type: object properties: count: type: integer next: type: - string - 'null' format: uri previous: type: - string - 'null' format: uri results: type: array items: $ref: '#/components/schemas/TestSuiteTestCase' required: - count - next - previous - results title: PaginatedTestSuiteTestCaseList TestCaseChatHistoryVariableValue: type: object properties: variable_id: type: string name: type: string type: $ref: '#/components/schemas/ChatHistoryEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/ChatMessage' required: - variable_id - name - type - value description: A chat history value for a variable in a Test Case. title: TestCaseChatHistoryVariableValue TestCaseSearchResultsVariableValue: type: object properties: variable_id: type: string name: type: string type: $ref: '#/components/schemas/SearchResultsEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/SearchResult' required: - variable_id - name - type - value description: A search results value for a variable in a Test Case. title: TestCaseSearchResultsVariableValue StringVellumValue: type: object properties: type: $ref: '#/components/schemas/StringEnum' value: type: - string - 'null' required: - type - value description: A value representing a string. title: StringVellumValue NamedTestCaseDocumentVariableValueRequest: type: object properties: type: $ref: '#/components/schemas/DocumentEnum' value: oneOf: - $ref: '#/components/schemas/VellumDocumentRequest' - type: 'null' name: type: string required: - type - value - name title: NamedTestCaseDocumentVariableValueRequest TestCaseFunctionCallVariableValue: type: object properties: variable_id: type: string name: type: string type: $ref: '#/components/schemas/FunctionCallEnum' value: oneOf: - $ref: '#/components/schemas/FunctionCall' - type: 'null' required: - variable_id - name - type - value description: A function call value for a variable in a Test Case. title: TestCaseFunctionCallVariableValue TestCaseVariableValue: oneOf: - $ref: '#/components/schemas/TestCaseStringVariableValue' - $ref: '#/components/schemas/TestCaseNumberVariableValue' - $ref: '#/components/schemas/TestCaseJsonVariableValue' - $ref: '#/components/schemas/TestCaseChatHistoryVariableValue' - $ref: '#/components/schemas/TestCaseSearchResultsVariableValue' - $ref: '#/components/schemas/TestCaseErrorVariableValue' - $ref: '#/components/schemas/TestCaseFunctionCallVariableValue' - $ref: '#/components/schemas/TestCaseArrayVariableValue' - $ref: '#/components/schemas/TestCaseAudioVariableValue' - $ref: '#/components/schemas/TestCaseImageVariableValue' - $ref: '#/components/schemas/TestCaseVideoVariableValue' - $ref: '#/components/schemas/TestCaseDocumentVariableValue' title: TestCaseVariableValue TestCaseAudioVariableValue: type: object properties: variable_id: type: string name: type: string type: $ref: '#/components/schemas/AudioEnum' value: oneOf: - $ref: '#/components/schemas/VellumAudio' - type: 'null' required: - variable_id - name - type - value description: An audio value for a variable in a Test Case. title: TestCaseAudioVariableValue VellumDocumentRequest: type: object properties: src: type: string description: "The reference to the source data. This can be one of the following formats:\n1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').\n2. A url pointing to a file accessible over HTTP or HTTPS.\n3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.\n You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details." metadata: type: - object - 'null' additionalProperties: description: Any type required: - src title: VellumDocumentRequest ImageVellumValueRequest: type: object properties: type: $ref: '#/components/schemas/ImageEnum' value: oneOf: - $ref: '#/components/schemas/VellumImageRequest' - type: 'null' required: - type - value description: A base Vellum primitive value representing an image. title: ImageVellumValueRequest VellumDocument: type: object properties: src: type: string description: "The reference to the source data. This can be one of the following formats:\n1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').\n2. A url pointing to a file accessible over HTTP or HTTPS.\n3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.\n You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details." metadata: type: - object - 'null' additionalProperties: description: Any type required: - src title: VellumDocument TestSuiteTestCaseUpsertBulkOperationRequest: type: object properties: id: type: string format: uuid description: An ID representing this specific operation. Can later be used to look up information about the operation's success in the response. type: $ref: '#/components/schemas/UpsertEnum' data: $ref: '#/components/schemas/UpsertTestSuiteTestCaseRequest' required: - id - type - data description: A bulk operation that represents the upserting of a Test Case. title: TestSuiteTestCaseUpsertBulkOperationRequest VideoVellumValue: type: object properties: type: $ref: '#/components/schemas/VideoEnum' value: oneOf: - $ref: '#/components/schemas/VellumVideo' - type: 'null' required: - type - value description: A base Vellum primitive value representing a video. title: VideoVellumValue PdfSearchResultMetaSource: type: object properties: document_type: $ref: '#/components/schemas/PdfEnum' start_page_num: type: - integer - 'null' description: The 1-indexed page number where the chunk starts in the document. Only available for supported chunking strategies and document types. end_page_num: type: - integer - 'null' description: The 1-indexed page number where the chunk ends in the document. Only available for supported chunking strategies and document types. required: - document_type - start_page_num - end_page_num description: The source of a search result from a PDF document. title: PdfSearchResultMetaSource ArrayVellumValueRequest: type: object properties: type: $ref: '#/components/schemas/ArrayEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/VellumValueRequest' required: - type - value description: A value representing an array of Vellum variable values. title: ArrayVellumValueRequest ThinkingVellumValueRequest: type: object properties: type: $ref: '#/components/schemas/ThinkingEnum' value: oneOf: - $ref: '#/components/schemas/StringVellumValueRequest' - type: 'null' required: - type - value description: A value representing Thinking mode output. title: ThinkingVellumValueRequest CreateTestSuiteTestCaseRequest: type: object properties: label: type: - string - 'null' description: A human-readable label used to convey the intention of this Test Case input_values: type: array items: $ref: '#/components/schemas/NamedTestCaseVariableValueRequest' description: Values for each of the Test Case's input variables evaluation_values: type: array items: $ref: '#/components/schemas/NamedTestCaseVariableValueRequest' description: Values for each of the Test Case's evaluation variables external_id: type: - string - 'null' description: Optionally provide an ID that uniquely identifies this Test Case in your system. Useful for updating this Test Cases data after initial creation. Cannot be changed later. required: - input_values - evaluation_values description: Information about the Test Case to create title: CreateTestSuiteTestCaseRequest ImageChatMessageContentRequest: type: object properties: type: $ref: '#/components/schemas/ImageEnum' value: $ref: '#/components/schemas/VellumImageRequest' required: - type - value description: An image value that is used in a chat message. title: ImageChatMessageContentRequest TestSuiteTestCaseDeleteBulkOperationRequest: type: object properties: id: type: string format: uuid description: An ID representing this specific operation. Can later be used to look up information about the operation's success in the response. type: $ref: '#/components/schemas/DeleteEnum' data: $ref: '#/components/schemas/TestSuiteTestCaseDeleteBulkOperationDataRequest' description: Information about the Test Case to delete required: - id - type - data description: A bulk operation that represents the deletion of a Test Case. title: TestSuiteTestCaseDeleteBulkOperationRequest AudioEnum: type: string enum: - AUDIO title: AudioEnum ImageEnum: type: string enum: - IMAGE title: ImageEnum FunctionCall: type: object properties: arguments: type: object additionalProperties: description: Any type id: type: - string - 'null' name: type: string required: - arguments - name description: The final resolved function call value. title: FunctionCall JsonVellumValue: type: object properties: type: $ref: '#/components/schemas/JsonEnum' value: oneOf: - description: Any type - type: 'null' required: - type - value description: A value representing a JSON object. title: JsonVellumValue StringChatMessageContent: type: object properties: type: $ref: '#/components/schemas/StringEnum' value: type: string required: - type - value description: A string value that is used in a chat message. title: StringChatMessageContent VellumError: type: object properties: code: $ref: '#/components/schemas/VellumErrorCodeEnum' message: type: string raw_data: type: - object - 'null' additionalProperties: description: Any type required: - code - message title: VellumError TestSuiteTestCaseCreatedBulkResultData: type: object properties: id: type: string required: - id description: Information about the Test Case that was created. title: TestSuiteTestCaseCreatedBulkResultData FunctionCallChatMessageContentValue: type: object properties: name: type: string arguments: type: object additionalProperties: description: Any type id: type: - string - 'null' required: - name - arguments description: The final resolved function call value. title: FunctionCallChatMessageContentValue DocumentChatMessageContent: type: object properties: type: $ref: '#/components/schemas/DocumentEnum' value: $ref: '#/components/schemas/VellumDocument' required: - type - value description: A document value that is used in a chat message. title: DocumentChatMessageContent FunctionCallChatMessageContentRequest: type: object properties: type: $ref: '#/components/schemas/FunctionCallEnum' value: $ref: '#/components/schemas/FunctionCallChatMessageContentValueRequest' required: - type - value description: A function call value that is used in a chat message. title: FunctionCallChatMessageContentRequest TestSuiteTestCaseDeletedBulkResult: type: object properties: id: type: string format: uuid description: An ID that maps back to one of the initially supplied operations. Can be used to determine the result of a given operation. type: $ref: '#/components/schemas/DeletedEnum' data: $ref: '#/components/schemas/TestSuiteTestCaseDeletedBulkResultData' required: - id - type - data description: The result of a bulk operation that deleted a Test Case. title: TestSuiteTestCaseDeletedBulkResult ChatMessageContent: oneOf: - $ref: '#/components/schemas/StringChatMessageContent' - $ref: '#/components/schemas/FunctionCallChatMessageContent' - $ref: '#/components/schemas/ArrayChatMessageContent' - $ref: '#/components/schemas/AudioChatMessageContent' - $ref: '#/components/schemas/VideoChatMessageContent' - $ref: '#/components/schemas/ImageChatMessageContent' - $ref: '#/components/schemas/DocumentChatMessageContent' title: ChatMessageContent NamedTestCaseArrayVariableValueRequest: type: object properties: type: $ref: '#/components/schemas/ArrayEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/VellumValueRequest' name: type: string required: - type - value - name description: Named Test Case value that is of type ARRAY title: NamedTestCaseArrayVariableValueRequest VellumVideoRequest: type: object properties: src: type: string description: "The reference to the source data. This can be one of the following formats:\n1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').\n2. A url pointing to a file accessible over HTTP or HTTPS.\n3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.\n You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details." metadata: type: - object - 'null' additionalProperties: description: Any type required: - src title: VellumVideoRequest StringEnum: type: string enum: - STRING title: StringEnum DocumentVellumValue: type: object properties: type: $ref: '#/components/schemas/DocumentEnum' value: oneOf: - $ref: '#/components/schemas/VellumDocument' - type: 'null' required: - type - value description: A base Vellum primitive value representing a document. title: DocumentVellumValue NamedTestCaseAudioVariableValueRequest: type: object properties: type: $ref: '#/components/schemas/AudioEnum' value: oneOf: - $ref: '#/components/schemas/VellumAudioRequest' - type: 'null' name: type: string required: - type - value - name description: Named Test Case value that is of type AUDIO title: NamedTestCaseAudioVariableValueRequest NumberVellumValue: type: object properties: type: $ref: '#/components/schemas/NumberEnum' value: type: - number - 'null' format: double required: - type - value description: A value representing a number. title: NumberVellumValue TestSuiteTestCaseDeleteBulkOperationDataRequest: type: object properties: id: type: string required: - id title: TestSuiteTestCaseDeleteBulkOperationDataRequest RejectedEnum: type: string enum: - REJECTED title: RejectedEnum SearchResultRequest: type: object properties: text: type: string description: The text of the chunk that matched the search query. score: type: number format: double description: A score representing how well the chunk matches the search query. keywords: type: array items: type: string document: $ref: '#/components/schemas/SearchResultDocumentRequest' description: The document that contains the chunk that matched the search query. meta: oneOf: - $ref: '#/components/schemas/SearchResultMetaRequest' - type: 'null' description: Additional information about the search result. required: - text - score - keywords - document title: SearchResultRequest NamedTestCaseSearchResultsVariableValueRequest: type: object properties: type: $ref: '#/components/schemas/SearchResultsEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/SearchResultRequest' name: type: string required: - type - value - name description: Named Test Case value that is of type SEARCH_RESULTS title: NamedTestCaseSearchResultsVariableValueRequest TestCaseErrorVariableValue: type: object properties: variable_id: type: string name: type: string type: $ref: '#/components/schemas/ErrorEnum' value: oneOf: - $ref: '#/components/schemas/VellumError' - type: 'null' required: - variable_id - name - type - value description: An error value for a variable in a Test Case. title: TestCaseErrorVariableValue ThinkingEnum: type: string enum: - THINKING title: ThinkingEnum NamedTestCaseNumberVariableValueRequest: type: object properties: type: $ref: '#/components/schemas/NumberEnum' value: type: - number - 'null' format: double name: type: string required: - type - value - name description: Named Test Case value that is of type NUMBER title: NamedTestCaseNumberVariableValueRequest NamedTestCaseErrorVariableValueRequest: type: object properties: type: $ref: '#/components/schemas/ErrorEnum' value: oneOf: - $ref: '#/components/schemas/VellumErrorRequest' - type: 'null' name: type: string required: - type - value - name description: Named Test Case value that is of type ERROR title: NamedTestCaseErrorVariableValueRequest ReplacedEnum: type: string enum: - REPLACED title: ReplacedEnum TestCaseDocumentVariableValue: type: object properties: variable_id: type: string name: type: string type: $ref: '#/components/schemas/DocumentEnum' value: oneOf: - $ref: '#/components/schemas/VellumDocument' - type: 'null' required: - variable_id - name - type - value description: A document value for a variable in a Test Case. title: TestCaseDocumentVariableValue TestSuiteTestCaseCreateBulkOperationRequest: type: object properties: id: type: string format: uuid description: An ID representing this specific operation. Can later be used to look up information about the operation's success in the response. type: $ref: '#/components/schemas/CreateEnum' data: $ref: '#/components/schemas/CreateTestSuiteTestCaseRequest' required: - id - type - data description: A bulk operation that represents the creation of a Test Case. title: TestSuiteTestCaseCreateBulkOperationRequest UpsertEnum: type: string enum: - UPSERT title: UpsertEnum FunctionCallVellumValue: type: object properties: type: $ref: '#/components/schemas/FunctionCallEnum' value: oneOf: - $ref: '#/components/schemas/FunctionCall' - type: 'null' required: - type - value description: A value representing a Function Call. title: FunctionCallVellumValue TestCaseStringVariableValue: type: object properties: variable_id: type: string name: type: string type: $ref: '#/components/schemas/StringEnum' value: type: - string - 'null' required: - variable_id - name - type - value description: A string value for a variable in a Test Case. title: TestCaseStringVariableValue SearchResultsVellumValueRequest: type: object properties: type: $ref: '#/components/schemas/SearchResultsEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/SearchResultRequest' required: - type - value description: A value representing Search Results. title: SearchResultsVellumValueRequest AudioChatMessageContentRequest: type: object properties: type: $ref: '#/components/schemas/AudioEnum' value: $ref: '#/components/schemas/VellumAudioRequest' required: - type - value description: An audio value that is used in a chat message. title: AudioChatMessageContentRequest AudioVellumValueRequest: type: object properties: type: $ref: '#/components/schemas/AudioEnum' value: oneOf: - $ref: '#/components/schemas/VellumAudioRequest' - type: 'null' required: - type - value description: A base Vellum primitive value representing audio. title: AudioVellumValueRequest ImageVellumValue: type: object properties: type: $ref: '#/components/schemas/ImageEnum' value: oneOf: - $ref: '#/components/schemas/VellumImage' - type: 'null' required: - type - value description: A base Vellum primitive value representing an image. title: ImageVellumValue JsonEnum: type: string enum: - JSON title: JsonEnum NamedTestCaseImageVariableValueRequest: type: object properties: type: $ref: '#/components/schemas/ImageEnum' value: oneOf: - $ref: '#/components/schemas/VellumImageRequest' - type: 'null' name: type: string required: - type - value - name title: NamedTestCaseImageVariableValueRequest DeleteEnum: type: string enum: - DELETE title: DeleteEnum FunctionCallEnum: type: string enum: - FUNCTION_CALL title: FunctionCallEnum SearchResultsEnum: type: string enum: - SEARCH_RESULTS title: SearchResultsEnum SearchResultDocumentRequest: type: object properties: id: type: - string - 'null' format: uuid description: The ID of the document. label: type: string description: The human-readable name for the document. external_id: type: - string - 'null' description: The unique ID of the document as represented in an external system and specified when it was originally uploaded. metadata: type: - object - 'null' additionalProperties: description: Any type description: A previously supplied JSON object containing metadata that can be filtered on when searching. required: - label title: SearchResultDocumentRequest VellumAudioRequest: type: object properties: src: type: string description: "The reference to the source data. This can be one of the following formats:\n1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').\n2. A url pointing to a file accessible over HTTP or HTTPS.\n3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.\n You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details." metadata: type: - object - 'null' additionalProperties: description: Any type required: - src title: VellumAudioRequest JsonVellumValueRequest: type: object properties: type: $ref: '#/components/schemas/JsonEnum' value: oneOf: - description: Any type - type: 'null' required: - type - value description: A value representing a JSON object. title: JsonVellumValueRequest TestSuiteTestCaseCreatedBulkResult: type: object properties: id: type: string format: uuid type: $ref: '#/components/schemas/CreatedEnum' data: $ref: '#/components/schemas/TestSuiteTestCaseCreatedBulkResultData' required: - id - type - data description: The result of a bulk operation that created a Test Case. title: TestSuiteTestCaseCreatedBulkResult ArrayEnum: type: string enum: - ARRAY title: ArrayEnum TestCaseArrayVariableValue: type: object properties: variable_id: type: string name: type: string type: $ref: '#/components/schemas/ArrayEnum' value: type: - array - 'null' items: $ref: '#/components/schemas/VellumValue' required: - variable_id - name - type - value description: An Array value for a variable in a Test Case. title: TestCaseArrayVariableValue VellumValueRequest: oneOf: - $ref: '#/components/schemas/StringVellumValueRequest' - $ref: '#/components/schemas/NumberVellumValueRequest' - $ref: '#/components/schemas/JsonVellumValueRequest' - $ref: '#/components/schemas/AudioVellumValueRequest' - $ref: '#/components/schemas/VideoVellumValueRequest' - $ref: '#/components/schemas/ImageVellumValueRequest' - $ref: '#/components/schemas/DocumentVellumValueRequest' - $ref: '#/components/schemas/FunctionCallVellumValueRequest' - $ref: '#/components/schemas/ErrorVellumValueRequest' - $ref: '#/components/schemas/ArrayVellumValueRequest' - $ref: '#/components/schemas/ChatHistoryVellumValueRequest' - $ref: '#/components/schemas/SearchResultsVellumValueRequest' - $ref: '#/components/schemas/ThinkingVellumValueRequest' title: VellumValueRequest VellumErrorRequest: type: object properties: code: $ref: '#/components/schemas/VellumErrorCodeEnum' message: type: string raw_data: type: - object - 'null' additionalProperties: description: Any type required: - code - message title: VellumErrorRequest VellumErrorCodeEnum: type: string enum: - INVALID_REQUEST - INVALID_INPUTS - PROVIDER_ERROR - PROVIDER_CREDENTIALS_UNAVAILABLE - INTEGRATION_CREDENTIALS_UNAVAILABLE - REQUEST_TIMEOUT - INTERNAL_SERVER_ERROR - USER_DEFINED_ERROR - WORKFLOW_CANCELLED - NODE_CANCELLED - PROVIDER_QUOTA_EXCEEDED - CHAT_QUOTA_EXCEEDED description: '* `INVALID_REQUEST` - INVALID_REQUEST * `INVALID_INPUTS` - INVALID_INPUTS * `PROVIDER_ERROR` - PROVIDER_ERROR * `PROVIDER_CREDENTIALS_UNAVAILABLE` - PROVIDER_CREDENTIALS_UNAVAILABLE * `INTEGRATION_CREDENTIALS_UNAVAILABLE` - INTEGRATION_CREDENTIALS_UNAVAILABLE * `REQUEST_TIMEOUT` - REQUEST_TIMEOUT * `INTERNAL_SERVER_ERROR` - INTERNAL_SERVER_ERROR * `USER_DEFINED_ERROR` - USER_DEFINED_ERROR * `WORKFLOW_CANCELLED` - WORKFLOW_CANCELLED * `NODE_CANCELLED` - NODE_CANCELLED * `PROVIDER_QUOTA_EXCEEDED` - PROVIDER_QUOTA_EXCEEDED * `CHAT_QUOTA_EXCEEDED` - CHAT_QUOTA_EXCEEDED' title: VellumErrorCodeEnum VellumVideo: type: object properties: src: type: string description: "The reference to the source data. This can be one of the following formats:\n1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').\n2. A url pointing to a file accessible over HTTP or HTTPS.\n3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.\n You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details." metadata: type: - object - 'null' additionalProperties: description: Any type required: - src title: VellumVideo NamedTestCaseVideoVariableValueRequest: type: object properties: type: $ref: '#/components/schemas/VideoEnum' value: oneOf: - $ref: '#/components/schemas/VellumVideoRequest' - type: 'null' name: type: string required: - type - value - name title: NamedTestCaseVideoVariableValueRequest TestCaseVideoVariableValue: type: object properties: variable_id: type: string name: type: string type: $ref: '#/components/schemas/VideoEnum' value: oneOf: - $ref: '#/components/schemas/VellumVideo' - type: 'null' required: - variable_id - name - type - value description: A video value for a variable in a Test Case. title: TestCaseVideoVariableValue ErrorEnum: type: string enum: - ERROR title: ErrorEnum UpsertTestSuiteTestCaseRequest: type: object properties: id: type: string format: uuid description: The Vellum-generated ID of an existing Test Case whose data you'd like to replace. If specified and no Test Case exists with this ID, a 404 will be returned. external_id: type: string description: An ID external to Vellum that uniquely identifies the Test Case that you'd like to create/update. If there's a match on a Test Case that was previously created with the same external_id, it will be updated. Otherwise, a new Test Case will be created with this value as its external_id. If no external_id is specified, then a new Test Case will always be created. label: type: - string - 'null' description: A human-readable label used to convey the intention of this Test Case input_values: type: array items: $ref: '#/components/schemas/NamedTestCaseVariableValueRequest' description: Values for each of the Test Case's input variables evaluation_values: type: array items: $ref: '#/components/schemas/NamedTestCaseVariableValueRequest' description: Values for each of the Test Case's evaluation variables required: - input_values - evaluation_values title: UpsertTestSuiteTestCaseRequest ReplaceTestSuiteTestCaseRequest: type: object properties: id: type: - string - 'null' format: uuid description: The Vellum-generated ID of the Test Case whose data you'd like to replace. Must specify either this or external_id. external_id: type: - string - 'null' description: The ID that was originally provided upon Test Case creation that uniquely identifies the Test Case whose data you'd like to replace. Must specify either this of id. label: type: - string - 'null' description: A human-readable label used to convey the intention of this Test Case input_values: type: array items: $ref: '#/components/schemas/NamedTestCaseVariableValueRequest' description: Values for each of the Test Case's input variables evaluation_values: type: array items: $ref: '#/components/schemas/NamedTestCaseVariableValueRequest' description: Values for each of the Test Case's evaluation variables required: - input_values - evaluation_values description: Information about the Test Case to replace title: ReplaceTestSuiteTestCaseRequest CreatedEnum: type: string enum: - CREATED title: CreatedEnum PdfSearchResultMetaSourceRequest: type: object properties: document_type: $ref: '#/components/schemas/PdfEnum' start_page_num: type: - integer - 'null' description: The 1-indexed page number where the chunk starts in the document. Only available for supported chunking strategies and document types. end_page_num: type: - integer - 'null' description: The 1-indexed page number where the chunk ends in the document. Only available for supported chunking strategies and document types. required: - document_type - start_page_num - end_page_num description: The source of a search result from a PDF document. title: PdfSearchResultMetaSourceRequest ChatMessageRequest: type: object properties: text: type: - string - 'null' role: $ref: '#/components/schemas/ChatMessageRole' content: oneOf: - $ref: '#/components/schemas/ChatMessageContentRequest' - type: 'null' source: type: - string - 'null' description: An optional identifier representing who or what generated this message. metadata: type: - object - 'null' additionalProperties: description: Any type required: - role title: ChatMessageRequest ChatMessage: type: object properties: text: type: - string - 'null' role: $ref: '#/components/schemas/ChatMessageRole' content: oneOf: - $ref: '#/components/schemas/ChatMessageContent' - type: 'null' source: type: - string - 'null' description: An optional identifier representing who or what generated this message. metadata: type: - object - 'null' additionalProperties: description: Any type required: - role title: ChatMessage NamedTestCaseStringVariableValueRequest: type: object properties: type: $ref: '#/components/schemas/StringEnum' value: type: - string - 'null' name: type: string required: - type - value - name description: Named Test Case value that is of type STRING title: NamedTestCaseStringVariableValueRequest NumberVellumValueRequest: type: object properties: type: $ref: '#/components/schemas/NumberEnum' value: type: - number - 'null' format: double required: - type - value description: A value representing a number. title: NumberVellumValueRequest AudioChatMessageContent: type: object properties: type: $ref: '#/components/schemas/AudioEnum' value: $ref: '#/components/schemas/VellumAudio' required: - type - value description: An audio value that is used in a chat message. title: AudioChatMessageContent TestSuiteTestCaseReplacedBulkResultData: type: object properties: id: type: string required: - id description: Information about the Test Case that was replaced title: TestSuiteTestCaseReplacedBulkResultData DocumentEnum: type: string enum: - DOCUMENT title: DocumentEnum VellumImageRequest: type: object properties: src: type: string description: "The reference to the source data. This can be one of the following formats:\n1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').\n2. A url pointing to a file accessible over HTTP or HTTPS.\n3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.\n You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details." metadata: type: - object - 'null' additionalProperties: description: Any type required: - src title: VellumImageRequest CreateEnum: type: string enum: - CREATE title: CreateEnum ChatHistoryEnum: type: string enum: - CHAT_HISTORY title: ChatHistoryEnum FunctionCallChatMessageContent: type: object properties: type: $ref: '#/components/schemas/FunctionCallEnum' value: $ref: '#/components/schemas/FunctionCallChatMessageContentValue' required: - type - value description: A function call value that is used in a chat message. title: FunctionCallChatMessageContent TestSuiteTestCaseReplaceBulkOperationRequest: type: object properties: id: type: string format: uuid description: An ID representing this specific operation. Can later be used to look up information about the operation's success in the response. type: $ref: '#/components/schemas/ReplaceEnum' data: $ref: '#/components/schemas/ReplaceTestSuiteTestCaseRequest' required: - id - type - data description: A bulk operation that represents the replacing of a Test Case. title: TestSuiteTestCaseReplaceBulkOperationRequest TestSuiteTestCase: type: object properties: id: type: string external_id: type: - string - 'null' label: type: - string - 'null' input_values: type: array items: $ref: '#/components/schemas/TestCaseVariableValue' evaluation_values: type: array items: $ref: '#/components/schemas/TestCaseVariableValue' required: - input_values - evaluation_values title: TestSuiteTestCase ImageChatMessageContent: type: object properties: type: $ref: '#/components/schemas/ImageEnum' value: $ref: '#/components/schemas/VellumImage' required: - type - value description: An image value that is used in a chat message. title: ImageChatMessageContent SearchResult: type: object properties: text: type: string description: The text of the chunk that matched the search query. score: type: number format: double description: A score representing how well the chunk matches the search query. keywords: type: array items: type: string document: $ref: '#/components/schemas/SearchResultDocument' description: The document that contains the chunk that matched the search query. meta: oneOf: - $ref: '#/components/schemas/SearchResultMeta' - type: 'null' description: Additional information about the search result. required: - text - score - keywords - document title: SearchResult ReplaceEnum: type: string enum: - REPLACE title: ReplaceEnum ChatMessageContentRequest: oneOf: - $ref: '#/components/schemas/StringChatMessageContentRequest' - $ref: '#/components/schemas/FunctionCallChatMessageContentRequest' - $ref: '#/components/schemas/ArrayChatMessageContentRequest' - $ref: '#/components/schemas/AudioChatMessageContentRequest' - $ref: '#/components/schemas/VideoChatMessageContentRequest' - $ref: '#/components/schemas/ImageChatMessageContentRequest' - $ref: '#/components/schemas/DocumentChatMessageContentRequest' title: ChatMessageContentRequest ThinkingVellumValue: type: object properties: type: $ref: '#/components/schemas/ThinkingEnum' value: oneOf: - $ref: '#/components/schemas/StringVellumValue' - type: 'null' required: - type - value description: A value representing Thinking mode output. title: ThinkingVellumValue VellumAudio: type: object properties: src: type: string description: "The reference to the source data. This can be one of the following formats:\n1. A base64-encoded data URL (e.g., 'data:application/pdf;base64,JVBERi0xLjQKJcfs...').\n2. A url pointing to a file accessible over HTTP or HTTPS.\n3. A reference to a file that's been previously uploaded to Vellum, in the form of 'vellum:uploaded-file:{uploaded_file_id}'.\n You can use the Uploaded Files API to retrieve the url of the uploaded file given its ID. See https://docs.vellum.ai/developers/client-sdk/uploaded-files/retrieve for details." metadata: type: - object - 'null' additionalProperties: description: Any type required: - src title: VellumAudio SearchResultDocument: type: object properties: id: type: - string - 'null' format: uuid description: The ID of the document. label: type: string description: The human-readable name for the document. external_id: type: - string - 'null' description: The unique ID of the document as represented in an external system and specified when it was originally uploaded. metadata: type: - object - 'null' additionalProperties: description: Any type description: A previously supplied JSON object containing metadata that can be filtered on when searching. required: - label title: SearchResultDocument StringVellumValueRequest: type: object properties: type: $ref: '#/components/schemas/StringEnum' value: type: - string - 'null' required: - type - value description: A value representing a string. title: StringVellumValueRequest SearchResultMetaSource: oneOf: - $ref: '#/components/schemas/PdfSearchResultMetaSource' title: SearchResultMetaSource TestSuiteTestCaseBulkOperationRequest: oneOf: - $ref: '#/components/schemas/TestSuiteTestCaseCreateBulkOperationRequest' - $ref: '#/components/schemas/TestSuiteTestCaseReplaceBulkOperationRequest' - $ref: '#/components/schemas/TestSuiteTestCaseUpsertBulkOperationRequest' - $ref: '#/components/schemas/TestSuiteTestCaseDeleteBulkOperationRequest' title: TestSuiteTestCaseBulkOperationRequest test-suites_delete_test_suite_test_case_Response_204: type: object properties: {} description: Empty response body title: test-suites_delete_test_suite_test_case_Response_204 NamedTestCaseVariableValueRequest: oneOf: - $ref: '#/components/schemas/NamedTestCaseStringVariableValueRequest' - $ref: '#/components/schemas/NamedTestCaseNumberVariableValueRequest' - $ref: '#/components/schemas/NamedTestCaseJsonVariableValueRequest' - $ref: '#/components/schemas/NamedTestCaseChatHistoryVariableValueRequest' - $ref: '#/components/schemas/NamedTestCaseSearchResultsVariableValueRequest' - $ref: '#/components/schemas/NamedTestCaseErrorVariableValueRequest' - $ref: '#/components/schemas/NamedTestCaseFunctionCallVariableValueRequest' - $ref: '#/components/schemas/NamedTestCaseArrayVariableValueRequest' - $ref: '#/components/schemas/NamedTestCaseAudioVariableValueRequest' - $ref: '#/components/schemas/NamedTestCaseVideoVariableValueRequest' - $ref: '#/components/schemas/NamedTestCaseImageVariableValueRequest' - $ref: '#/components/schemas/NamedTestCaseDocumentVariableValueRequest' title: NamedTestCaseVariableValueRequest VellumValue: oneOf: - $ref: '#/components/schemas/StringVellumValue' - $ref: '#/components/schemas/NumberVellumValue' - $ref: '#/components/schemas/JsonVellumValue' - $ref: '#/components/schemas/AudioVellumValue' - $ref: '#/components/schemas/VideoVellumValue' - $ref: '#/components/schemas/ImageVellumValue' - $ref: '#/components/schemas/DocumentVellumValue' - $ref: '#/components/schemas/FunctionCallVellumValue' - $ref: '#/components/schemas/ErrorVellumValue' - $ref: '#/components/schemas/ArrayVellumValue' - $ref: '#/components/schemas/ChatHistoryVellumValue' - $ref: '#/components/schemas/SearchResultsVellumValue' - $ref: '#/components/schemas/ThinkingVellumValue' title: VellumValue TestCaseImageVariableValue: type: object properties: variable_id: type: string name: type: string type: $ref: '#/components/schemas/ImageEnum' value: oneOf: - $ref: '#/components/schemas/VellumImage' - type: 'null' required: - variable_id - name - type - value description: An image value for a variable in a Test Case. title: TestCaseImageVariableValue ArrayChatMessageContentItem: oneOf: - $ref: '#/components/schemas/StringChatMessageContent' - $ref: '#/components/schemas/FunctionCallChatMessageContent' - $ref: '#/components/schemas/AudioChatMessageContent' - $ref: '#/components/schemas/VideoChatMessageContent' - $ref: '#/components/schemas/ImageChatMessageContent' - $ref: '#/components/schemas/DocumentChatMessageContent' title: ArrayChatMessageContentItem TestCaseJsonVariableValue: type: object properties: variable_id: type: string name: type: string type: $ref: '#/components/schemas/JsonEnum' value: oneOf: - description: Any type - type: 'null' required: - variable_id - name - type - value description: A JSON value for a variable in a Test Case. title: TestCaseJsonVariableValue TestSuiteTestCaseBulkResult: oneOf: - $ref: '#/components/schemas/TestSuiteTestCaseCreatedBulkResult' - $ref: '#/components/schemas/TestSuiteTestCaseReplacedBulkResult' - $ref: '#/components/schemas/TestSuiteTestCaseDeletedBulkResult' - $ref: '#/components/schemas/TestSuiteTestCaseRejectedBulkResult' title: TestSuiteTestCaseBulkResult SearchResultMetaSourceRequest: oneOf: - $ref: '#/components/schemas/PdfSearchResultMetaSourceRequest' title: SearchResultMetaSourceRequest securitySchemes: default: type: apiKey in: header name: X-API-KEY