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

# Cancel an Automation run

> Commit cancellation on the original occurrence and stop only its exact accepted child inputs.



## OpenAPI

````yaml /openapi.json post /v1/automation_runs/{id}/cancel
openapi: 3.1.0
info:
  title: Checkfu API
  version: '2026-08-31'
  description: >-
    Authentication is declared per operation: API-key, runtime, or connector
    bearer; Automation signature; or credential-free pairing redemption. Every
    general Checkfu REST request requires the dated `Checkfu-Version` header
    (one of: 2026-08-31); the three MCP JSON-RPC transports use
    `MCP-Protocol-Version`, A2A uses `A2A-Version`, and the provider OAuth
    callback carries neither Checkfu header. API keys resolve one Workspace
    without a request selector; authenticated responses identify it with
    `Checkfu-Workspace-Id`.
servers:
  - url: https://api.checkfu.com
security:
  - bearerAuth: []
tags:
  - name: organizations
  - name: sourceRepositories
  - name: tenants
  - name: workspaces
  - name: principals
  - name: principalGroups
  - name: principalAccessCredentials
  - name: apiKeys
  - name: agents
  - name: harnessRuntime
  - name: permissionAssignments
  - name: actionPolicies
  - name: files
  - name: memoryStores
  - name: modelCredentials
  - name: modelRoutingProfiles
  - name: toolSources
  - name: skills
  - name: skillSources
  - name: agentBlueprints
  - name: skillProposals
  - name: instructionProposals
  - name: catalog
  - name: concepts
  - name: support
  - name: connections
  - name: connectionAssignments
  - name: connectedRuntimes
  - name: fileTrees
  - name: collaboration
  - name: automationGraphs
  - name: automations
  - name: actionApprovals
  - name: standingApprovals
  - name: workloadReviewPolicies
  - name: usage
  - name: models
  - name: budgets
  - name: billing
  - name: sessions
  - name: audit
  - name: sessionExports
  - name: runs
  - name: runnerPools
  - name: transcripts
  - name: sessionWatches
  - name: sessionCapsules
  - name: sessionTrajectories
  - name: webhookEndpoints
  - name: integrationGateway
  - name: environments
  - name: vaults
  - name: apiMcp
  - name: a2a
paths:
  /v1/automation_runs/{id}/cancel:
    post:
      tags:
        - automations
      summary: Cancel an Automation run
      description: >-
        Commit cancellation on the original occurrence and stop only its exact
        accepted child inputs. Future claims are fenced. A cancellation request
        does not imply stopped external effects, settled charges or erased
        history; retrieve the same run for current observations. Accepts an
        optional Idempotency-Key.


        Checkfu support posture: alpha; hosted. Required evidence journey:
        automation-firing. Deployment-specific readiness and the latest proven
        release are available from GET /v1/support/capabilities.
      operationId: automations.cancelAutomationRun
      parameters:
        - name: id
          in: path
          schema:
            $ref: '#/components/schemas/AutomationFiringId'
          required: true
        - name: checkfu-version
          in: header
          schema:
            type: string
            enum:
              - '2026-08-31'
          required: true
        - name: idempotency-key
          in: header
          schema:
            type: string
            allOf:
              - maxLength: 255
          required: false
      requestBody:
        content:
          application/json:
            schema:
              anyOf:
                - type: object
                - type: array
        required: true
      responses:
        '200':
          description: AutomationRun
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AutomationRun_1'
          headers:
            checkfu-workspace-id:
              description: The Workspace resolved from the authenticated bearer credential.
              required: true
              schema:
                $ref: '#/components/schemas/WorkspaceId'
        '400':
          description: Typed Checkfu wire error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationMalformedError'
        '401':
          description: Typed Checkfu wire error
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: object
                    required:
                      - type
                      - message
                      - more
                    properties:
                      type:
                        type: string
                        enum:
                          - auth.invalid_key
                      message:
                        type: string
                      more:
                        type: string
                        enum:
                          - >-
                            https://docs.checkfu.com/reference/errors#auth-invalid-key
                        description: >-
                          Stable public documentation and remedy for this error
                          type.
                    additionalProperties: false
                additionalProperties: false
        '403':
          description: >-
            The organization, tenant, or workspace backing this key is
            administratively disabled. | Deployment governance or retention
            policy denied the request.
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    required:
                      - error
                    properties:
                      error:
                        type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - auth.disabled_tenancy
                          message:
                            type: string
                          more:
                            type: string
                            enum:
                              - >-
                                https://docs.checkfu.com/reference/errors#auth-disabled-tenancy
                            description: >-
                              Stable public documentation and remedy for this
                              error type.
                        required:
                          - type
                          - message
                          - more
                        additionalProperties: false
                    additionalProperties: false
                  - $ref: '#/components/schemas/PolicyDeniedError'
        '404':
          description: >-
            The requested resource does not exist in the resolved deployment
            boundary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationNotFoundError'
        '409':
          description: >-
            The request conflicts with the resource's current state. | An
            idempotent mutation conflicts with a completed or in-progress
            request for the same key.
          content:
            application/json:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/ValidationConflictError'
                  - $ref: '#/components/schemas/IdempotencyConflictError'
        '429':
          description: Typed Checkfu wire error
          headers:
            retry-after:
              description: >-
                Delay in seconds for rate limits or deployment quotas with a
                known release or UTC reset boundary
              required: false
              schema:
                type: integer
                minimum: 1
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: object
                    required:
                      - type
                      - message
                      - more
                    properties:
                      type:
                        type: string
                        enum:
                          - budget.exceeded
                      message:
                        type: string
                      more:
                        type: string
                        enum:
                          - >-
                            https://docs.checkfu.com/reference/errors#budget-exceeded
                        description: >-
                          Stable public documentation and remedy for this error
                          type.
                    additionalProperties: false
                additionalProperties: false
        '500':
          description: >-
            An unexpected internal failure occurred; the message contains an
            opaque incident reference.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RuntimeInternalError'
      security:
        - bearerAuth: []
