> ## Documentation Index
> Fetch the complete documentation index at: https://docs.orq.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Create completion

> For sending requests to legacy completion models



## OpenAPI

````yaml post /v2/router/completions
openapi: 3.1.0
info:
  title: orq.ai API
  version: '2.0'
  description: orq.ai API documentation
servers:
  - url: https://api.orq.ai
security:
  - ApiKey: []
tags:
  - name: Guardrail Rules
  - name: Policies
  - name: Routing Rules
  - name: Files
    description: File upload and retrieval operations.
  - name: FilesService
  - name: Projects
    description: Projects organize resources within a workspace
  - name: ProjectsService
  - name: Skills
    description: >-
      Skills are modular instructions you can use to codify processes and
      conventions
  - name: SkillsService
  - name: Responses
  - description: >-
      Run agents on a cadence — cron, interval, or one-off. Minimum firing
      interval is 1 hour.
    name: Agent Schedules
  - name: Reporting
    description: >-
      GenAI reporting API over canonical analytics rollups. Accepts a metric
      name, time range, grain, group-by, and filters; returns a typed time
      series and optional totals.
  - name: ReportingService
    description: |-
      ReportingService exposes a single QueryReport RPC that maps allowlisted
       analytics payloads onto safe rollup queries. Callers never send SQL;
       the backend picks the rollup family and grain from the metric
       catalogue, the requested range, and the requested grouping.
externalDocs:
  url: https://docs.orq.ai
  description: orq.ai Documentation
