Fireworks AI anthropic-messages.openapi_other API

The anthropic-messages.openapi_other API from Fireworks AI — 1 operation(s) for anthropic-messages.openapi_other.

Documentation

Specifications

Other Resources

OpenAPI Specification

fireworks-ai-anthropic-messages-openapi-other-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Fireworks AI Anthropic Compatible Messages anthropic-messages.openapi_other API
  description: Anthropic-compatible Messages API endpoint for Fireworks AI inference
  version: 1.0.0
servers:
- url: https://api.fireworks.ai/inference
security:
- BearerAuth: []
tags:
- name: anthropic-messages.openapi_other
  x-displayName: other
paths:
  /v1/messages:
    servers:
    - url: https://api.fireworks.ai/inference
    post:
      summary: Create a Message
      description: '**Anthropic-compatible endpoint.**


        Send a structured list of input messages with text and/or image content, and the model will generate the next message in the conversation.


        The Messages API can be used for either single queries or stateless multi-turn conversations.


        **Fireworks Quickstarts:**

        - [Serverless Quickstart](/getting-started/quickstart)

        - [Deployments Quickstart](/getting-started/ondemand-quickstart)'
      operationId: messages_post
      responses:
        '200':
          description: Message object.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnthropicMessage'
        4XX:
          description: 'Error response.


            See the [errors documentation](/guides/inference-error-codes) for more details.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnthropicErrorResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnthropicCreateMessageParams'
        required: true
      tags:
      - anthropic-messages.openapi_other
      security:
      - BearerAuth: []