components:
  schemas:
    AutomationFiringId:
      type: string
      pattern: ^afire_[0-9a-f]{32}$
    AutomationRun_1:
      type: object
      properties:
        type:
          type: string
          enum:
            - automation_run
        id:
          $ref: '#/components/schemas/AutomationFiringId'
        automation_id:
          $ref: '#/components/schemas/AutomationId'
        definition_revision:
          anyOf:
            - type: integer
              exclusiveMinimum: 0
            - type: 'null'
        agent:
          $ref: '#/components/schemas/Union_256'
        steps:
          $ref: '#/components/schemas/Union_257'
        session_id:
          anyOf:
            - $ref: '#/components/schemas/SessionId'
            - type: 'null'
        error:
          $ref: '#/components/schemas/Union_259'
        trigger_context:
          $ref: '#/components/schemas/Union_260'
        created_at:
          type: string
        updated_at:
          type: string
        admission:
          $ref: '#/components/schemas/Objects_146'
        execution:
          $ref: '#/components/schemas/Objects_147'
        quality:
          $ref: '#/components/schemas/Objects_148'
        release:
          $ref: '#/components/schemas/Objects_149'
        settlement:
          $ref: '#/components/schemas/Objects_150'
        cleanup:
          $ref: '#/components/schemas/Objects_157'
        effects:
          $ref: '#/components/schemas/Arrays_41'
        children:
          $ref: '#/components/schemas/Arrays_42'
      required:
        - type
        - id
        - automation_id
        - definition_revision
        - agent
        - steps
        - session_id
        - error
        - trigger_context
        - created_at
        - updated_at
        - admission
        - execution
        - quality
        - release
        - settlement
        - cleanup
        - effects
        - children
      additionalProperties: false
    WorkspaceId:
      type: string
      pattern: ^wrkspc_[0-9a-f]{32}$
    ValidationMalformedError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - validation.malformed
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#validation-malformed
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: >-
        The request could not be decoded or violated a declared input
        constraint.
    PolicyDeniedError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - policy.denied
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#policy-denied
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: Deployment governance or retention policy denied the request.
    ValidationNotFoundError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - validation.not_found
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#validation-not-found
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: >-
        The requested resource does not exist in the resolved deployment
        boundary.
    ValidationConflictError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - validation.conflict
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#validation-conflict
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: The request conflicts with the resource's current state.
    IdempotencyConflictError:
      anyOf:
        - $ref: '#/components/schemas/ValidationIdempotencyConflictError'
        - $ref: '#/components/schemas/ValidationIdempotencyInProgressError'
      description: >-
        An idempotent mutation conflicts with a completed or in-progress request
        for the same key.
    RuntimeInternalError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - runtime.internal
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#runtime-internal
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: >-
        An unexpected internal failure occurred; the message contains an opaque
        incident reference.
    AutomationId:
      type: string
      pattern: ^auto_[0-9a-f]{32}$
    Union_256:
      anyOf:
        - type: object
          properties:
            type:
              type: string
              enum:
                - agent
            id:
              $ref: '#/components/schemas/AgentId'
            version:
              type: integer
              exclusiveMinimum: 0
          required:
            - type
            - id
            - version
          additionalProperties: false
        - type: 'null'
    Union_257:
      anyOf:
        - $ref: '#/components/schemas/Objects_144'
        - type: 'null'
    SessionId:
      type: string
      pattern: ^sess_[0-9a-f]{32}$
    Union_259:
      anyOf:
        - $ref: '#/components/schemas/Objects_145'
        - type: 'null'
    Union_260:
      anyOf:
        - type: object
          properties:
            type:
              type: string
              enum:
                - manual
          required:
            - type
          additionalProperties: false
        - type: object
          properties:
            type:
              type: string
              enum:
                - schedule
            scheduled_at:
              type: string
          required:
            - type
            - scheduled_at
          additionalProperties: false
        - type: object
          properties:
            type:
              type: string
              enum:
                - webhook
            event_identity_digest:
              anyOf:
                - type: string
                - type: 'null'
          required:
            - type
            - event_identity_digest
          additionalProperties: false
        - type: object
          properties:
            type:
              type: string
              enum:
                - subscription
            source_id:
              anyOf:
                - type: string
                - type: 'null'
          required:
            - type
            - source_id
          additionalProperties: false
    Objects_146:
      type: object
      properties:
        status:
          type: string
          enum:
            - pending
            - accepted
            - rejected
            - canceled
            - unknown
        error:
          anyOf:
            - $ref: '#/components/schemas/Objects_145'
            - type: 'null'
      required:
        - status
        - error
      additionalProperties: false
    Objects_147:
      type: object
      properties:
        status:
          type: string
          enum:
            - not_started
            - running
            - waiting
            - completed
            - failed
            - canceled
            - unknown
        wait_reason:
          anyOf:
            - type: string
              enum:
                - approval
                - input
                - timer
                - capacity
                - reconciliation
            - type: 'null'
        cancel_status:
          type: string
          enum:
            - not_requested
            - requested
            - stopped
            - completed_before_stop
            - unconfirmed
      required:
        - status
        - wait_reason
        - cancel_status
      additionalProperties: false
    Objects_148:
      type: object
      properties:
        status:
          type: string
          enum:
            - not_requested
            - pending
            - accepted
            - exhausted
            - indeterminate
            - error
        rounds_completed:
          type: integer
          minimum: 0
        max_rounds:
          anyOf:
            - type: integer
              minimum: 0
            - type: 'null'
      required:
        - status
        - rounds_completed
        - max_rounds
      additionalProperties: false
    Objects_149:
      type: object
      properties:
        status:
          type: string
          enum:
            - not_requested
            - pending
            - released
            - partially_released
            - withheld
            - unavailable
            - erased
        result:
          anyOf:
            - type: object
              properties:
                session_id:
                  $ref: '#/components/schemas/SessionId'
                input_id:
                  $ref: '#/components/schemas/EventId'
              required:
                - session_id
                - input_id
              additionalProperties: false
            - type: 'null'
      required:
        - status
        - result
      additionalProperties: false
    Objects_150:
      type: object
      properties:
        status:
          type: string
          enum:
            - pending
            - settled
            - unknown
        usage:
          anyOf:
            - type: object
              properties:
                data:
                  type: array
                  items:
                    $ref: '#/components/schemas/UsageEntrySubject'
                next_page:
                  anyOf:
                    - type: string
                    - type: 'null'
              required:
                - data
                - next_page
              additionalProperties: false
            - type: 'null'
      required:
        - status
        - usage
      additionalProperties: false
    Objects_157:
      type: object
      properties:
        status:
          type: string
          enum:
            - not_required
            - pending
            - completed
            - blocked
      required:
        - status
      additionalProperties: false
    Arrays_41:
      type: array
      items:
        anyOf:
          - type: object
            properties:
              type:
                type: string
                enum:
                  - memory_proposal
              memory_store_id:
                type: string
              proposal_id:
                type: string
            required:
              - type
              - memory_store_id
              - proposal_id
            additionalProperties: false
          - type: object
            properties:
              type:
                type: string
                enum:
                  - memory_publication
              memory_store_id:
                type: string
              snapshot_id:
                type: string
              disposition:
                type: string
                enum:
                  - published
                  - unchanged
            required:
              - type
              - memory_store_id
              - snapshot_id
              - disposition
            additionalProperties: false
          - type: object
            properties:
              type:
                type: string
                enum:
                  - skill_proposal
              proposal_id:
                type: string
              status:
                type: string
                enum:
                  - created
                  - verified
                  - submitted
                  - pending_adoption
                  - rejected
                  - unknown
            required:
              - type
              - proposal_id
              - status
            additionalProperties: false
          - type: object
            properties:
              type:
                type: string
                enum:
                  - skill_adoption
              skill_id:
                type: string
              version:
                type: integer
              disposition:
                type: string
                enum:
                  - adopted
                  - unchanged
            required:
              - type
              - skill_id
              - version
              - disposition
            additionalProperties: false
    Arrays_42:
      type: array
      items:
        type: object
        properties:
          step_id:
            anyOf:
              - type: string
              - type: 'null'
          session_id:
            $ref: '#/components/schemas/SessionId'
          input_id:
            anyOf:
              - $ref: '#/components/schemas/EventId'
              - type: 'null'
          run_id:
            anyOf:
              - $ref: '#/components/schemas/RunId'
              - type: 'null'
          status:
            type: string
            enum:
              - queued
              - running
              - waiting
              - completed
              - failed
              - canceled
              - unknown
        required:
          - step_id
          - session_id
          - input_id
          - run_id
          - status
        additionalProperties: false
    ValidationIdempotencyConflictError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - validation.idempotency_conflict
            message:
              type: string
            more:
              type: string
              enum:
                - >-
                  https://docs.checkfu.com/reference/errors#validation-idempotency-conflict
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: The Idempotency-Key is already bound to a different request.
    ValidationIdempotencyInProgressError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - validation.idempotency_in_progress
            message:
              type: string
            more:
              type: string
              enum:
                - >-
                  https://docs.checkfu.com/reference/errors#validation-idempotency-in-progress
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: >-
        An identical idempotent request is still in progress and may be retried
        later.
    AgentId:
      type: string
      pattern: ^agent_[0-9a-f]{32}$
    Objects_144:
      type: object
      properties:
        program_fingerprint:
          type: string
          pattern: ^sha256:[0-9a-f]{64}$
        state:
          type: string
          enum:
            - pending
            - settled
            - terminal
        result:
          anyOf:
            - type: string
              enum:
                - completed
                - failed
                - denied
                - rejected
            - type: 'null'
        steps:
          type: array
          items:
            $ref: '#/components/schemas/Union_258'
        wake_at:
          anyOf:
            - type: string
            - type: 'null'
        step_attempts:
          type: array
          items:
            $ref: '#/components/schemas/AutomationStepAttempts'
        step_items:
          type: array
          items:
            $ref: '#/components/schemas/AutomationStepItems'
      required:
        - state
        - result
        - steps
        - wake_at
      additionalProperties: false
    Objects_145:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/Union_208'
        message:
          type: string
        more:
          type: string
          pattern: ^https:\/\/docs\.checkfu\.com\/reference\/errors#[a-z0-9-]+$
      required:
        - type
        - message
      additionalProperties: false
    EventId:
      type: string
      pattern: ^evt_[0-9a-f]{32}$
    UsageEntrySubject:
      anyOf:
        - type: object
          properties:
            id:
              $ref: '#/components/schemas/UsageEntryId'
            session_id:
              anyOf:
                - $ref: '#/components/schemas/SessionId'
                - type: 'null'
            run:
              anyOf:
                - $ref: '#/components/schemas/RunId'
                - type: 'null'
            attempt:
              type: 'null'
            agent_id:
              anyOf:
                - $ref: '#/components/schemas/AgentId'
                - type: 'null'
            automation_id:
              anyOf:
                - $ref: '#/components/schemas/AutomationId'
                - type: 'null'
            evaluation: false
            execution_origin: false
            sequence:
              type: integer
              exclusiveMinimum: 0
            workspace_id:
              $ref: '#/components/schemas/WorkspaceId'
            principal_id:
              $ref: '#/components/schemas/Union_262'
            anonymous_subject_ref:
              $ref: '#/components/schemas/Union_263'
            recorded_at:
              $ref: '#/components/schemas/UsageTimestamp'
            measurement:
              type: object
              properties:
                kind:
                  type: string
                  enum:
                    - managed_tool
                tool_invocation_id:
                  $ref: '#/components/schemas/ToolInvocationId'
                selection:
                  $ref: '#/components/schemas/ManagedToolSelection'
                origin:
                  anyOf:
                    - type: object
                      properties:
                        origin_type:
                          type: string
                          enum:
                            - session
                        session_id:
                          $ref: '#/components/schemas/SessionId'
                        run:
                          $ref: '#/components/schemas/RunId'
                      required:
                        - origin_type
                        - session_id
                        - run
                      additionalProperties: false
                    - type: object
                      properties:
                        origin_type:
                          type: string
                          enum:
                            - automation
                        automation_id:
                          $ref: '#/components/schemas/AutomationId'
                        automation_firing_id:
                          $ref: '#/components/schemas/AutomationFiringId'
                        automation_step_id:
                          type: string
                          allOf:
                            - minLength: 1
                            - maxLength: 64
                            - pattern: ^[A-Za-z0-9_]+$
                      required:
                        - origin_type
                        - automation_id
                        - automation_firing_id
                        - automation_step_id
                      additionalProperties: false
                    - type: object
                      properties:
                        origin_type:
                          type: string
                          enum:
                            - api
                      required:
                        - origin_type
                      additionalProperties: false
                price:
                  $ref: '#/components/schemas/ManagedToolPrice'
                outcome:
                  anyOf:
                    - type: object
                      properties:
                        outcome_type:
                          type: string
                          enum:
                            - valid_result
                        empty_result:
                          type: boolean
                      required:
                        - outcome_type
                        - empty_result
                      additionalProperties: false
                    - type: object
                      properties:
                        outcome_type:
                          type: string
                          enum:
                            - failed
                            - canceled
                        dispatched:
                          type: boolean
                      required:
                        - outcome_type
                        - dispatched
                      additionalProperties: false
              required:
                - kind
                - tool_invocation_id
                - selection
                - origin
                - price
                - outcome
              additionalProperties: false
            cost:
              type: object
              properties:
                tokens: false
                active_ms: false
                storage_mib_ms: false
                running_ms: false
                managed_tool_calls:
                  type: number
                  enum:
                    - 1
                billed_microusd:
                  type: integer
                  allOf:
                    - minimum: 0
                    - maximum: 9007199254740991
                rounding_remainder_millionths:
                  type: number
                  enum:
                    - 0
              required:
                - managed_tool_calls
                - billed_microusd
                - rounding_remainder_millionths
              additionalProperties: false
          required:
            - id
            - session_id
            - run
            - attempt
            - agent_id
            - sequence
            - workspace_id
            - principal_id
            - anonymous_subject_ref
            - recorded_at
            - measurement
            - cost
          additionalProperties: false
        - anyOf:
            - type: object
              properties:
                id:
                  $ref: '#/components/schemas/UsageEntryId'
                session_id:
                  $ref: '#/components/schemas/SessionId'
                run:
                  $ref: '#/components/schemas/RunId'
                attempt:
                  type: 'null'
                agent_id:
                  $ref: '#/components/schemas/AgentId'
                automation_id:
                  anyOf:
                    - $ref: '#/components/schemas/AutomationId'
                    - type: 'null'
                evaluation: false
                execution_origin:
                  type: string
                  enum:
                    - native_sdk
                sequence:
                  type: integer
                  exclusiveMinimum: 0
                workspace_id:
                  $ref: '#/components/schemas/WorkspaceId'
                principal_id:
                  $ref: '#/components/schemas/Union_262'
                anonymous_subject_ref:
                  $ref: '#/components/schemas/Union_263'
                recorded_at:
                  $ref: '#/components/schemas/UsageTimestamp'
                measurement:
                  $ref: '#/components/schemas/Objects_151'
                cost:
                  $ref: '#/components/schemas/Objects_153'
              required:
                - id
                - session_id
                - run
                - attempt
                - agent_id
                - execution_origin
                - sequence
                - workspace_id
                - principal_id
                - anonymous_subject_ref
                - recorded_at
                - measurement
                - cost
              additionalProperties: false
            - type: object
              properties:
                id:
                  $ref: '#/components/schemas/UsageEntryId'
                session_id:
                  $ref: '#/components/schemas/SessionId'
                run:
                  $ref: '#/components/schemas/RunId'
                attempt:
                  $ref: '#/components/schemas/RunAttemptId'
                agent_id:
                  $ref: '#/components/schemas/AgentId'
                automation_id:
                  anyOf:
                    - $ref: '#/components/schemas/AutomationId'
                    - type: 'null'
                evaluation: false
                execution_origin: false
                sequence:
                  type: integer
                  exclusiveMinimum: 0
                workspace_id:
                  $ref: '#/components/schemas/WorkspaceId'
                principal_id:
                  $ref: '#/components/schemas/Union_262'
                anonymous_subject_ref:
                  $ref: '#/components/schemas/Union_263'
                recorded_at:
                  $ref: '#/components/schemas/UsageTimestamp'
                measurement:
                  $ref: '#/components/schemas/Objects_151'
                cost:
                  $ref: '#/components/schemas/Objects_153'
              required:
                - id
                - session_id
                - run
                - attempt
                - agent_id
                - sequence
                - workspace_id
                - principal_id
                - anonymous_subject_ref
                - recorded_at
                - measurement
                - cost
              additionalProperties: false
            - type: object
              properties:
                id:
                  $ref: '#/components/schemas/UsageEntryId'
                session_id:
                  anyOf:
                    - $ref: '#/components/schemas/SessionId'
                    - type: 'null'
                run:
                  type: 'null'
                attempt:
                  type: 'null'
                agent_id:
                  anyOf:
                    - $ref: '#/components/schemas/AgentId'
                    - type: 'null'
                automation_id:
                  anyOf:
                    - $ref: '#/components/schemas/AutomationId'
                    - type: 'null'
                evaluation:
                  $ref: '#/components/schemas/EvaluationUsageOrigin'
                execution_origin: false
                sequence:
                  type: integer
                  exclusiveMinimum: 0
                workspace_id:
                  $ref: '#/components/schemas/WorkspaceId'
                principal_id:
                  $ref: '#/components/schemas/Union_262'
                anonymous_subject_ref:
                  $ref: '#/components/schemas/Union_263'
                recorded_at:
                  $ref: '#/components/schemas/UsageTimestamp'
                measurement:
                  $ref: '#/components/schemas/Objects_151'
                cost:
                  $ref: '#/components/schemas/Objects_153'
              required:
                - id
                - session_id
                - run
                - attempt
                - agent_id
                - evaluation
                - sequence
                - workspace_id
                - principal_id
                - anonymous_subject_ref
                - recorded_at
                - measurement
                - cost
              additionalProperties: false
        - anyOf:
            - type: object
              properties:
                id:
                  $ref: '#/components/schemas/UsageEntryId'
                session_id:
                  $ref: '#/components/schemas/SessionId'
                run:
                  $ref: '#/components/schemas/RunId'
                attempt:
                  type: 'null'
                agent_id:
                  $ref: '#/components/schemas/AgentId'
                automation_id:
                  anyOf:
                    - $ref: '#/components/schemas/AutomationId'
                    - type: 'null'
                evaluation: false
                execution_origin:
                  type: string
                  enum:
                    - native_sdk
                sequence:
                  type: integer
                  exclusiveMinimum: 0
                workspace_id:
                  $ref: '#/components/schemas/WorkspaceId'
                principal_id:
                  $ref: '#/components/schemas/Union_262'
                anonymous_subject_ref:
                  $ref: '#/components/schemas/Union_263'
                recorded_at:
                  $ref: '#/components/schemas/UsageTimestamp'
                measurement:
                  $ref: '#/components/schemas/Objects_154'
                cost:
                  $ref: '#/components/schemas/Objects_156'
              required:
                - id
                - session_id
                - run
                - attempt
                - agent_id
                - execution_origin
                - sequence
                - workspace_id
                - principal_id
                - anonymous_subject_ref
                - recorded_at
                - measurement
                - cost
              additionalProperties: false
            - type: object
              properties:
                id:
                  $ref: '#/components/schemas/UsageEntryId'
                session_id:
                  $ref: '#/components/schemas/SessionId'
                run:
                  $ref: '#/components/schemas/RunId'
                attempt:
                  $ref: '#/components/schemas/RunAttemptId'
                agent_id:
                  $ref: '#/components/schemas/AgentId'
                automation_id:
                  anyOf:
                    - $ref: '#/components/schemas/AutomationId'
                    - type: 'null'
                evaluation: false
                execution_origin: false
                sequence:
                  type: integer
                  exclusiveMinimum: 0
                workspace_id:
                  $ref: '#/components/schemas/WorkspaceId'
                principal_id:
                  $ref: '#/components/schemas/Union_262'
                anonymous_subject_ref:
                  $ref: '#/components/schemas/Union_263'
                recorded_at:
                  $ref: '#/components/schemas/UsageTimestamp'
                measurement:
                  $ref: '#/components/schemas/Objects_154'
                cost:
                  $ref: '#/components/schemas/Objects_156'
              required:
                - id
                - session_id
                - run
                - attempt
                - agent_id
                - sequence
                - workspace_id
                - principal_id
                - anonymous_subject_ref
                - recorded_at
                - measurement
                - cost
              additionalProperties: false
        - type: object
          properties:
            id:
              $ref: '#/components/schemas/UsageEntryId'
            session_id:
              $ref: '#/components/schemas/SessionId'
            run:
              $ref: '#/components/schemas/RunId'
            attempt:
              $ref: '#/components/schemas/RunAttemptId'
            agent_id:
              $ref: '#/components/schemas/AgentId'
            automation_id:
              anyOf:
                - $ref: '#/components/schemas/AutomationId'
                - type: 'null'
            evaluation: false
            execution_origin: false
            sequence:
              type: integer
              exclusiveMinimum: 0
            workspace_id:
              $ref: '#/components/schemas/WorkspaceId'
            principal_id:
              $ref: '#/components/schemas/Union_262'
            anonymous_subject_ref:
              $ref: '#/components/schemas/Union_263'
            recorded_at:
              $ref: '#/components/schemas/UsageTimestamp'
            measurement:
              $ref: '#/components/schemas/SandboxComputeInterval'
            cost:
              type: object
              properties:
                tokens: false
                active_ms:
                  type: integer
                  minimum: 0
                storage_mib_ms: false
                running_ms: false
                billed_microusd: false
              required:
                - active_ms
              additionalProperties: false
          required:
            - id
            - session_id
            - run
            - attempt
            - agent_id
            - sequence
            - workspace_id
            - principal_id
            - anonymous_subject_ref
            - recorded_at
            - measurement
            - cost
          additionalProperties: false
        - type: object
          properties:
            id:
              $ref: '#/components/schemas/UsageEntryId'
            session_id:
              $ref: '#/components/schemas/SessionId'
            run:
              $ref: '#/components/schemas/RunId'
            attempt:
              $ref: '#/components/schemas/RunAttemptId'
            agent_id:
              $ref: '#/components/schemas/AgentId'
            automation_id:
              anyOf:
                - $ref: '#/components/schemas/AutomationId'
                - type: 'null'
            evaluation: false
            execution_origin: false
            sequence:
              type: integer
              exclusiveMinimum: 0
            workspace_id:
              $ref: '#/components/schemas/WorkspaceId'
            principal_id:
              $ref: '#/components/schemas/Union_262'
            anonymous_subject_ref:
              $ref: '#/components/schemas/Union_263'
            recorded_at:
              $ref: '#/components/schemas/UsageTimestamp'
            measurement:
              $ref: '#/components/schemas/SnapshotRetentionInterval'
            cost:
              type: object
              properties:
                tokens: false
                active_ms: false
                storage_mib_ms:
                  type: integer
                  minimum: 0
                running_ms: false
                billed_microusd: false
              required:
                - storage_mib_ms
              additionalProperties: false
          required:
            - id
            - session_id
            - run
            - attempt
            - agent_id
            - sequence
            - workspace_id
            - principal_id
            - anonymous_subject_ref
            - recorded_at
            - measurement
            - cost
          additionalProperties: false
        - type: object
          properties:
            id:
              $ref: '#/components/schemas/UsageEntryId'
            session_id:
              $ref: '#/components/schemas/SessionId'
            run:
              $ref: '#/components/schemas/RunId'
            attempt:
              $ref: '#/components/schemas/RunAttemptId'
            agent_id:
              $ref: '#/components/schemas/AgentId'
            automation_id:
              anyOf:
                - $ref: '#/components/schemas/AutomationId'
                - type: 'null'
            evaluation: false
            execution_origin: false
            sequence:
              type: integer
              exclusiveMinimum: 0
            workspace_id:
              $ref: '#/components/schemas/WorkspaceId'
            principal_id:
              $ref: '#/components/schemas/Union_262'
            anonymous_subject_ref:
              $ref: '#/components/schemas/Union_263'
            recorded_at:
              $ref: '#/components/schemas/UsageTimestamp'
            measurement:
              $ref: '#/components/schemas/SessionRuntimeInterval'
            cost:
              $ref: '#/components/schemas/Union_266'
          required:
            - id
            - session_id
            - run
            - attempt
            - agent_id
            - sequence
            - workspace_id
            - principal_id
            - anonymous_subject_ref
            - recorded_at
            - measurement
            - cost
          additionalProperties: false
        - type: object
          properties:
            id:
              $ref: '#/components/schemas/UsageEntryId'
            session_id:
              $ref: '#/components/schemas/SessionId'
            run:
              $ref: '#/components/schemas/RunId'
            attempt:
              type: 'null'
            agent_id:
              $ref: '#/components/schemas/AgentId'
            automation_id:
              anyOf:
                - $ref: '#/components/schemas/AutomationId'
                - type: 'null'
            evaluation: false
            execution_origin: false
            sequence:
              type: integer
              exclusiveMinimum: 0
            workspace_id:
              $ref: '#/components/schemas/WorkspaceId'
            principal_id:
              $ref: '#/components/schemas/Union_262'
            anonymous_subject_ref:
              $ref: '#/components/schemas/Union_263'
            recorded_at:
              $ref: '#/components/schemas/UsageTimestamp'
            measurement:
              $ref: '#/components/schemas/SessionRuntimeInterval'
            cost:
              $ref: '#/components/schemas/Union_266'
          required:
            - id
            - session_id
            - run
            - attempt
            - agent_id
            - sequence
            - workspace_id
            - principal_id
            - anonymous_subject_ref
            - recorded_at
            - measurement
            - cost
          additionalProperties: false
        - type: object
          properties:
            id:
              $ref: '#/components/schemas/UsageEntryId'
            session_id:
              $ref: '#/components/schemas/SessionId'
            run:
              $ref: '#/components/schemas/RunId'
            attempt:
              $ref: '#/components/schemas/RunAttemptId'
            agent_id:
              $ref: '#/components/schemas/AgentId'
            automation_id:
              anyOf:
                - $ref: '#/components/schemas/AutomationId'
                - type: 'null'
            evaluation: false
            execution_origin: false
            sequence:
              type: integer
              exclusiveMinimum: 0
            workspace_id:
              $ref: '#/components/schemas/WorkspaceId'
            principal_id:
              $ref: '#/components/schemas/Union_262'
            anonymous_subject_ref:
              $ref: '#/components/schemas/Union_263'
            recorded_at:
              $ref: '#/components/schemas/UsageTimestamp'
            measurement:
              type: object
              properties:
                kind:
                  type: string
                  enum:
                    - web_search
                requests:
                  type: integer
                  minimum: 0
              required:
                - kind
                - requests
              additionalProperties: false
            cost:
              type: object
              properties:
                tokens: false
                active_ms: false
                storage_mib_ms: false
                running_ms: false
                requests:
                  type: integer
                  minimum: 0
                billed_microusd:
                  type: integer
                  allOf:
                    - minimum: 0
                    - maximum: 9007199254740991
                rounding_remainder_millionths:
                  type: integer
                  minimum: 0
              required:
                - requests
                - billed_microusd
                - rounding_remainder_millionths
              additionalProperties: false
          required:
            - id
            - session_id
            - run
            - attempt
            - agent_id
            - sequence
            - workspace_id
            - principal_id
            - anonymous_subject_ref
            - recorded_at
            - measurement
            - cost
          additionalProperties: false
    RunId:
      type: string
      pattern: ^run_[0-9a-f]{32}$
    Union_258:
      anyOf:
        - type: object
          properties:
            step:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 64
                - pattern: ^[A-Za-z0-9_]+$
            kind:
              type: string
              enum:
                - completed
            unchanged:
              type: boolean
              enum:
                - true
          required:
            - step
            - kind
          additionalProperties: false
        - type: object
          properties:
            step:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 64
                - pattern: ^[A-Za-z0-9_]+$
            kind:
              type: string
              enum:
                - skipped
          required:
            - step
            - kind
          additionalProperties: false
        - type: object
          properties:
            step:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 64
                - pattern: ^[A-Za-z0-9_]+$
            kind:
              type: string
              enum:
                - rejected
          required:
            - step
            - kind
          additionalProperties: false
        - type: object
          properties:
            step:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 64
                - pattern: ^[A-Za-z0-9_]+$
            kind:
              type: string
              enum:
                - failed
            reason:
              $ref: '#/components/schemas/AutomationStepFailureReason'
          required:
            - step
            - kind
          additionalProperties: false
        - type: object
          properties:
            step:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 64
                - pattern: ^[A-Za-z0-9_]+$
            kind:
              type: string
              enum:
                - awaiting_approval
          required:
            - step
            - kind
          additionalProperties: false
        - type: object
          properties:
            step:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 64
                - pattern: ^[A-Za-z0-9_]+$
            kind:
              type: string
              enum:
                - waiting
          required:
            - step
            - kind
          additionalProperties: false
        - type: object
          properties:
            step:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 64
                - pattern: ^[A-Za-z0-9_]+$
            kind:
              type: string
              enum:
                - running
          required:
            - step
            - kind
          additionalProperties: false
        - type: object
          properties:
            step:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 64
                - pattern: ^[A-Za-z0-9_]+$
            kind:
              type: string
              enum:
                - denied
          required:
            - step
            - kind
          additionalProperties: false
        - type: object
          properties:
            step:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 64
                - pattern: ^[A-Za-z0-9_]+$
            kind:
              type: string
              enum:
                - decision
            branch:
              type: string
              enum:
                - continue
                - otherwise
                - uncertain
                - error
          required:
            - step
            - kind
            - branch
          additionalProperties: false
    AutomationStepAttempts:
      type: object
      properties:
        step:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 64
            - pattern: ^[A-Za-z0-9_]+$
        attempts:
          type: integer
          allOf:
            - minimum: 2
              maximum: 5
      required:
        - step
        - attempts
      additionalProperties: false
    AutomationStepItems:
      type: object
      properties:
        step:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 64
            - pattern: ^[A-Za-z0-9_]+$
        total:
          type: integer
          minimum: 0
        started:
          type: integer
          allOf:
            - minimum: 0
              maximum: 50
        completed:
          type: integer
          allOf:
            - minimum: 0
              maximum: 50
        failed:
          type: integer
          allOf:
            - minimum: 0
              maximum: 50
        rejected:
          type: integer
          allOf:
            - minimum: 0
              maximum: 50
        refusal:
          type: string
          enum:
            - items_missing
            - items_not_array
            - too_many_items
      required:
        - step
        - total
        - started
        - completed
        - failed
        - rejected
      additionalProperties: false
    Union_208:
      type: string
      enum:
        - validation.malformed
        - validation.prompt_integrity_review_required
        - validation.not_found
        - validation.conflict
        - automation.source_event_conflict
        - automation.original_pending
        - automation.original_unavailable
        - validation.idempotency_conflict
        - validation.idempotency_in_progress
        - validation.payload_too_large
        - validation.range_too_large
        - auth.invalid_key
        - auth.authorization_unavailable
        - auth.request_admission_unavailable
        - auth.disabled_tenancy
        - policy.denied
        - budget.exceeded
        - model.no_eligible_model
        - model.credential_rejected
        - model.platform_supply_unavailable
        - model.platform_capacity_reached
        - billing.entitlement_unavailable
        - billing.usage_limit_reached
        - billing.payment_required
        - billing.seat_activation_unavailable
        - memory.not_found
        - memory.conflict
        - memory.read_only
        - memory.invalid_path
        - memory.backend_unavailable
        - memory.curation_failed
        - runtime.invalid_transition
        - runtime.primary_thread
        - retention.zdr_unsupported
        - runtime.checkpoint_expired
        - runtime.session_history_unavailable
        - runtime.harness_unavailable
        - runtime.harness_failed
        - runtime.runner_unavailable
        - runtime.provider_host_unavailable
        - runtime.lease_lost
        - runtime.start_timeout
        - runtime.allocation_failed
        - runtime.allocation_not_ready
        - runtime.provisioning_suspended
        - runtime.computer_unavailable
        - runtime.turn_deadline_exceeded
        - runtime.observation_gap
        - runtime.observation_conflict
        - runtime.attestation_invalid
        - runtime.harness_incompatible
        - runtime.target_mismatch
        - runtime.transcript_index_unavailable
        - runtime.internal
    UsageEntryId:
      type: string
      pattern: ^use_[0-9a-f]{32}$
    Union_262:
      anyOf:
        - $ref: '#/components/schemas/PrincipalId'
        - type: 'null'
    Union_263:
      anyOf:
        - type: string
          allOf:
            - minLength: 1
        - type: 'null'
    UsageTimestamp:
      type: string
      allOf:
        - maxLength: 24
        - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$
          x-checkfu-current-timestamp: true
          description: A canonical UTC ISO-8601 usage timestamp with millisecond precision.
    ToolInvocationId:
      type: string
      pattern: ^tinv_[0-9a-f]{32}$
    ManagedToolSelection:
      type: object
      properties:
        managed_tool_id:
          $ref: '#/components/schemas/ManagedToolId'
        managed_tool_release_id:
          $ref: '#/components/schemas/ManagedToolReleaseId'
      required:
        - managed_tool_id
        - managed_tool_release_id
      additionalProperties: false
    ManagedToolPrice:
      type: object
      properties:
        rate_card_id:
          $ref: '#/components/schemas/BillingRateCardId'
        price_microusd:
          type: integer
          allOf:
            - minimum: 0
            - maximum: 9007199254740991
        billing_basis:
          type: string
          enum:
            - valid_result
            - admitted_dispatch
        valid_empty_result_billable:
          type: boolean
      required:
        - rate_card_id
        - price_microusd
        - billing_basis
        - valid_empty_result_billable
      additionalProperties: false
      description: >-
        One published fixed price per logical invocation; polling and result
        recovery do not add calls.
    Objects_151:
      type: object
      properties:
        kind:
          type: string
          enum:
            - model
        model_routing_profile_id:
          anyOf:
            - $ref: '#/components/schemas/ModelRoutingProfileId'
            - type: 'null'
        candidate:
          $ref: '#/components/schemas/Objects_152'
        tokens:
          $ref: '#/components/schemas/Objects_85'
        measured_at:
          $ref: '#/components/schemas/UsageTimestamp'
        supply_class:
          $ref: '#/components/schemas/Union_264'
        basis:
          anyOf:
            - type: string
              enum:
                - admitted_maximum
      required:
        - kind
        - model_routing_profile_id
        - candidate
        - tokens
        - measured_at
        - supply_class
      additionalProperties: false
    Objects_153:
      type: object
      properties:
        tokens:
          type: integer
          minimum: 0
        model_spend_microusd:
          anyOf:
            - type: integer
              allOf:
                - minimum: 0
                - maximum: 9007199254740991
            - type: 'null'
        active_ms: false
        storage_mib_ms: false
        running_ms: false
        billed_microusd: false
      required:
        - tokens
      additionalProperties: false
    RunAttemptId:
      type: string
      pattern: ^ratt_[0-9a-f]{32}$
    EvaluationUsageOrigin:
      type: object
      properties:
        parent_kind:
          type: string
          allOf:
            - minLength: 1
        parent_id:
          type: string
          allOf:
            - minLength: 1
        slot:
          type: string
          allOf:
            - minLength: 1
      required:
        - parent_kind
        - parent_id
        - slot
      additionalProperties: false
      description: The parent and operation slot that own one non-Agent model evaluation.
    Objects_154:
      type: object
      properties:
        kind:
          type: string
          enum:
            - model_unit
        model_routing_profile_id:
          anyOf:
            - $ref: '#/components/schemas/ModelRoutingProfileId'
            - type: 'null'
        candidate:
          $ref: '#/components/schemas/Objects_152'
        usage:
          $ref: '#/components/schemas/Objects_155'
        measured_at:
          $ref: '#/components/schemas/UsageTimestamp'
        supply_class:
          $ref: '#/components/schemas/Union_264'
      required:
        - kind
        - model_routing_profile_id
        - candidate
        - usage
        - measured_at
        - supply_class
      additionalProperties: false
    Objects_156:
      type: object
      properties:
        tokens: false
        active_ms: false
        storage_mib_ms: false
        running_ms: false
        billed_microusd: false
        unit:
          $ref: '#/components/schemas/Union_265'
        quantity_millionths:
          type: integer
          minimum: 0
        model_spend_microusd:
          anyOf:
            - type: integer
              allOf:
                - minimum: 0
                - maximum: 9007199254740991
            - type: 'null'
      required:
        - unit
        - quantity_millionths
      additionalProperties: false
    SandboxComputeInterval:
      type: object
      properties:
        kind:
          type: string
          enum:
            - sandbox_compute
        provider:
          type: string
          allOf:
            - minLength: 1
        environment_id:
          $ref: '#/components/schemas/EnvironmentId'
        period_started_at:
          $ref: '#/components/schemas/UsageTimestamp'
        period_ended_at:
          $ref: '#/components/schemas/UsageTimestamp'
        active_ms:
          type: integer
          minimum: 0
      required:
        - kind
        - provider
        - environment_id
        - period_started_at
        - period_ended_at
        - active_ms
      additionalProperties: false
    SnapshotRetentionInterval:
      type: object
      properties:
        kind:
          type: string
          enum:
            - snapshot_retention
        checkpoint_id:
          $ref: '#/components/schemas/CheckpointId'
        provider:
          type: string
          allOf:
            - minLength: 1
        environment_id:
          $ref: '#/components/schemas/EnvironmentId'
        storage_mib:
          type: integer
          exclusiveMinimum: 0
        period_started_at:
          $ref: '#/components/schemas/UsageTimestamp'
        period_ended_at:
          $ref: '#/components/schemas/UsageTimestamp'
        retained_ms:
          type: integer
          minimum: 0
      required:
        - kind
        - checkpoint_id
        - provider
        - environment_id
        - storage_mib
        - period_started_at
        - period_ended_at
        - retained_ms
      additionalProperties: false
    SessionRuntimeInterval:
      type: object
      properties:
        kind:
          type: string
          enum:
            - session_runtime
        thread_id:
          anyOf:
            - $ref: '#/components/schemas/SessionThreadId'
            - type: 'null'
        placement:
          type: string
          enum:
            - hosted_sandbox
            - runner
            - cloudflare_durable_object
        period_started_at:
          $ref: '#/components/schemas/UsageTimestamp'
        period_ended_at:
          $ref: '#/components/schemas/UsageTimestamp'
        running_ms:
          type: integer
          minimum: 0
        producer_version:
          type: number
          enum:
            - 1
            - 2
            - 3
      required:
        - kind
        - thread_id
        - placement
        - period_started_at
        - period_ended_at
        - running_ms
      additionalProperties: false
    Union_266:
      anyOf:
        - type: object
          properties:
            tokens: false
            active_ms: false
            storage_mib_ms: false
            running_ms:
              type: integer
              minimum: 0
            billed_microusd:
              type: integer
              allOf:
                - minimum: 0
                - maximum: 9007199254740991
            rounding_remainder_millionths:
              type: integer
              minimum: 0
          required:
            - running_ms
            - billed_microusd
            - rounding_remainder_millionths
          additionalProperties: false
        - type: object
          properties:
            tokens: false
            active_ms: false
            storage_mib_ms: false
            running_ms:
              type: integer
              minimum: 0
            billed_microusd:
              type: 'null'
            rounding_remainder_millionths:
              type: 'null'
          required:
            - running_ms
            - billed_microusd
            - rounding_remainder_millionths
          additionalProperties: false
    AutomationStepFailureReason:
      type: string
      pattern: ^[a-z][a-z0-9_]{0,127}$
    PrincipalId:
      type: string
      pattern: ^prin_[0-9a-f]{32}$
    ManagedToolId:
      type: string
      pattern: ^mtl_[0-9a-f]{32}$
    ManagedToolReleaseId:
      type: string
      pattern: ^mtrel_[0-9a-f]{32}$
    BillingRateCardId:
      type: string
      pattern: ^rate_[0-9a-f]{32}$
    ModelRoutingProfileId:
      type: string
      pattern: ^mrp_[0-9a-f]{32}$
    Objects_152:
      type: object
      properties:
        tier:
          $ref: '#/components/schemas/Union_128'
        provider:
          type: string
          pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
        model:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 255
        context_window_tokens:
          type: integer
          exclusiveMinimum: 0
        native_capabilities:
          anyOf:
            - type: object
              properties:
                version:
                  type: number
                  enum:
                    - 1
                wire_format:
                  type: string
                  enum:
                    - openai_chat
                max_output_tokens:
                  type: integer
                  exclusiveMinimum: 0
                input_modalities:
                  type: array
                  prefixItems:
                    - type: string
                      enum:
                        - text
                        - image
                  minItems: 1
                  items:
                    type: string
                    enum:
                      - text
                      - image
                reasoning:
                  type: boolean
                thinking_levels:
                  $ref: '#/components/schemas/Objects_70'
                compatibility:
                  type: object
                  properties:
                    supportsStore:
                      type: boolean
                    supportsDeveloperRole:
                      type: boolean
                    supportsReasoningEffort:
                      type: boolean
                    supportsUsageInStreaming:
                      type: boolean
                    supportsFinishReason:
                      type: boolean
                    maxTokensField:
                      type: string
                      enum:
                        - max_tokens
                        - max_completion_tokens
                    requiresToolResultName:
                      type: boolean
                    requiresAssistantAfterToolResult:
                      type: boolean
                    requiresThinkingAsText:
                      type: boolean
                    requiresReasoningContentOnAssistantMessages:
                      type: boolean
                    thinkingFormat:
                      type: string
                      enum:
                        - openai
                        - openrouter
                        - deepseek
                        - together
                        - zai
                        - qwen
                        - string-thinking
                        - ant-ling
                    zaiToolStream:
                      type: boolean
                    supportsStrictMode:
                      type: boolean
                    supportsOpenAIGrammarTools:
                      type: boolean
                    supportsMidConvoSystemMessages:
                      type: boolean
                    supportsMidConvoToolAdditions:
                      type: boolean
                    supportsThinkingTokenBudget:
                      type: boolean
                    thinkingTokenBudgetField:
                      type: string
                      enum:
                        - thinking_token_budget
                        - thinking_budget
                        - thinking_budget_tokens
                  required:
                    - supportsStore
                    - supportsDeveloperRole
                    - supportsReasoningEffort
                    - supportsUsageInStreaming
                    - supportsFinishReason
                    - maxTokensField
                    - requiresToolResultName
                    - requiresAssistantAfterToolResult
                    - requiresThinkingAsText
                    - requiresReasoningContentOnAssistantMessages
                    - thinkingFormat
                    - zaiToolStream
                    - supportsStrictMode
                    - supportsOpenAIGrammarTools
                    - supportsMidConvoSystemMessages
                    - supportsMidConvoToolAdditions
                    - supportsThinkingTokenBudget
                  additionalProperties: false
              required:
                - version
                - wire_format
                - max_output_tokens
                - input_modalities
                - reasoning
                - thinking_levels
                - compatibility
              additionalProperties: false
            - type: object
              properties:
                version:
                  type: number
                  enum:
                    - 1
                wire_format:
                  type: string
                  enum:
                    - openai_responses
                max_output_tokens:
                  type: integer
                  exclusiveMinimum: 0
                input_modalities:
                  type: array
                  prefixItems:
                    - type: string
                      enum:
                        - text
                        - image
                  minItems: 1
                  items:
                    type: string
                    enum:
                      - text
                      - image
                reasoning:
                  type: boolean
                thinking_levels:
                  $ref: '#/components/schemas/Objects_70'
                compatibility:
                  type: object
                  properties:
                    supportsDeveloperRole:
                      type: boolean
                    supportsMidConvoSystemMessages:
                      type: boolean
                    supportsStrictMode:
                      type: boolean
                    supportsOpenAIGrammarTools:
                      type: boolean
                    supportsAdditionalTools:
                      type: boolean
                    supportsToolSearch:
                      type: boolean
                    supportsExplicitPromptCacheMode:
                      type: boolean
                    supportsMaxOutputTokens:
                      type: boolean
                  required:
                    - supportsDeveloperRole
                    - supportsMidConvoSystemMessages
                    - supportsStrictMode
                    - supportsOpenAIGrammarTools
                    - supportsAdditionalTools
                    - supportsToolSearch
                    - supportsExplicitPromptCacheMode
                    - supportsMaxOutputTokens
                  additionalProperties: false
              required:
                - version
                - wire_format
                - max_output_tokens
                - input_modalities
                - reasoning
                - thinking_levels
                - compatibility
              additionalProperties: false
            - type: object
              properties:
                version:
                  type: number
                  enum:
                    - 1
                wire_format:
                  type: string
                  enum:
                    - anthropic_messages
                max_output_tokens:
                  type: integer
                  exclusiveMinimum: 0
                input_modalities:
                  type: array
                  prefixItems:
                    - type: string
                      enum:
                        - text
                        - image
                  minItems: 1
                  items:
                    type: string
                    enum:
                      - text
                      - image
                reasoning:
                  type: boolean
                thinking_levels:
                  $ref: '#/components/schemas/Objects_70'
                compatibility:
                  type: object
                  properties:
                    supportsEagerToolInputStreaming:
                      type: boolean
                    supportsCacheControlOnTools:
                      type: boolean
                    supportsTemperature:
                      type: boolean
                    forceAdaptiveThinking:
                      type: boolean
                    allowEmptySignature:
                      type: boolean
                    supportsStrictTools:
                      type: boolean
                    supportsMidConvoEffort:
                      type: boolean
                    supportsMidConvoSystemMessages:
                      type: boolean
                    supportsMidConvoToolChanges:
                      type: boolean
                  required:
                    - supportsEagerToolInputStreaming
                    - supportsCacheControlOnTools
                    - supportsTemperature
                    - forceAdaptiveThinking
                    - allowEmptySignature
                    - supportsStrictTools
                    - supportsMidConvoEffort
                    - supportsMidConvoSystemMessages
                    - supportsMidConvoToolChanges
                  additionalProperties: false
              required:
                - version
                - wire_format
                - max_output_tokens
                - input_modalities
                - reasoning
                - thinking_levels
                - compatibility
              additionalProperties: false
        native_sdk_estimation:
          $ref: '#/components/schemas/Objects_71'
        effort:
          type: string
          enum:
            - minimal
            - low
            - medium
            - high
            - max
        speed:
          type: string
          enum:
            - standard
            - fast
        inference_geo:
          $ref: '#/components/schemas/Union_11'
        openrouter_max_price:
          $ref: '#/components/schemas/OpenRouterMaxPrice'
      required:
        - tier
        - provider
        - model
      additionalProperties: false
    Objects_85:
      type: object
      properties:
        input_tokens:
          type: integer
          minimum: 0
        cached_input_tokens:
          type: integer
          minimum: 0
        cache_write_input_tokens:
          type: integer
          minimum: 0
        output_tokens:
          type: integer
          minimum: 0
        reasoning_output_tokens:
          type: integer
          minimum: 0
        total_tokens:
          type: integer
          minimum: 0
      required:
        - input_tokens
        - cached_input_tokens
        - cache_write_input_tokens
        - output_tokens
        - reasoning_output_tokens
        - total_tokens
      additionalProperties: false
    Union_264:
      type: string
      enum:
        - platform_supply
        - byok
        - unknown
    Objects_155:
      type: object
      properties:
        unit:
          $ref: '#/components/schemas/Union_265'
        quantity_millionths:
          type: integer
          minimum: 0
      required:
        - unit
        - quantity_millionths
      additionalProperties: false
    Union_265:
      type: string
      enum:
        - image
        - video_second
        - compute_second
    EnvironmentId:
      type: string
      pattern: ^env_[0-9a-f]{32}$
    CheckpointId:
      type: string
      pattern: ^ckpt_[0-9a-f]{32}$
    SessionThreadId:
      type: string
      pattern: ^sthr_[0-9a-f]{32}$
    Union_128:
      type: string
      enum:
        - default
        - planning
        - tool_loop
    Objects_70:
      type: object
      properties:
        'off':
          $ref: '#/components/schemas/Union_131'
        minimal:
          $ref: '#/components/schemas/Union_131'
        low:
          $ref: '#/components/schemas/Union_131'
        medium:
          $ref: '#/components/schemas/Union_131'
        high:
          $ref: '#/components/schemas/Union_131'
        xhigh:
          $ref: '#/components/schemas/Union_131'
        max:
          $ref: '#/components/schemas/Union_131'
      required:
        - 'off'
        - minimal
        - low
        - medium
        - high
        - xhigh
        - max
      additionalProperties: false
    Objects_71:
      type: object
      properties:
        version:
          type: number
          enum:
            - 1
        unit:
          type: string
          enum:
            - usd_per_million_tokens
        source:
          type: string
          enum:
            - profile_declared
        input:
          type: number
          minimum: 0
        output:
          type: number
          minimum: 0
        cache_read:
          type: number
          minimum: 0
        cache_write:
          type: number
          minimum: 0
      required:
        - version
        - unit
        - source
        - input
        - output
        - cache_read
        - cache_write
      additionalProperties: false
    Union_11:
      type: string
      enum:
        - global
        - us
    OpenRouterMaxPrice:
      type: object
      properties:
        prompt:
          type: number
          allOf:
            - minimum: 0
            - maximum: 1000
        completion:
          type: number
          allOf:
            - minimum: 0
            - maximum: 1000
      required:
        - prompt
        - completion
      additionalProperties: false
      description: >-
        maximum OpenRouter prompt and completion prices in USD per million
        tokens
    Union_131:
      anyOf:
        - type: string
          allOf:
            - minLength: 1
            - maxLength: 255
        - type: 'null'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.