paths:
  /v2/router/completions:
    post:
      tags:
        - Completions
      summary: Create completion
      description: For sending requests to legacy completion models
      operationId: createCompletion
      requestBody:
        required: true
        content:
          application/json:
            schema:
              allOf:
                - type: object
                  properties:
                    model:
                      type: string
                      description: ID of the model to use
                    prompt:
                      type: string
                      description: >-
                        The prompt(s) to generate completions for, encoded as a
                        string, array of strings, array of tokens, or array of
                        token arrays.
                    echo:
                      type:
                        - boolean
                        - 'null'
                      default: false
                      description: Echo back the prompt in addition to the completion
                    frequency_penalty:
                      type:
                        - number
                        - 'null'
                      default: 0
                      description: >-
                        Number between -2.0 and 2.0. Positive values penalize
                        new tokens based on their existing frequency in the text
                        so far, decreasing the model's likelihood to repeat the
                        same line verbatim.
                    max_tokens:
                      type:
                        - number
                        - 'null'
                      default: 16
                      description: >-
                        The maximum number of tokens that can be generated in
                        the completion.
                    presence_penalty:
                      type:
                        - number
                        - 'null'
                      minimum: -2
                      maximum: 2
                      default: 0
                      description: >-
                        Number between -2.0 and 2.0. Positive values penalize
                        new tokens based on whether they appear in the text so
                        far, increasing the model's likelihood to talk about new
                        topics.
                    seed:
                      type:
                        - number
                        - 'null'
                      description: >-
                        If specified, our system will make a best effort to
                        sample deterministically, such that repeated requests
                        with the same seed and parameters should return the same
                        result.
                    stop:
                      anyOf:
                        - type: string
                        - type: array
                          items:
                            type: string
                        - type: 'null'
                      default: null
                      description: >-
                        Up to 4 sequences where the API will stop generating
                        further tokens. The returned text will not contain the
                        stop sequence.
                    temperature:
                      type:
                        - number
                        - 'null'
                      default: 1
                      description: >-
                        What sampling temperature to use, between 0 and 2.
                        Higher values like 0.8 will make the output more random,
                        while lower values like 0.2 will make it more focused
                        and deterministic.
                    top_p:
                      type:
                        - number
                        - 'null'
                      default: 1
                      description: >-
                        An alternative to sampling with temperature, called
                        nucleus sampling, where the model considers the results
                        of the tokens with top_p probability mass. So 0.1 means
                        only the tokens comprising the top 10% probability mass
                        are considered.
                    'n':
                      type:
                        - number
                        - 'null'
                      default: 1
                      description: >-
                        How many completions to generate for each prompt. Note:
                        Because this parameter generates many completions, it
                        can quickly consume your token quota.
                    user:
                      type: string
                      description: >-
                        A unique identifier representing your end-user, which
                        can help OpenAI to monitor and detect abuse.
                    name:
                      type: string
                      description: >-
                        The name to display on the trace. If not specified, the
                        default system name will be used.
                    fallbacks:
                      type: array
                      items:
                        type: object
                        properties:
                          model:
                            type: string
                            description: Fallback model identifier
                        required:
                          - model
                      description: Array of fallback models to use if primary model fails
                    retry:
                      type: object
                      properties:
                        count:
                          type: number
                          minimum: 1
                          maximum: 5
                          default: 3
                          description: Number of retry attempts (1-5)
                          example: 3
                        on_codes:
                          type: array
                          items:
                            type: number
                            minimum: 100
                            maximum: 599
                          minItems: 1
                          default:
                            - 429
                          description: HTTP status codes that trigger retry logic
                          example:
                            - 429
                            - 500
                            - 502
                            - 503
                            - 504
                      description: Retry configuration for the request
                    cache:
                      type: object
                      properties:
                        ttl:
                          type: number
                          minimum: 1
                          maximum: 259200
                          default: 1800
                          description: >-
                            Time to live for cached responses in seconds.
                            Maximum 259200 seconds (3 days).
                          example: 3600
                        type:
                          type: string
                          enum:
                            - exact_match
                      required:
                        - type
                      description: Cache configuration for the request.
                    load_balancer:
                      oneOf:
                        - type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - weight_based
                            models:
                              type: array
                              items:
                                type: object
                                properties:
                                  model:
                                    type: string
                                    description: Model identifier for load balancing
                                    example: openai/gpt-4o
                                  weight:
                                    type: number
                                    minimum: 0.001
                                    maximum: 1
                                    default: 0.5
                                    description: >-
                                      Weight assigned to this model for load
                                      balancing
                                    example: 0.7
                                required:
                                  - model
                          required:
                            - type
                            - models
                      description: Load balancer configuration for the request.
                    timeout:
                      type: object
                      properties:
                        call_timeout:
                          type: number
                          minimum: 1
                          description: Timeout value in milliseconds
                          example: 30000
                      required:
                        - call_timeout
                      description: >-
                        Timeout configuration to apply to the request. If the
                        request exceeds the timeout, it will be retried or
                        fallback to the next model if configured.
                    thinking:
                      oneOf:
                        - $ref: '#/components/schemas/ThinkingConfigDisabledSchema'
                        - $ref: '#/components/schemas/ThinkingConfigEnabledSchema'
                        - $ref: '#/components/schemas/ThinkingConfigAdaptiveSchema'
                        - type: 'null'
                      description: >-
                        Configuration for the thinking mode capability. Set type
                        to `adaptive` for models that support adaptive thinking
                        (e.g. Claude Opus 4.6, Sonnet 4.6), or `enabled` with
                        `budget_tokens` for manual control.
                    orq:
                      type: object
                      properties:
                        name:
                          type: string
                          description: >-
                            The name to display on the trace. If not specified,
                            the default system name will be used.
                        retry:
                          type: object
                          properties:
                            count:
                              type: number
                              minimum: 1
                              maximum: 5
                              default: 3
                              description: Number of retry attempts (1-5)
                              example: 3
                            on_codes:
                              type: array
                              items:
                                type: number
                                minimum: 100
                                maximum: 599
                              minItems: 1
                              default:
                                - 429
                              description: HTTP status codes that trigger retry logic
                              example:
                                - 429
                                - 500
                                - 502
                                - 503
                                - 504
                          description: Retry configuration for the request
                        fallbacks:
                          type: array
                          items:
                            type: object
                            properties:
                              model:
                                type: string
                                description: Fallback model identifier
                                example: openai/gpt-4o-mini
                            required:
                              - model
                          description: >-
                            Array of fallback models to use if primary model
                            fails
                        prompt:
                          type: object
                          properties:
                            id:
                              type: string
                              description: Unique identifier of the prompt to use
                              example: prompt_01ARZ3NDEKTSV4RRFFQ69G5FAV
                            version:
                              type: string
                              enum:
                                - latest
                              description: >-
                                Version of the prompt to use (currently only
                                "latest" supported)
                              example: latest
                          required:
                            - id
                            - version
                          description: Prompt configuration for the request
                        identity:
                          $ref: '#/components/schemas/PublicIdentity'
                        contact:
                          $ref: '#/components/schemas/PublicContact'
                        thread:
                          type: object
                          properties:
                            id:
                              type: string
                              description: >-
                                Unique thread identifier to group related
                                invocations.
                              example: thread_01ARZ3NDEKTSV4RRFFQ69G5FAV
                            tags:
                              type: array
                              items:
                                type: string
                              description: >-
                                Optional tags to differentiate or categorize
                                threads
                              example:
                                - customer-support
                                - priority-high
                          required:
                            - id
                          description: Thread information to group related requests
                        inputs:
                          anyOf:
                            - type: object
                              additionalProperties: {}
                            - type: array
                              items:
                                type: object
                                properties:
                                  key:
                                    type: string
                                  value: {}
                                  is_pii:
                                    type: boolean
                                required:
                                  - key
                          deprecated: true
                          description: >-
                            @deprecated Use top-level `variables` field instead.
                            Values to replace in the prompt messages using
                            {{variableName}} syntax.
                          example:
                            customer_name: John Smith
                            product_name: Premium Plan
                            issue_type: billing
                        cache:
                          type: object
                          properties:
                            ttl:
                              type: number
                              minimum: 1
                              maximum: 259200
                              default: 1800
                              description: >-
                                Time to live for cached responses in seconds.
                                Maximum 259200 seconds (3 days).
                              example: 3600
                            type:
                              type: string
                              enum:
                                - exact_match
                          required:
                            - type
                          description: Cache configuration for the request.
                        knowledge_bases:
                          type: array
                          items:
                            type: object
                            properties:
                              top_k:
                                type: integer
                                minimum: 1
                                maximum: 100
                                description: >-
                                  The number of results to return. If not
                                  provided, will default to the knowledge base
                                  configured `top_k`.
                              threshold:
                                type: number
                                minimum: 0
                                maximum: 1
                                description: >-
                                  The threshold to apply to the search. If not
                                  provided, will default to the knowledge base
                                  configured `threshold`
                              search_type:
                                type: string
                                enum:
                                  - vector_search
                                  - keyword_search
                                  - hybrid_search
                                default: hybrid_search
                                description: >-
                                  The type of search to perform. If not
                                  provided, will default to the knowledge base
                                  configured `retrieval_type`
                              filter_by:
                                anyOf:
                                  - type: object
                                    additionalProperties:
                                      anyOf:
                                        - type: object
                                          properties:
                                            eq:
                                              anyOf:
                                                - type: string
                                                  title: string
                                                  description: String
                                                - type: number
                                                  title: number
                                                  description: Number
                                                - type: boolean
                                                  title: boolean
                                                  description: Boolean
                                          required:
                                            - eq
                                          title: eq
                                          description: Equal to
                                        - type: object
                                          properties:
                                            ne:
                                              anyOf:
                                                - type: string
                                                  title: string
                                                  description: String
                                                - type: number
                                                  title: number
                                                  description: Number
                                                - type: boolean
                                                  title: boolean
                                                  description: Boolean
                                          required:
                                            - ne
                                          title: ne
                                          description: Not equal to
                                        - type: object
                                          properties:
                                            gt:
                                              type: number
                                          required:
                                            - gt
                                          title: gt
                                          description: Greater than
                                        - type: object
                                          properties:
                                            gte:
                                              type: number
                                          required:
                                            - gte
                                          title: gte
                                          description: Greater than or equal to
                                        - type: object
                                          properties:
                                            lt:
                                              type: number
                                          required:
                                            - lt
                                          title: lt
                                          description: Less than
                                        - type: object
                                          properties:
                                            lte:
                                              type: number
                                          required:
                                            - lte
                                          title: lte
                                          description: Less than or equal to
                                        - type: object
                                          properties:
                                            in:
                                              type: array
                                              items:
                                                anyOf:
                                                  - type: string
                                                    title: string
                                                    description: String
                                                  - type: number
                                                    title: number
                                                    description: Number
                                                  - type: boolean
                                                    title: boolean
                                                    description: Boolean
                                          required:
                                            - in
                                          title: in
                                          description: In
                                        - type: object
                                          properties:
                                            nin:
                                              type: array
                                              items:
                                                anyOf:
                                                  - type: string
                                                    title: string
                                                    description: String
                                                  - type: number
                                                    title: number
                                                    description: Number
                                                  - type: boolean
                                                    title: boolean
                                                    description: Boolean
                                          required:
                                            - nin
                                          title: nin
                                          description: Not in
                                        - type: object
                                          properties:
                                            exists:
                                              type: boolean
                                          required:
                                            - exists
                                          title: exists
                                          description: Exists
                                    title: Search operator
                                  - type: object
                                    properties:
                                      and:
                                        type: array
                                        items:
                                          type: object
                                          additionalProperties:
                                            anyOf:
                                              - type: object
                                                properties:
                                                  eq:
                                                    anyOf:
                                                      - type: string
                                                        title: string
                                                        description: String
                                                      - type: number
                                                        title: number
                                                        description: Number
                                                      - type: boolean
                                                        title: boolean
                                                        description: Boolean
                                                required:
                                                  - eq
                                                title: eq
                                                description: Equal to
                                              - type: object
                                                properties:
                                                  ne:
                                                    anyOf:
                                                      - type: string
                                                        title: string
                                                        description: String
                                                      - type: number
                                                        title: number
                                                        description: Number
                                                      - type: boolean
                                                        title: boolean
                                                        description: Boolean
                                                required:
                                                  - ne
                                                title: ne
                                                description: Not equal to
                                              - type: object
                                                properties:
                                                  gt:
                                                    type: number
                                                required:
                                                  - gt
                                                title: gt
                                                description: Greater than
                                              - type: object
                                                properties:
                                                  gte:
                                                    type: number
                                                required:
                                                  - gte
                                                title: gte
                                                description: Greater than or equal to
                                              - type: object
                                                properties:
                                                  lt:
                                                    type: number
                                                required:
                                                  - lt
                                                title: lt
                                                description: Less than
                                              - type: object
                                                properties:
                                                  lte:
                                                    type: number
                                                required:
                                                  - lte
                                                title: lte
                                                description: Less than or equal to
                                              - type: object
                                                properties:
                                                  in:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - type: string
                                                          title: string
                                                          description: String
                                                        - type: number
                                                          title: number
                                                          description: Number
                                                        - type: boolean
                                                          title: boolean
                                                          description: Boolean
                                                required:
                                                  - in
                                                title: in
                                                description: In
                                              - type: object
                                                properties:
                                                  nin:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - type: string
                                                          title: string
                                                          description: String
                                                        - type: number
                                                          title: number
                                                          description: Number
                                                        - type: boolean
                                                          title: boolean
                                                          description: Boolean
                                                required:
                                                  - nin
                                                title: nin
                                                description: Not in
                                              - type: object
                                                properties:
                                                  exists:
                                                    type: boolean
                                                required:
                                                  - exists
                                                title: exists
                                                description: Exists
                                    required:
                                      - and
                                    title: and
                                    description: And
                                  - type: object
                                    properties:
                                      or:
                                        type: array
                                        items:
                                          type: object
                                          additionalProperties:
                                            anyOf:
                                              - type: object
                                                properties:
                                                  eq:
                                                    anyOf:
                                                      - type: string
                                                        title: string
                                                        description: String
                                                      - type: number
                                                        title: number
                                                        description: Number
                                                      - type: boolean
                                                        title: boolean
                                                        description: Boolean
                                                required:
                                                  - eq
                                                title: eq
                                                description: Equal to
                                              - type: object
                                                properties:
                                                  ne:
                                                    anyOf:
                                                      - type: string
                                                        title: string
                                                        description: String
                                                      - type: number
                                                        title: number
                                                        description: Number
                                                      - type: boolean
                                                        title: boolean
                                                        description: Boolean
                                                required:
                                                  - ne
                                                title: ne
                                                description: Not equal to
                                              - type: object
                                                properties:
                                                  gt:
                                                    type: number
                                                required:
                                                  - gt
                                                title: gt
                                                description: Greater than
                                              - type: object
                                                properties:
                                                  gte:
                                                    type: number
                                                required:
                                                  - gte
                                                title: gte
                                                description: Greater than or equal to
                                              - type: object
                                                properties:
                                                  lt:
                                                    type: number
                                                required:
                                                  - lt
                                                title: lt
                                                description: Less than
                                              - type: object
                                                properties:
                                                  lte:
                                                    type: number
                                                required:
                                                  - lte
                                                title: lte
                                                description: Less than or equal to
                                              - type: object
                                                properties:
                                                  in:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - type: string
                                                          title: string
                                                          description: String
                                                        - type: number
                                                          title: number
                                                          description: Number
                                                        - type: boolean
                                                          title: boolean
                                                          description: Boolean
                                                required:
                                                  - in
                                                title: in
                                                description: In
                                              - type: object
                                                properties:
                                                  nin:
                                                    type: array
                                                    items:
                                                      anyOf:
                                                        - type: string
                                                          title: string
                                                          description: String
                                                        - type: number
                                                          title: number
                                                          description: Number
                                                        - type: boolean
                                                          title: boolean
                                                          description: Boolean
                                                required:
                                                  - nin
                                                title: nin
                                                description: Not in
                                              - type: object
                                                properties:
                                                  exists:
                                                    type: boolean
                                                required:
                                                  - exists
                                                title: exists
                                                description: Exists
                                    required:
                                      - or
                                    title: or
                                    description: Or
                                description: >-
                                  The metadata filter to apply to the search.
                                  Check the [Searching a Knowledge
                                  Base](https://docs.orq.ai/docs/knowledge/api#knowledge-base-search)
                                  for more information.
                              search_options:
                                type: object
                                properties:
                                  include_vectors:
                                    type: boolean
                                    description: Whether to include the vector in the chunk
                                  include_metadata:
                                    type: boolean
                                    description: >-
                                      Whether to include the metadata in the
                                      chunk
                                  include_scores:
                                    type: boolean
                                    description: Whether to include the scores in the chunk
                                description: Additional search options
                              rerank_config:
                                type: object
                                properties:
                                  model:
                                    type: string
                                    description: >-
                                      The name of the rerank model to use. Refer
                                      to the [model
                                      list](https://docs.orq.ai/docs/proxy#/rerank-models).
                                    example: cohere/rerank-multilingual-v3.0
                                  threshold:
                                    type: number
                                    minimum: 0
                                    maximum: 1
                                    default: 0
                                    description: >-
                                      The threshold value used to filter the
                                      rerank results, only documents with a
                                      relevance score greater than the threshold
                                      will be returned
                                  top_k:
                                    type: integer
                                    minimum: 1
                                    maximum: 100
                                    default: 10
                                    description: >-
                                      The number of top results to return after
                                      reranking. If not provided, will default
                                      to the knowledge base configured `top_k`.
                                required:
                                  - model
                                description: >-
                                  Override the rerank configuration for this
                                  search. If not provided, will use the
                                  knowledge base configured rerank settings.
                              agentic_rag_config:
                                type: object
                                properties:
                                  model:
                                    type: string
                                    description: >-
                                      The name of the model for the Agent to
                                      use. Refer to the [model
                                      list](https://docs.orq.ai/docs/proxy#/chat-models).
                                required:
                                  - model
                                description: >-
                                  Override the agentic RAG configuration for
                                  this search. If not provided, will use the
                                  knowledge base configured agentic RAG
                                  settings.
                              knowledge_id:
                                type: string
                                description: >-
                                  Unique identifier of the knowledge base to
                                  search
                                example: customer-knowledge-base
                              query:
                                type: string
                                description: >-
                                  The query to use to search the knowledge base.
                                  If not provided we will use the last user
                                  message from the messages of the requests
                            required:
                              - knowledge_id
                        load_balancer:
                          oneOf:
                            - type: object
                              properties:
                                type:
                                  type: string
                                  enum:
                                    - weight_based
                                models:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      model:
                                        type: string
                                        description: Model identifier for load balancing
                                        example: openai/gpt-4o
                                      weight:
                                        type: number
                                        minimum: 0.001
                                        maximum: 1
                                        default: 0.5
                                        description: >-
                                          Weight assigned to this model for load
                                          balancing
                                        example: 0.7
                                    required:
                                      - model
                              required:
                                - type
                                - models
                          description: >-
                            Array of models with weights for load balancing
                            requests
                          example:
                            type: weight_based
                            models:
                              - model: openai/gpt-4o
                                weight: 0.7
                              - model: anthropic/claude-3-5-sonnet
                                weight: 0.3
                        timeout:
                          type: object
                          properties:
                            call_timeout:
                              type: number
                              minimum: 1
                              description: Timeout value in milliseconds
                              example: 30000
                          required:
                            - call_timeout
                          description: >-
                            Timeout configuration to apply to the request. If
                            the request exceeds the timeout, it will be retried
                            or fallback to the next model if configured.
                      description: >-
                        Leverage Orq's intelligent routing capabilities to
                        enhance your AI application with enterprise-grade
                        reliability and observability. Orq provides automatic
                        request management including retries on failures, model
                        fallbacks for high availability, identity-level
                        analytics tracking, conversation threading, and dynamic
                        prompt templating with variable substitution.
                      deprecated: true
                      example:
                        retry:
                          count: 3
                          on_codes:
                            - 429
                            - 500
                            - 502
                        fallbacks:
                          - model: openai/gpt-5
                          - model: anthropic/claude-4-opus
                        identity:
                          id: identity_01ARZ3NDEKTSV4RRFFQ69G5FAV
                          display_name: Jane Doe
                          email: jane.doe@example.com
                        thread:
                          id: thread_01ARZ3NDEKTSV4RRFFQ69G5FAV
                          tags:
                            - customer-support
                        inputs:
                          customer_name: John Smith
                          issue_type: billing
                        cache:
                          ttl: 3600
                          type: exact_match
                        knowledge_bases:
                          - knowledge_id: knowledge_01ARZ3NDEKTSV4RRFFQ69G5FAV
                            top_k: 5
                        timeout:
                          call_timeout: 30000
                  required:
                    - model
                    - prompt
                - type: object
                  properties:
                    stream:
                      type: boolean
                      default: false
      responses:
        '200':
          description: Represents a completion response from the API.
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: A unique identifier for the completion.
                  choices:
                    type: array
                    items:
                      type: object
                      properties:
                        finish_reason:
                          type: string
                          enum:
                            - stop
                            - length
                            - content_filter
                            - tool_calls
                          description: The reason the model stopped generating tokens.
                        index:
                          type: number
                          description: The index of the choice in the list of choices.
                        text:
                          type: string
                      required:
                        - finish_reason
                        - index
                        - text
                    description: >-
                      The list of completion choices the model generated for the
                      input prompt.
                  created:
                    anyOf:
                      - type: string
                      - type: number
                    description: >-
                      The Unix timestamp (in seconds) of when the chat
                      completion was created.
                  model:
                    type: string
                    description: The model used for the chat completion.
                  system_fingerprint:
                    type: string
                    description: >-
                      This fingerprint represents the backend configuration that
                      the model runs with.
                  object:
                    type: string
                    description: The object type
                  usage:
                    type: object
                    properties:
                      completion_tokens:
                        type: number
                        description: Number of tokens in the generated completion.
                      prompt_tokens:
                        type: number
                        description: Number of tokens in the prompt.
                      total_tokens:
                        type: number
                        description: >-
                          Total number of tokens used in the request (prompt +
                          completion).
                      prompt_tokens_details:
                        type:
                          - object
                          - 'null'
                        properties:
                          cached_tokens:
                            type:
                              - integer
                              - 'null'
                          cache_creation_tokens:
                            type:
                              - integer
                              - 'null'
                          audio_tokens:
                            type:
                              - integer
                              - 'null'
                            description: >-
                              The number of audio input tokens consumed by the
                              request.
                      completion_tokens_details:
                        type:
                          - object
                          - 'null'
                        properties:
                          reasoning_tokens:
                            type:
                              - number
                              - 'null'
                          accepted_prediction_tokens:
                            type:
                              - number
                              - 'null'
                          rejected_prediction_tokens:
                            type:
                              - number
                              - 'null'
                          audio_tokens:
                            type:
                              - integer
                              - 'null'
                            description: >-
                              The number of audio output tokens produced by the
                              response.
                    description: Usage statistics for the completion request.
                required:
                  - id
                  - choices
                  - model
                  - object
            text/event-stream:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: A unique identifier for the completion.
                  choices:
                    type: array
                    items:
                      type: object
                      properties:
                        finish_reason:
                          type: string
                          enum:
                            - stop
                            - length
                            - content_filter
                            - tool_calls
                          description: The reason the model stopped generating tokens.
                        index:
                          type: number
                          description: The index of the choice in the list of choices.
                        text:
                          type: string
                      required:
                        - finish_reason
                        - index
                        - text
                    description: >-
                      The list of completion choices the model generated for the
                      input prompt.
                  created:
                    anyOf:
                      - type: string
                      - type: number
                    description: >-
                      The Unix timestamp (in seconds) of when the chat
                      completion was created.
                  model:
                    type: string
                    description: The model used for the chat completion.
                  system_fingerprint:
                    type: string
                    description: >-
                      This fingerprint represents the backend configuration that
                      the model runs with.
                  object:
                    type: string
                    description: The object type
                  usage:
                    type: object
                    properties:
                      completion_tokens:
                        type: number
                        description: Number of tokens in the generated completion.
                      prompt_tokens:
                        type: number
                        description: Number of tokens in the prompt.
                      total_tokens:
                        type: number
                        description: >-
                          Total number of tokens used in the request (prompt +
                          completion).
                      prompt_tokens_details:
                        type:
                          - object
                          - 'null'
                        properties:
                          cached_tokens:
                            type:
                              - integer
                              - 'null'
                          cache_creation_tokens:
                            type:
                              - integer
                              - 'null'
                          audio_tokens:
                            type:
                              - integer
                              - 'null'
                            description: >-
                              The number of audio input tokens consumed by the
                              request.
                      completion_tokens_details:
                        type:
                          - object
                          - 'null'
                        properties:
                          reasoning_tokens:
                            type:
                              - number
                              - 'null'
                          accepted_prediction_tokens:
                            type:
                              - number
                              - 'null'
                          rejected_prediction_tokens:
                            type:
                              - number
                              - 'null'
                          audio_tokens:
                            type:
                              - integer
                              - 'null'
                            description: >-
                              The number of audio output tokens produced by the
                              response.
                    description: Usage statistics for the completion request.
                required:
                  - id
                  - choices
                  - model
                  - object
components:
  schemas:
    ThinkingConfigDisabledSchema:
      type: object
      properties:
        type:
          type: string
          enum:
            - disabled
          description: Disables the thinking mode capability
      required:
        - type
      title: Thinking config disabled
      description: Disables the thinking mode capability
    ThinkingConfigEnabledSchema:
      type: object
      properties:
        type:
          type: string
          enum:
            - enabled
          description: Enables or disables the thinking mode capability
        budget_tokens:
          type: number
          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`.
        thinking_level:
          type: string
          enum:
            - low
            - medium
            - high
          description: >-
            The level of reasoning the model should use. This setting is
            supported only by `gemini-3` models. If budget_tokens is specified
            and `thinking_level` is available, `budget_tokens` will be ignored.
      required:
        - type
        - budget_tokens
      title: Thinking config enabled
      description: Enables the thinking mode capability
    ThinkingConfigAdaptiveSchema:
      type: object
      properties:
        type:
          type: string
          enum:
            - adaptive
          description: >-
            Lets the model dynamically determine when and how much to use
            extended thinking based on the complexity of each request. Supported
            on Claude Opus 4.6 and Sonnet 4.6.
      required:
        - type
      title: Thinking config adaptive
      description: >-
        Enables adaptive thinking mode where the model dynamically determines
        thinking depth
    PublicIdentity:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the contact
          example: contact_01ARZ3NDEKTSV4RRFFQ69G5FAV
        display_name:
          type: string
          description: Display name of the contact
          example: Jane Doe
        email:
          type: string
          format: email
          description: Email address of the contact
          example: jane.doe@example.com
        metadata:
          type: array
          items:
            type: object
            additionalProperties: {}
          description: >-
            A hash of key/value pairs containing any other data about the
            contact
          example:
            - department: Engineering
              role: Senior Developer
        logo_url:
          type: string
          description: URL to the contact's avatar or logo
          example: https://example.com/avatars/jane-doe.jpg
        tags:
          type: array
          items:
            type: string
          description: A list of tags associated with the contact
          example:
            - hr
            - engineering
      required:
        - id
      description: >-
        Information about the identity making the request. If the identity does
        not exist, it will be created automatically.
    PublicContact:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the contact
          example: contact_01ARZ3NDEKTSV4RRFFQ69G5FAV
        display_name:
          type: string
          description: Display name of the contact
          example: Jane Doe
        email:
          type: string
          format: email
          description: Email address of the contact
          example: jane.doe@example.com
        metadata:
          type: array
          items:
            type: object
            additionalProperties: {}
          description: >-
            A hash of key/value pairs containing any other data about the
            contact
          example:
            - department: Engineering
              role: Senior Developer
        logo_url:
          type: string
          description: URL to the contact's avatar or logo
          example: https://example.com/avatars/jane-doe.jpg
        tags:
          type: array
          items:
            type: string
          description: A list of tags associated with the contact
          example:
            - hr
            - engineering
      required:
        - id
      description: >-
        @deprecated Use identity instead. Information about the contact making
        the request.
      deprecated: true
  securitySchemes:
    ApiKey:
      type: http
      scheme: bearer
      bearerFormat: JWT

````