components:
  schemas:
    AnthropicRequestSearchResultLocationCitation:
      additionalProperties: false
      properties:
        cited_text:
          title: Cited Text
          type: string
        end_block_index:
          title: End Block Index
          type: integer
        search_result_index:
          minimum: 0
          title: Search Result Index
          type: integer
        source:
          title: Source
          type: string
        start_block_index:
          minimum: 0
          title: Start Block Index
          type: integer
        title:
          anyOf:
          - type: string
          - type: 'null'
          title: Title
        type:
          const: search_result_location
          title: Type
          type: string
      required:
      - cited_text
      - end_block_index
      - search_result_index
      - source
      - start_block_index
      - title
      - type
      title: RequestSearchResultLocationCitation
      type: object
    AnthropicResponsePageLocationCitation:
      properties:
        cited_text:
          title: Cited Text
          type: string
        document_index:
          minimum: 0
          title: Document Index
          type: integer
        document_title:
          anyOf:
          - type: string
          - type: 'null'
          title: Document Title
        end_page_number:
          title: End Page Number
          type: integer
        file_id:
          anyOf:
          - type: string
          - type: 'null'
          default: null
          title: File Id
        start_page_number:
          minimum: 1
          title: Start Page Number
          type: integer
        type:
          const: page_location
          default: page_location
          title: Type
          type: string
      required:
      - cited_text
      - document_index
      - document_title
      - end_page_number
      - file_id
      - start_page_number
      - type
      title: ResponsePageLocationCitation
      type: object
    AnthropicRequestContentBlockLocationCitation:
      additionalProperties: false
      properties:
        cited_text:
          title: Cited Text
          type: string
        document_index:
          minimum: 0
          title: Document Index
          type: integer
        document_title:
          anyOf:
          - maxLength: 255
            minLength: 1
            type: string
          - type: 'null'
          title: Document Title
        end_block_index:
          title: End Block Index
          type: integer
        start_block_index:
          minimum: 0
          title: Start Block Index
          type: integer
        type:
          const: content_block_location
          title: Type
          type: string
      required:
      - cited_text
      - document_index
      - document_title
      - end_block_index
      - start_block_index
      - type
      title: RequestContentBlockLocationCitation
      type: object
    AnthropicRequestWebSearchResultLocationCitation:
      additionalProperties: false
      properties:
        cited_text:
          title: Cited Text
          type: string
        encrypted_index:
          title: Encrypted Index
          type: string
        title:
          anyOf:
          - maxLength: 512
            minLength: 1
            type: string
          - type: 'null'
          title: Title
        type:
          const: web_search_result_location
          title: Type
          type: string
        url:
          maxLength: 2048
          minLength: 1
          title: Url
          type: string
      required:
      - cited_text
      - encrypted_index
      - title
      - type
      - url
      title: RequestWebSearchResultLocationCitation
      type: object
    AnthropicInvalidRequestError:
      properties:
        message:
          default: Invalid request
          title: Message
          type: string
        type:
          const: invalid_request_error
          default: invalid_request_error
          title: Type
          type: string
      required:
      - message
      - type
      title: InvalidRequestError
      type: object
    AnthropicRequestPageLocationCitation:
      additionalProperties: false
      properties:
        cited_text:
          title: Cited Text
          type: string
        document_index:
          minimum: 0
          title: Document Index
          type: integer
        document_title:
          anyOf:
          - maxLength: 255
            minLength: 1
            type: string
          - type: 'null'
          title: Document Title
        end_page_number:
          title: End Page Number
          type: integer
        start_page_number:
          minimum: 1
          title: Start Page Number
          type: integer
        type:
          const: page_location
          title: Type
          type: string
      required:
      - cited_text
      - document_index
      - document_title
      - end_page_number
      - start_page_number
      - type
      title: RequestPageLocationCitation
      type: object
    AnthropicTool:
      additionalProperties: false
      properties:
        type:
          anyOf:
          - type: 'null'
          - const: custom
            type: string
          title: Type
        description:
          description: 'Description of what this tool does.


            Tool descriptions should be as detailed as possible. The more information that the model has about what the tool is and how to use it, the better it will perform. You can use natural language descriptions to reinforce important aspects of the tool input JSON schema.'
          examples:
          - Get the current weather in a given location
          title: Description
          type: string
        name:
          description: 'Name of the tool.


            This is how the tool will be called by the model and in `tool_use` blocks.'
          maxLength: 128
          minLength: 1
          pattern: ^[a-zA-Z0-9_-]{1,128}$
          title: Name
          type: string
        input_schema:
          $ref: '#/components/schemas/AnthropicInputSchema'
          description: '[JSON schema](https://json-schema.org/draft/2020-12) for this tool''s input.


            This defines the shape of the `input` that your tool accepts and that the model will produce.'
          examples:
          - properties:
              location:
                description: The city and state, e.g. San Francisco, CA
                type: string
              unit:
                description: Unit for the output - one of (celsius, fahrenheit)
                type: string
            required:
            - location
            type: object
          x-stainless-skip:
          - cli
        strict:
          description: When true, guarantees schema validation on tool names and inputs
          title: Strict
          type: boolean
      required:
      - name
      - input_schema
      title: Tool
      type: object
    AnthropicRequestImageBlock:
      additionalProperties: false
      properties:
        cache_control:
          anyOf:
          - discriminator:
              mapping:
                ephemeral: '#/components/schemas/AnthropicCacheControlEphemeral'
              propertyName: type
            oneOf:
            - $ref: '#/components/schemas/AnthropicCacheControlEphemeral'
          - type: 'null'
          description: Create a cache control breakpoint at this content block.
          title: Cache Control
        source:
          discriminator:
            mapping:
              base64: '#/components/schemas/AnthropicBase64ImageSource'
              url: '#/components/schemas/AnthropicURLImageSource'
            propertyName: type
          oneOf:
          - $ref: '#/components/schemas/AnthropicBase64ImageSource'
          - $ref: '#/components/schemas/AnthropicURLImageSource'
          title: Source
        type:
          const: image
          title: Type
          type: string
      required:
      - source
      - type
      title: RequestImageBlock
      type: object
    AnthropicInputContentBlock:
      discriminator:
        mapping:
          document: '#/components/schemas/AnthropicRequestDocumentBlock'
          image: '#/components/schemas/AnthropicRequestImageBlock'
          redacted_thinking: '#/components/schemas/AnthropicRequestRedactedThinkingBlock'
          text: '#/components/schemas/AnthropicRequestTextBlock'
          thinking: '#/components/schemas/AnthropicRequestThinkingBlock'
          tool_result: '#/components/schemas/AnthropicRequestToolResultBlock'
          tool_use: '#/components/schemas/AnthropicRequestToolUseBlock'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/AnthropicRequestTextBlock'
        description: Regular text content.
      - $ref: '#/components/schemas/AnthropicRequestImageBlock'
        description: Image content specified directly as base64 data or as a reference via a URL.
      - $ref: '#/components/schemas/AnthropicRequestDocumentBlock'
        description: Document content, either specified directly as base64 data, as text, or as a reference via a URL.
      - $ref: '#/components/schemas/AnthropicRequestThinkingBlock'
        description: A block specifying internal thinking by the model.
      - $ref: '#/components/schemas/AnthropicRequestRedactedThinkingBlock'
        description: A block specifying internal, redacted thinking by the model.
      - $ref: '#/components/schemas/AnthropicRequestToolUseBlock'
        description: A block indicating a tool use by the model.
      - $ref: '#/components/schemas/AnthropicRequestToolResultBlock'
        description: A block specifying the results of a tool use by the model.
      x-stainless-python-extend-union:
      - ContentBlock
      x-stainless-python-extend-union-imports:
      - from .content_block import ContentBlock
      x-stainless-go-variant-constructor:
        naming: new_{variant}_block
    AnthropicResponseToolUseBlock:
      properties:
        id:
          pattern: ^[a-zA-Z0-9_-]+$
          title: Id
          type: string
        input:
          additionalProperties: true
          title: Input
          type: object
        name:
          minLength: 1
          title: Name
          type: string
        type:
          const: tool_use
          default: tool_use
          title: Type
          type: string
      required:
      - id
      - input
      - name
      - type
      title: ResponseToolUseBlock
      type: object
    AnthropicThinkingConfigAdaptive:
      additionalProperties: false
      properties:
        type:
          const: adaptive
          title: Type
          type: string
      required:
      - type
      title: ThinkingConfigAdaptive
      type: object
      description: '**Not supported yet.**'
    AnthropicThinkingConfigEnabled:
      additionalProperties: false
      properties:
        budget_tokens:
          description: 'Determines how many tokens the model can use for its internal reasoning process. Larger budgets can enable more thorough analysis for complex problems, improving response quality.


            Must be ≥1024 and less than `max_tokens`.


            See [reasoning](/guides/reasoning) for details.'
          minimum: 1024
          title: Budget Tokens
          type: integer
        type:
          const: enabled
          title: Type
          type: string
      required:
      - budget_tokens
      - type
      title: ThinkingConfigEnabled
      type: object
    AnthropicRequestCharLocationCitation:
      additionalProperties: false
      properties:
        cited_text:
          title: Cited Text
          type: string
        document_index:
          minimum: 0
          title: Document Index
          type: integer
        document_title:
          anyOf:
          - maxLength: 255
            minLength: 1
            type: string
          - type: 'null'
          title: Document Title
        end_char_index:
          title: End Char Index
          type: integer
        start_char_index:
          minimum: 0
          title: Start Char Index
          type: integer
        type:
          const: char_location
          title: Type
          type: string
      required:
      - cited_text
      - document_index
      - document_title
      - end_char_index
      - start_char_index
      - type
      title: RequestCharLocationCitation
      type: object
    AnthropicBase64PDFSource:
      additionalProperties: false
      properties:
        data:
          format: byte
          title: Data
          type: string
        media_type:
          const: application/pdf
          title: Media Type
          type: string
        type:
          const: base64
          title: Type
          type: string
      required:
      - data
      - media_type
      - type
      title: Base64PDFSource
      type: object
    AnthropicEffortLevel:
      description: All possible effort levels.
      enum:
      - low
      - medium
      - high
      - max
      title: EffortLevel
      type: string
    AnthropicErrorResponse:
      properties:
        error:
          discriminator:
            mapping:
              api_error: '#/components/schemas/AnthropicAPIError'
              authentication_error: '#/components/schemas/AnthropicAuthenticationError'
              billing_error: '#/components/schemas/AnthropicBillingError'
              invalid_request_error: '#/components/schemas/AnthropicInvalidRequestError'
              not_found_error: '#/components/schemas/AnthropicNotFoundError'
              overloaded_error: '#/components/schemas/AnthropicOverloadedError'
              permission_error: '#/components/schemas/AnthropicPermissionError'
              rate_limit_error: '#/components/schemas/AnthropicRateLimitError'
              timeout_error: '#/components/schemas/AnthropicGatewayTimeoutError'
            propertyName: type
          oneOf:
          - $ref: '#/components/schemas/AnthropicInvalidRequestError'
          - $ref: '#/components/schemas/AnthropicAuthenticationError'
          - $ref: '#/components/schemas/AnthropicBillingError'
          - $ref: '#/components/schemas/AnthropicPermissionError'
          - $ref: '#/components/schemas/AnthropicNotFoundError'
          - $ref: '#/components/schemas/AnthropicRateLimitError'
          - $ref: '#/components/schemas/AnthropicGatewayTimeoutError'
          - $ref: '#/components/schemas/AnthropicAPIError'
          - $ref: '#/components/schemas/AnthropicOverloadedError'
          title: Error
        request_id:
          anyOf:
          - type: string
          - type: 'null'
          default: null
          title: Request Id
        type:
          const: error
          default: error
          title: Type
          type: string
      required:
      - error
      - request_id
      - type
      title: ErrorResponse
      type: object
    AnthropicJsonOutputFormat:
      additionalProperties: false
      properties:
        schema:
          additionalProperties: true
          description: The JSON schema of the format
          title: Schema
          type: object
        type:
          const: json_schema
          title: Type
          type: string
      required:
      - schema
      - type
      title: JsonOutputFormat
      type: object
    AnthropicResponseContentBlockLocationCitation:
      properties:
        cited_text:
          title: Cited Text
          type: string
        document_index:
          minimum: 0
          title: Document Index
          type: integer
        document_title:
          anyOf:
          - type: string
          - type: 'null'
          title: Document Title
        end_block_index:
          title: End Block Index
          type: integer
        file_id:
          anyOf:
          - type: string
          - type: 'null'
          default: null
          title: File Id
        start_block_index:
          minimum: 0
          title: Start Block Index
          type: integer
        type:
          const: content_block_location
          default: content_block_location
          title: Type
          type: string
      required:
      - cited_text
      - document_index
      - document_title
      - end_block_index
      - file_id
      - start_block_index
      - type
      title: ResponseContentBlockLocationCitation
      type: object
    AnthropicPermissionError:
      properties:
        message:
          default: Permission denied
          title: Message
          type: string
        type:
          const: permission_error
          default: permission_error
          title: Type
          type: string
      required:
      - message
      - type
      title: PermissionError
      type: object
    AnthropicAPIError:
      properties:
        message:
          default: Internal server error
          title: Message
          type: string
        type:
          const: api_error
          default: api_error
          title: Type
          type: string
      required:
      - message
      - type
      title: APIError
      type: object
    AnthropicToolChoiceAuto:
      additionalProperties: false
      description: The model will automatically decide whether to use tools.
      properties:
        disable_parallel_tool_use:
          description: 'Whether to disable parallel tool use.


            Defaults to `false`. If set to `true`, the model will output at most one tool use.'
          title: Disable Parallel Tool Use
          type: boolean
        type:
          const: auto
          title: Type
          type: string
      required:
      - type
      title: ToolChoiceAuto
      type: object
    AnthropicToolChoiceNone:
      additionalProperties: false
      description: The model will not be allowed to use tools.
      properties:
        type:
          const: none
          title: Type
          type: string
      required:
      - type
      title: ToolChoiceNone
      type: object
      x-stainless-go-constant-constructor: true
    AnthropicCacheControlEphemeral:
      additionalProperties: false
      properties:
        ttl:
          description: 'The time-to-live for the cache control breakpoint.


            This may be one the following values:

            - `5m`: 5 minutes

            - `1h`: 1 hour


            Defaults to `5m`.'
          enum:
          - 5m
          - 1h
          title: Ttl
          type: string
          x-stainless-renameMap:
            ttl_5m: 5m
            ttl_1h: 1h
        type:
          const: ephemeral
          title: Type
          type: string
      required:
      - type
      title: CacheControlEphemeral
      type: object
      x-stainless-go-constant-constructor: true
    AnthropicThinkingConfigDisabled:
      additionalProperties: false
      properties:
        type:
          const: disabled
          title: Type
          type: string
      required:
      - type
      title: ThinkingConfigDisabled
      type: object
      x-stainless-go-constant-constructor: true
    AnthropicResponseSearchResultLocationCitation:
      properties:
        cited_text:
          title: Cited Text
          type: string
        end_block_index:
          title: End Block Index
          type: integer
        search_result_index:
          minimum: 0
          title: Search Result Index
          type: integer
        source:
          title: Source
          type: string
        start_block_index:
          minimum: 0
          title: Start Block Index
          type: integer
        title:
          anyOf:
          - type: string
          - type: 'null'
          title: Title
        type:
          const: search_result_location
          default: search_result_location
          title: Type
          type: string
      required:
      - cited_text
      - end_block_index
      - search_result_index
      - source
      - start_block_index
      - title
      - type
      title: ResponseSearchResultLocationCitation
      type: object
    AnthropicResponseRedactedThinkingBlock:
      properties:
        data:
          title: Data
          type: string
        type:
          const: redacted_thinking
          default: redacted_thinking
          title: Type
          type: string
      required:
      - data
      - type
      title: ResponseRedactedThinkingBlock
      type: object
    AnthropicOverloadedError:
      properties:
        message:
          default: Overloaded
          title: Message
          type: string
        type:
          const: overloaded_error
          default: overloaded_error
          title: Type
          type: string
      required:
      - message
      - type
      title: OverloadedError
      type: object
    AnthropicRateLimitError:
      properties:
        message:
          default: Rate limited
          title: Message
          type: string
        type:
          const: rate_limit_error
          default: rate_limit_error
          title: Type
          type: string
      required:
      - message
      - type
      title: RateLimitError
      type: object
    AnthropicRequestCitationsConfig:
      additionalProperties: false
      properties:
        enabled:
          title: Enabled
          type: boolean
      title: RequestCitationsConfig
      type: object
    AnthropicAuthenticationError:
      properties:
        message:
          default: Authentication error
          title: Message
          type: string
        type:
          const: authentication_error
          default: authentication_error
          title: Type
          type: string
      required:
      - message
      - type
      title: AuthenticationError
      type: object
    AnthropicMessage:
      examples:
      - content:
        - citations: null
          text: Hi! How can I help you today?
          type: text
        id: msg_013Zva2CMHLNnXjNJJKqJ2EF
        model: claude-opus-4-6
        role: assistant
        stop_reason: end_turn
        stop_sequence: null
        type: message
      properties:
        id:
          description: 'Unique object identifier.


            The format and length of IDs may change over time.'
          examples:
          - msg_013Zva2CMHLNnXjNJJKqJ2EF
          title: Id
          type: string
        type:
          const: message
          default: message
          description: 'Object type.


            For Messages, this is always `"message"`.'
          title: Type
          type: string
        role:
          const: assistant
          default: assistant
          description: 'Conversational role of the generated message.


            This will always be `"assistant"`.'
          title: Role
          type: string
        content:
          description: "Content generated by the model.\n\nThis is an array of content blocks, each of which has a `type` that determines its shape.\n\nExample:\n\n```json\n[{\"type\": \"text\", \"text\": \"Hi, I'm here to help.\"}]\n```\n\nIf the request input `messages` ended with an `assistant` turn, then the response `content` will continue directly from that last turn. You can use this to constrain the model's output.\n\nFor example, if the input `messages` were:\n```json\n[\n  {\"role\": \"user\", \"content\": \"What's the Greek name for Sun? (A) Sol (B) Helios (C) Sun\"},\n  {\"role\": \"assistant\", \"content\": \"The best answer is (\"}\n]\n```\n\nThen the response `content` might be:\n\n```json\n[{\"type\": \"text\", \"text\": \"B)\"}]\n```"
          examples:
          - - citations: null
              text: Hi! How can I help you today?
              type: text
          items:
            $ref: '#/components/schemas/AnthropicContentBlock'
          title: Content
          type: array
        model:
          $ref: '#/components/schemas/AnthropicModel'
        stop_reason:
          anyOf:
          - $ref: '#/components/schemas/AnthropicStopReason'
          - type: 'null'
          description: 'The reason that the model stopped.


            This may be one the following values:

            * `"end_turn"`: the model reached a natural stopping point

            * `"max_tokens"`: the model exceeded the requested `max_tokens` or the model''s maximum

            * `"stop_sequence"`: one of your provided custom `stop_sequences` was generated

            * `"tool_use"`: the model invoked one or more tools

            * `"pause_turn"`: the model paused a long-running turn. You may provide the response back as-is in a subsequent request to let the model continue.

            * `"refusal"`: when streaming classifiers intervene to handle potential policy violations


            In non-streaming mode this value is always non-null. In streaming mode, it is null in the `message_start` event and non-null otherwise.'
          title: Stop Reason
        stop_sequence:
          anyOf:
          - type: string
          - type: 'null'
          default: null
          description: 'Which custom stop sequence was generated, if any.


            This value will be a non-null string if one of your custom stop sequences was generated.'
          title: Stop Sequence
        raw_output:
          anyOf:
          - $ref: '#/components/schemas/AnthropicRawOutput'
          - type: 'null'
          default: null
      required:
      - id
      - type
      - role
      - content
      - model
      - stop_reason
      - stop_sequence
      title: Message
      type: object
      x-stainless-python-custom-imports:
      - from .content_block import ContentBlock as ContentBlock
    AnthropicResponseTextBlock:
      properties:
        citations:
          anyOf:
          - items:
              discriminator:
                mapping:
                  char_location: '#/components/schemas/AnthropicResponseCharLocationCitation'
                  content_block_location: '#/components/schemas/AnthropicResponseContentBlockLocationCitation'
                  page_location: '#/components/schemas/AnthropicResponsePageLocationCitation'
                  search_result_location: '#/components/schemas/AnthropicResponseSearchResultLocationCitation'
                  web_search_result_location: '#/components/schemas/AnthropicResponseWebSearchResultLocationCitation'
                propertyName: type
              oneOf:
              - $ref: '#/components/schemas/AnthropicResponseCharLocationCitation'
              - $ref: '#/components/schemas/AnthropicResponsePageLocationCitation'
              - $ref: '#/components/schemas/AnthropicResponseContentBlockLocationCitation'
              - $ref: '#/components/schemas/AnthropicResponseWebSearchResultLocationCitation'
              - $ref: '#/components/schemas/AnthropicResponseSearchResultLocationCitation'
            type: array
          - type: 'null'
          default: null
          description: 'Citations supporting the text block.


            The type of citation returned will depend on the type of document being cited. Citing a PDF results in `page_location`, plain text results in `char_location`, and content document results in `content_block_location`.'
          title: Citations
        text:
          maxLength: 5000000
          minLength: 0
          title: Text
          type: string
        type:
          const: text
          default: text
          title: Type
          type: string
      required:
      - citations
      - text
      - type
      title: ResponseTextBlock
      type: object
    AnthropicRawOutput:
      additionalProperties: false
      description: Fireworks extension that returns low-level details of what the model sees, including the formatted prompt and function calls.
      properties:
        prompt_fragments:
          description: Pieces of the prompt (like individual messages) before truncation and concatenation. Depending on prompt_truncate_len some of the messages might be dropped. Contains a mix of strings to be tokenized and individual tokens (if dictated by the conversation template)
          items:
            anyOf:
            - type: string
            - type: integer
          title: Prompt Fragments
          type: array
        prompt_token_ids:
          description: Fully processed prompt as seen by the model
          items:
            type: integer
          title: Prompt Token Ids
          type: array
        completion:
          description: Raw completion produced by the model before any tool calls are parsed
          title: Completion
          type: string
        completion_token_ids:
          anyOf:
          - items:
              type: integer
            type: array
          - type: 'null'
          default: null
          description: Token IDs for the raw completion
          title: Completion Token Ids
        images:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          default: null
          description: Images in the prompt
          title: Images
        grammar:
          anyOf:
          - type: string
          - type: 'null'
          default: null
          description: Grammar used for constrained decoding, can be either user provided (directly or JSON schema) or inferred by the chat template
          title: Grammar
      required:
      - prompt_fragments
      - prompt_token_ids
      - completion
      title: RawOutput
      type: object
    AnthropicRequestToolUseBlock:
      additionalProperties: false
      properties:
        cache_control:
          anyOf:
          - discriminator:
              mapping:
                ephemeral: '#/components/schemas/AnthropicCacheControlEphemeral'
              propertyName: type
            oneOf:
            - $ref: '#/components/schemas/AnthropicCacheControlEphemeral'
          - type: 'null'
          description: Create a cache control breakpoint at this content block.
          title: Cache Control
        id:
          pattern: ^[a-zA-Z0-9_-]+$
          title: Id
          type: string
        input:
          additionalProperties: true
          title: Input
          type: object
        name:
          maxLength: 200
          minLength: 1
          title: Name
          type: string
        type:
          const: tool_use
          title: Type
          type: string
      required:
      - id
      - input
      - name
      - type
      title: RequestToolUseBlock
      type: object
    AnthropicToolChoice:
      description: How the model should use the provided tools. The model can use a specific tool, any available tool, decide by itself, or not use tools at all.
      discriminator:
        mapping:
          any: '#/components/schemas/AnthropicToolChoiceAny'
          auto: '#/components/schemas/AnthropicToolChoiceAuto'
          none: '#/components/schemas/AnthropicToolChoiceNone'
          tool: '#/components/schemas/AnthropicToolChoiceTool'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/AnthropicToolChoiceAuto'


# --- truncated at 32 KB (59 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/fireworks-ai/refs/heads/main/openapi/fireworks-ai-anthropic-messages-openapi-other-api-openapi.yml