Vellum AI subpackage_testSuites API

The subpackage_testSuites API from Vellum AI — 3 operation(s) for subpackage_testsuites.

Operations 4

GET /v1/test-suites/{id}/test-cases List Test Suite Test Cases #
POST /v1/test-suites/{id}/test-cases Upsert Test Suite Test Case #
POST /v1/test-suites/{id}/test-cases-bulk Test Suite Test Cases Bulk #
DELETE /v1/test-suites/{id}/test-cases/{test_case_id} Delete Test Suite Test Case #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/vellum-subpackage-testsuites-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

vellum-subpackage-testsuites-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Client SDK Subpackage Test Suites 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:
    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
    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
    PdfEnum:
      type: string
      enum:
      - PDF
      title: PdfEnum
    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
    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
    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
    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
    SearchResultsEnum:
      type: string
      enum:
      - SEARCH_RESULTS
      title: SearchResultsEnum
    ThinkingEnum:
      type: string
      enum:
      - THINKING
      title: ThinkingEnum
    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
    VideoEnum:
      type: string
      enum:
      - VIDEO
      title: VideoEnum
    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
    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
    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
    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
    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
    ReplacedEnum:
      type: string
      enum:
      - REPLACED
      title: ReplacedEnum
    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
    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
    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
    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
    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
    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
    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
    SearchResultMetaSource:
      oneOf:
      - $ref: '#/components/schemas/PdfSearchResultMetaSource'
      title: SearchResultMetaSource
    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
    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
    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
    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
    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
    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
    TestSuiteTestCaseDeleteBulkOperationDataRequest:
      type: object
      properties:
        id:
          type: string
      required:
      - id
      title: TestSuiteTestCaseDeleteBulkOperationDataRequest
    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
    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
    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
    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
    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
    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
    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
    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
    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
    ChatHistoryEnum:
      type: string
      enum:
      - CHAT_HISTORY
      title: ChatHistoryEnum
    ImageEnum:
      type: string
      enum:
      - IMAGE
      title: ImageEnum
    StringVellumValueRequest:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/StringEnum'
        value:
          type:
          - string
          - 'null'
      required:
      - type
      - value
      description: A value representing a string.
      title: StringVellumValueRequest
    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
    ReplaceEnum:
      type: string
      enum:
      - REPLACE
      title: ReplaceEnum
    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
    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
    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
    TestSuiteTestCaseBulkResult:
      oneOf:
      - $ref: '#/components/schemas/TestSuiteTestCaseCreatedBulkResult'
      - $ref: '#/components/schemas/TestSuiteTestCaseReplacedBulkResult'
      - $ref: '#/components/schemas/TestSuiteTestCaseDeletedBulkResult'
      - $ref: '#/components/schemas/TestSuiteTestCaseRejectedBulkResult'
      title: TestSuiteTestCaseBulkResult
    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
    AudioEnum:
      type: string
      enum:
      - AUDIO
      title: AudioEnum
    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
    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
    FunctionCallEnum:
      type: string
      enum:
      - FUNCTION_CALL
      title: FunctionCallEnum
    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
    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
    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
    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
    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
    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
    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 c

# --- truncated at 32 KB (67 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vellum/refs/heads/main/openapi/vellum-subpackage-testsuites-api-openapi.yml