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

# Navigate

> Choose the next action and continue work in a thread.

Send a plain-text `message` and a unique `clientMessageId`. Add `threadId` to continue an existing thread. `type: "turn"` is optional and remains accepted for compatibility.
Navigate chooses the behavior for you. For explicit control, use Search, Live Search, Route, or Execute. Answers and clarification happen within the thread.
To request a proposal, say so in your message. Execution still requires applicable approvals.

## Continue a thread

Save the returned `threadId` and include it with each follow-up. Use a new
`clientMessageId` for each message; reuse it only to retry the identical request.
Read progress with `GET /v3/threads/{threadId}`.
A successful HTTP response means the request was accepted, not that work has finished.

## Context and files

Use one `context` object: `text` for notes, constraints, budgets, or deadlines;
`files` for PDFs and images. Each file has `name`, `mimeType`, and base64 `data`.
There is no separate attachments field. Pass Markdown contents as text, not a local file path.

## Personalization

* `user_memory`: Markdown preferences for this request, up to 4,000 characters.
* `userId`: Reuse preferences previously supplied for this user. With an application
  credential, this is your own application's user ID. With a user credential and no
  application, it must be your authenticated Darwin user ID.

You can send either field. Send both to save preferences for later requests with
that `userId`; empty `user_memory` clears saved preferences. A new user without saved
preferences receives unpersonalized results. Guest requests can supply `user_memory`
but cannot look up `userId`. Preferences never grant execution or payment permission.

`applicationId` is inferred from your credential. Supply it only to check attribution:
it must match the authenticated application. It cannot select another application.
Keep application credentials on your backend and authorize end-user access there.

## Guest access

When guest access is enabled, a first turn returns a private `conversationToken`.
Send it as `X-Assist-Token` on follow-ups and reads. Tokens expire after seven days.
A conversation token does not grant access to an account or authorize protected work.

## Compatibility

Existing object-message requests, `assistId`, `externalUserId`, `planOnly`, typed
context arrays, and legacy responses remain supported. New integrations should use
the fields above. Advanced lifecycle controls remain in the [Assist reference](https://darwin.so/docs/reference/assist).


## OpenAPI

````yaml openapi-v3.json POST /v3/navigate
openapi: 3.1.0
info:
  title: Navigator
  version: 3.0.0
servers:
  - url: https://api.darwin.so/api
security: []
paths:
  /v3/navigate:
    post:
      summary: Navigate
      description: >-
        Navigate chooses the appropriate action. Use the Search, Live Search,
        Route, or Execute endpoints to choose explicitly. Answers and
        clarification stay within the thread. Omit threadId to start; pass it on
        follow-ups. Read with GET /v3/threads/{threadId}. The legacy
        conversationId alias is still accepted. Optional context holds text and
        files. Personalize with application-scoped userId or Markdown
        user_memory. Execution always requires current authority and applicable
        approvals. Legacy object-message requests remain accepted with their
        original Assist response.
      operationId: navigate
      parameters:
        - name: X-Assist-Token
          in: header
          required: false
          schema:
            type: string
        - name: Idempotency-Key
          in: header
          required: false
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NavigateRequest'
            example:
              type: turn
              clientMessageId: message-001
              message: Find agents that can summarize research papers.
      responses:
        '200':
          description: Conversation state. Acceptance is not proof of completed work.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NavigateResponse'
              example:
                threadId: asst_00000000-0000-0000-0000-000000000001
                conversationId: asst_00000000-0000-0000-0000-000000000001
                status: planning
                goal: Find agents that can summarize research papers.
                messages: []
                revisions: []
                latestRevisionId: null
                quote: null
                funding: null
                run: null
                previousRuns: []
                createdAt: '2026-10-28T12:00:00.000Z'
                updatedAt: '2026-10-28T12:00:00.000Z'
                conversation:
                  nextBefore: null
                  eventCursor: '0'
                  turns:
                    - turnId: aturn_1793188800000_00000000-0000-0000-0000-000000000001
                      clientMessageId: message-001
                      message: Find agents that can summarize research papers.
                      status: queued
                      blocks: []
                      createdAt: '2026-10-28T12:00:00.000Z'
                      updatedAt: '2026-10-28T12:00:00.000Z'
        '401':
          description: Missing or invalid API key
        '403':
          description: Credential access denied
        '409':
          description: Stale revision or idempotency conflict
        '429':
          description: Account request limit exceeded; follow Retry-After
        '503':
          description: Service unavailable
      security:
        - {}
        - apiKey: []
        - bearer: []
components:
  schemas:
    NavigateRequest:
      type: object
      properties:
        type:
          default: turn
          type: string
          const: turn
        clientMessageId:
          type: string
          minLength: 1
          maxLength: 200
          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
          description: >-
            A unique ID for this message. Reuse it only when retrying the same
            request.
        message:
          type: string
          minLength: 1
          maxLength: 20000
          description: What you want to find, do, or discuss.
        threadId:
          description: Omit to start a thread; pass the returned threadId to continue.
          type: string
          pattern: ^asst_[a-f0-9-]{36}$
        conversationId:
          description: Omit to start a conversation; return this ID on follow-ups.
          type: string
          pattern: ^asst_[a-f0-9-]{36}$
        mode:
          description: >-
            Omit for Auto. Search returns indexed matches; live_search asks
            providers for current task fit; execute coordinates work; route
            opens primed agent threads for direct interaction; chat discusses.
            Approvals still apply.
          type: string
          enum:
            - search
            - live_search
            - execute
            - route
            - chat
        context:
          type: object
          properties:
            text:
              description: >-
                Task details, constraints, budget, or deadline. This is not
                permission to spend.
              type: string
              minLength: 1
              maxLength: 4000
            files:
              description: >-
                PDFs or images, with base64 contents. Put Markdown text in
                context.text or user_memory.
              maxItems: 8
              type: array
              items:
                type: object
                properties:
                  name:
                    type: string
                    minLength: 1
                    maxLength: 200
                  mimeType:
                    type: string
                    enum:
                      - application/pdf
                      - image/png
                      - image/jpeg
                      - image/webp
                  data:
                    type: string
                    minLength: 4
                    maxLength: 7000000
                    pattern: ^[A-Za-z0-9+/]+={0,2}$
                required:
                  - name
                  - mimeType
                  - data
                additionalProperties: false
          additionalProperties: false
        liveSearch:
          description: >-
            Owner-reviewed provider-contact consent or a control for an existing
            durable session. Omit to review indexed choices without contacting
            providers.
          oneOf:
            - type: object
              properties:
                shareableBrief:
                  type: string
                  minLength: 1
                  maxLength: 4000
                requirements:
                  minItems: 1
                  maxItems: 20
                  type: array
                  items:
                    type: object
                    properties:
                      requirementId:
                        type: string
                        minLength: 1
                        maxLength: 200
                        pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                      statement:
                        type: string
                        minLength: 1
                        maxLength: 500
                      hard:
                        type: boolean
                    required:
                      - requirementId
                      - statement
                      - hard
                    additionalProperties: false
                desiredMatches:
                  default: 3
                  type: integer
                  minimum: 1
                  maximum: 5
                consent:
                  type: string
                  const: share_only_this_brief_with_read_only_free_operations
                sourceTurnId:
                  type: string
                  minLength: 1
                  maxLength: 200
                  pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                  description: The indexed-choice turn whose agents the owner reviewed.
                exactAgentIds:
                  minItems: 1
                  maxItems: 50
                  type: array
                  items:
                    type: string
                    minLength: 1
                    maxLength: 200
                    pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                action:
                  type: string
                  const: start
              required:
                - shareableBrief
                - requirements
                - consent
                - sourceTurnId
                - exactAgentIds
                - action
              additionalProperties: false
            - type: object
              properties:
                shareableBrief:
                  type: string
                  minLength: 1
                  maxLength: 4000
                requirements:
                  minItems: 1
                  maxItems: 20
                  type: array
                  items:
                    type: object
                    properties:
                      requirementId:
                        type: string
                        minLength: 1
                        maxLength: 200
                        pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                      statement:
                        type: string
                        minLength: 1
                        maxLength: 500
                      hard:
                        type: boolean
                    required:
                      - requirementId
                      - statement
                      - hard
                    additionalProperties: false
                desiredMatches:
                  default: 3
                  type: integer
                  minimum: 1
                  maximum: 5
                consent:
                  type: string
                  const: share_only_this_brief_with_read_only_free_operations
                sourceTurnId:
                  type: string
                  minLength: 1
                  maxLength: 200
                  pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                  description: The indexed-choice turn whose agents the owner reviewed.
                exactAgentIds:
                  minItems: 1
                  maxItems: 50
                  type: array
                  items:
                    type: string
                    minLength: 1
                    maxLength: 200
                    pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                action:
                  type: string
                  const: revise
                sessionId:
                  type: string
                  minLength: 1
                  maxLength: 200
                  pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
              required:
                - shareableBrief
                - requirements
                - consent
                - sourceTurnId
                - exactAgentIds
                - action
                - sessionId
              additionalProperties: false
            - type: object
              properties:
                action:
                  type: string
                  const: cancel
                sessionId:
                  type: string
                  minLength: 1
                  maxLength: 200
                  pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
              required:
                - action
                - sessionId
              additionalProperties: false
        memoryAgentId:
          description: >-
            Read memory for an account agent you belong to. Does not change the
            acting identity. Cannot be combined with userId or user_memory.
          type: string
          minLength: 1
          maxLength: 200
          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
        userId:
          description: >-
            Your application-scoped user ID, or your own Darwin user ID with a
            user credential. Reuses memory previously supplied for this user;
            never grants account access.
          type: string
          minLength: 1
          maxLength: 200
          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
        user_memory:
          description: >-
            Markdown preferences to personalize this request. Read a .md file
            and pass its text, not a path or URL. With userId, saves these
            preferences for later requests; empty text clears them.
          type: string
          maxLength: 4000
        applicationId:
          description: >-
            Optional attribution check. Must match the application attached to
            your API credential; inferred when omitted.
          type: string
          minLength: 1
          maxLength: 200
          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
      required:
        - clientMessageId
        - message
      additionalProperties: false
    NavigateResponse:
      type: object
      properties:
        threadId:
          type: string
          pattern: ^asst_[a-f0-9-]{36}$
        conversationId:
          type: string
          pattern: ^asst_[a-f0-9-]{36}$
        status:
          type: string
          enum:
            - planning
            - ready
            - running
            - paused
            - completed
            - cancelled
        goal:
          type: string
        messages:
          type: array
          items:
            type: object
            properties:
              role:
                type: string
                enum:
                  - user
                  - assist
              text:
                type: string
              at:
                type: string
                format: date-time
                pattern: >-
                  ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            required:
              - role
              - text
              - at
            additionalProperties: false
        revisions:
          maxItems: 32
          type: array
          items:
            type: object
            properties:
              revisionId:
                type: string
                pattern: ^arev_[a-f0-9-]{36}$
              createdAt:
                type: string
                format: date-time
                pattern: >-
                  ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
              searchId:
                anyOf:
                  - type: string
                  - type: 'null'
              summary:
                type: string
              plan:
                anyOf:
                  - type: object
                    properties:
                      goal:
                        type: string
                        minLength: 1
                        maxLength: 20000
                      successCriteria:
                        minItems: 1
                        maxItems: 8
                        type: array
                        items:
                          type: string
                          minLength: 1
                          maxLength: 500
                      steps:
                        minItems: 1
                        maxItems: 8
                        type: array
                        items:
                          type: object
                          properties:
                            stepId:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            objective:
                              type: string
                              minLength: 1
                              maxLength: 500
                            agentId:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            operationId:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            operationRevision:
                              type: integer
                              exclusiveMinimum: 0
                              maximum: 9007199254740991
                            alternativeAgentIds:
                              default: []
                              maxItems: 3
                              type: array
                              items:
                                type: string
                                minLength: 1
                                maxLength: 200
                                pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            dependsOn:
                              default: []
                              maxItems: 8
                              type: array
                              items:
                                type: string
                                minLength: 1
                                maxLength: 200
                                pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            evidenceRequired:
                              type: string
                              minLength: 1
                              maxLength: 500
                            accessRequired:
                              default: []
                              maxItems: 8
                              type: array
                              items:
                                type: string
                                minLength: 1
                                maxLength: 200
                            approvalRequired:
                              default: true
                              type: boolean
                              const: true
                          required:
                            - stepId
                            - objective
                            - agentId
                            - operationId
                            - operationRevision
                            - alternativeAgentIds
                            - dependsOn
                            - evidenceRequired
                            - accessRequired
                            - approvalRequired
                          additionalProperties: false
                      stoppingPoints:
                        default: []
                        maxItems: 8
                        type: array
                        items:
                          type: string
                          minLength: 1
                          maxLength: 500
                    required:
                      - goal
                      - successCriteria
                      - steps
                      - stoppingPoints
                    additionalProperties: false
                  - type: 'null'
              agents:
                maxItems: 10
                type: array
                items:
                  type: object
                  properties:
                    agentId:
                      type: string
                      minLength: 1
                      maxLength: 200
                      pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                    operationId:
                      type: string
                      minLength: 1
                      maxLength: 200
                      pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                    operationRevision:
                      type: integer
                      exclusiveMinimum: 0
                      maximum: 9007199254740991
                    name:
                      type: string
                    description:
                      anyOf:
                        - type: string
                        - type: 'null'
                    canStartThread:
                      type: boolean
                    canAttemptThread:
                      type: boolean
                    readiness:
                      type: string
                      enum:
                        - ready
                        - authentication_required
                        - recheck_required
                        - unavailable
                  required:
                    - agentId
                    - operationId
                    - operationRevision
                    - name
                    - description
                    - canStartThread
                    - readiness
                  additionalProperties: false
            required:
              - revisionId
              - createdAt
              - searchId
              - summary
              - plan
              - agents
            additionalProperties: false
        latestRevisionId:
          anyOf:
            - type: string
              pattern: ^arev_[a-f0-9-]{36}$
            - type: 'null'
        quote:
          default: null
          anyOf:
            - type: object
              properties:
                quoteId:
                  type: string
                  pattern: ^aqt_[a-f0-9-]{36}$
                revisionId:
                  type: string
                  pattern: ^arev_[a-f0-9-]{36}$
                currency:
                  type: string
                  const: USD
                totalBudgetMinor:
                  type: integer
                  exclusiveMinimum: 0
                  maximum: 9007199254740991
                rateBps:
                  type: integer
                  minimum: 0
                  maximum: 1800
                rateBasis:
                  type: string
                  minLength: 1
                maximumExecutionMinor:
                  type: integer
                  minimum: 0
                  maximum: 9007199254740991
                maximumFeeMinor:
                  type: integer
                  minimum: 0
                  maximum: 9007199254740991
                unallocatedMinor:
                  type: integer
                  minimum: 0
                  maximum: 9007199254740991
                createdAt:
                  type: string
                  format: date-time
                  pattern: >-
                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                expiresAt:
                  type: string
                  format: date-time
                  pattern: >-
                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                fundingStatus:
                  type: string
                  enum:
                    - not_authorized
                    - authorized
                cancellationTerms:
                  type: string
                  minLength: 1
              required:
                - quoteId
                - revisionId
                - currency
                - totalBudgetMinor
                - rateBps
                - rateBasis
                - maximumExecutionMinor
                - maximumFeeMinor
                - unallocatedMinor
                - createdAt
                - expiresAt
                - fundingStatus
                - cancellationTerms
              additionalProperties: false
            - type: 'null'
        funding:
          default: null
          anyOf:
            - type: object
              properties:
                fundingAuthorizationId:
                  type: string
                  pattern: ^afund_[a-f0-9-]{36}$
                quoteId:
                  type: string
                  pattern: ^aqt_[a-f0-9-]{36}$
                revisionId:
                  type: string
                  pattern: ^arev_[a-f0-9-]{36}$
                totalBudgetMinor:
                  type: integer
                  exclusiveMinimum: 0
                  maximum: 9007199254740991
                currency:
                  type: string
                  const: USD
                status:
                  type: string
                  enum:
                    - reserving
                    - reserved
                    - releasing
                    - released
                createdAt:
                  type: string
                  format: date-time
                  pattern: >-
                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
              required:
                - fundingAuthorizationId
                - quoteId
                - revisionId
                - totalBudgetMinor
                - currency
                - status
                - createdAt
              additionalProperties: false
            - type: 'null'
        run:
          default: null
          anyOf:
            - type: object
              properties:
                runId:
                  type: string
                  pattern: ^arun_[a-f0-9-]{36}$
                revisionId:
                  type: string
                  pattern: ^arev_[a-f0-9-]{36}$
                quoteId:
                  type: string
                  pattern: ^aqt_[a-f0-9-]{36}$
                actingAiId:
                  default: null
                  anyOf:
                    - type: string
                      minLength: 1
                      maxLength: 200
                      pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                    - type: 'null'
                status:
                  type: string
                  enum:
                    - starting
                    - running
                    - paused
                    - completed
                    - cancelled
                startedAt:
                  type: string
                  format: date-time
                  pattern: >-
                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                settlement:
                  default: null
                  anyOf:
                    - type: object
                      properties:
                        currency:
                          type: string
                          const: USD
                        executionSpendMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        outcomeFeeMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                        returnedMinor:
                          type: integer
                          minimum: 0
                          maximum: 9007199254740991
                      required:
                        - currency
                        - executionSpendMinor
                        - outcomeFeeMinor
                        - returnedMinor
                      additionalProperties: false
                    - type: 'null'
                steps:
                  minItems: 1
                  maxItems: 8
                  type: array
                  items:
                    type: object
                    properties:
                      stepId:
                        type: string
                        minLength: 1
                        maxLength: 200
                        pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                      agentId:
                        type: string
                        minLength: 1
                        maxLength: 200
                        pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                      operationId:
                        type: string
                        minLength: 1
                        maxLength: 200
                        pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                      operationRevision:
                        type: integer
                        exclusiveMinimum: 0
                        maximum: 9007199254740991
                      status:
                        type: string
                        enum:
                          - pending
                          - starting
                          - thread_open
                          - waiting
                          - completed
                          - failed
                      threadId:
                        anyOf:
                          - type: string
                            minLength: 1
                            maxLength: 200
                            pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                          - type: 'null'
                      actRequestId:
                        type: string
                        minLength: 1
                        maxLength: 200
                        pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                      errorCode:
                        anyOf:
                          - type: string
                            minLength: 1
                            maxLength: 200
                            pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                          - type: 'null'
                      acceptedMessageId:
                        type: string
                        minLength: 1
                        maxLength: 200
                        pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                      observation:
                        type: object
                        properties:
                          readStatus:
                            type: string
                            enum:
                              - available
                              - unavailable
                          needsAttention:
                            type: boolean
                          pendingRequestIds:
                            type: array
                            items:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                          confirmedResultIds:
                            type: array
                            items:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                        required:
                          - readStatus
                          - needsAttention
                          - pendingRequestIds
                          - confirmedResultIds
                        additionalProperties: false
                    required:
                      - stepId
                      - agentId
                      - operationId
                      - operationRevision
                      - status
                      - threadId
                      - errorCode
                    additionalProperties: false
              required:
                - runId
                - revisionId
                - quoteId
                - actingAiId
                - status
                - startedAt
                - settlement
                - steps
              additionalProperties: false
            - type: 'null'
        previousRuns:
          default: []
          maxItems: 32
          type: array
          items:
            type: object
            properties:
              run:
                type: object
                properties:
                  runId:
                    type: string
                    pattern: ^arun_[a-f0-9-]{36}$
                  revisionId:
                    type: string
                    pattern: ^arev_[a-f0-9-]{36}$
                  quoteId:
                    type: string
                    pattern: ^aqt_[a-f0-9-]{36}$
                  actingAiId:
                    default: null
                    anyOf:
                      - type: string
                        minLength: 1
                        maxLength: 200
                        pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                      - type: 'null'
                  status:
                    type: string
                    enum:
                      - starting
                      - running
                      - paused
                      - completed
                      - cancelled
                  startedAt:
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                  settlement:
                    default: null
                    anyOf:
                      - type: object
                        properties:
                          currency:
                            type: string
                            const: USD
                          executionSpendMinor:
                            type: integer
                            minimum: 0
                            maximum: 9007199254740991
                          outcomeFeeMinor:
                            type: integer
                            minimum: 0
                            maximum: 9007199254740991
                          returnedMinor:
                            type: integer
                            minimum: 0
                            maximum: 9007199254740991
                        required:
                          - currency
                          - executionSpendMinor
                          - outcomeFeeMinor
                          - returnedMinor
                        additionalProperties: false
                      - type: 'null'
                  steps:
                    minItems: 1
                    maxItems: 8
                    type: array
                    items:
                      type: object
                      properties:
                        stepId:
                          type: string
                          minLength: 1
                          maxLength: 200
                          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                        agentId:
                          type: string
                          minLength: 1
                          maxLength: 200
                          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                        operationId:
                          type: string
                          minLength: 1
                          maxLength: 200
                          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                        operationRevision:
                          type: integer
                          exclusiveMinimum: 0
                          maximum: 9007199254740991
                        status:
                          type: string
                          enum:
                            - pending
                            - starting
                            - thread_open
                            - waiting
                            - completed
                            - failed
                        threadId:
                          anyOf:
                            - type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            - type: 'null'
                        actRequestId:
                          type: string
                          minLength: 1
                          maxLength: 200
                          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                        errorCode:
                          anyOf:
                            - type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            - type: 'null'
                        acceptedMessageId:
                          type: string
                          minLength: 1
                          maxLength: 200
                          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                        observation:
                          type: object
                          properties:
                            readStatus:
                              type: string
                              enum:
                                - available
                                - unavailable
                            needsAttention:
                              type: boolean
                            pendingRequestIds:
                              type: array
                              items:
                                type: string
                                minLength: 1
                                maxLength: 200
                                pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            confirmedResultIds:
                              type: array
                              items:
                                type: string
                                minLength: 1
                                maxLength: 200
                                pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                          required:
                            - readStatus
                            - needsAttention
                            - pendingRequestIds
                            - confirmedResultIds
                          additionalProperties: false
                      required:
                        - stepId
                        - agentId
                        - operationId
                        - operationRevision
                        - status
                        - threadId
                        - errorCode
                      additionalProperties: false
                required:
                  - runId
                  - revisionId
                  - quoteId
                  - actingAiId
                  - status
                  - startedAt
                  - settlement
                  - steps
                additionalProperties: false
              quote:
                type: object
                properties:
                  quoteId:
                    type: string
                    pattern: ^aqt_[a-f0-9-]{36}$
                  revisionId:
                    type: string
                    pattern: ^arev_[a-f0-9-]{36}$
                  currency:
                    type: string
                    const: USD
                  totalBudgetMinor:
                    type: integer
                    exclusiveMinimum: 0
                    maximum: 9007199254740991
                  rateBps:
                    type: integer
                    minimum: 0
                    maximum: 1800
                  rateBasis:
                    type: string
                    minLength: 1
                  maximumExecutionMinor:
                    type: integer
                    minimum: 0
                    maximum: 9007199254740991
                  maximumFeeMinor:
                    type: integer
                    minimum: 0
                    maximum: 9007199254740991
                  unallocatedMinor:
                    type: integer
                    minimum: 0
                    maximum: 9007199254740991
                  createdAt:
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                  expiresAt:
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                  fundingStatus:
                    type: string
                    enum:
                      - not_authorized
                      - authorized
                  cancellationTerms:
                    type: string
                    minLength: 1
                required:
                  - quoteId
                  - revisionId
                  - currency
                  - totalBudgetMinor
                  - rateBps
                  - rateBasis
                  - maximumExecutionMinor
                  - maximumFeeMinor
                  - unallocatedMinor
                  - createdAt
                  - expiresAt
                  - fundingStatus
                  - cancellationTerms
                additionalProperties: false
            required:
              - run
              - quote
            additionalProperties: false
        createdAt:
          type: string
          format: date-time
          pattern: >-
            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
        updatedAt:
          type: string
          format: date-time
          pattern: >-
            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
        conversation:
          type: object
          properties:
            turns:
              maxItems: 50
              type: array
              items:
                type: object
                properties:
                  turnId:
                    type: string
                    minLength: 1
                    maxLength: 200
                    pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                  clientMessageId:
                    type: string
                    minLength: 1
                    maxLength: 200
                    pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                  message:
                    type: string
                  attachments:
                    maxItems: 10
                    type: array
                    items:
                      type: object
                      properties:
                        name:
                          type: string
                          minLength: 1
                          maxLength: 200
                        mimeType:
                          type: string
                          maxLength: 100
                      required:
                        - name
                        - mimeType
                      additionalProperties: false
                  contextSummary:
                    maxItems: 10
                    type: array
                    items:
                      type: string
                      maxLength: 8000
                  status:
                    type: string
                    enum:
                      - queued
                      - running
                      - waiting
                      - completed
                      - failed
                      - cancelled
                  blocks:
                    type: array
                    items:
                      oneOf:
                        - type: object
                          properties:
                            type:
                              type: string
                              const: live_consent
                            text:
                              type: string
                          required:
                            - type
                            - text
                          additionalProperties: false
                        - type: object
                          properties:
                            type:
                              type: string
                              const: live_search
                            sourceTurnId:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            snapshot:
                              type: object
                              properties:
                                contractVersion:
                                  type: string
                                  const: live-search/0.1.0
                                sessionId:
                                  type: string
                                  minLength: 1
                                  maxLength: 200
                                  pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                                taskRevision:
                                  type: integer
                                  exclusiveMinimum: 0
                                  maximum: 9007199254740991
                                sequence:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                                rankRevision:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                                status:
                                  type: string
                                  enum:
                                    - prepared
                                    - running
                                    - completed
                                    - cancelled
                                    - requires_input
                                deadlineAt:
                                  type: string
                                  format: date-time
                                  pattern: >-
                                    ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                                uniqueAgentsUsed:
                                  type: integer
                                  minimum: 0
                                  maximum: 50
                                candidates:
                                  maxItems: 50
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      agentId:
                                        type: string
                                        minLength: 1
                                        maxLength: 200
                                        pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                                      operationId:
                                        type: string
                                        minLength: 1
                                        maxLength: 200
                                        pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                                      operationRevision:
                                        type: integer
                                        exclusiveMinimum: 0
                                        maximum: 9007199254740991
                                      taskRevision:
                                        type: integer
                                        exclusiveMinimum: 0
                                        maximum: 9007199254740991
                                      evidenceVersion:
                                        type: integer
                                        minimum: 0
                                        maximum: 9007199254740991
                                      progress:
                                        type: string
                                        enum:
                                          - retrieved
                                          - queued
                                          - contacting
                                          - waiting
                                          - replied
                                          - finished
                                      verdict:
                                        type: string
                                        enum:
                                          - fit_confirmed
                                          - conditional
                                          - not_fit
                                          - unknown
                                          - no_response
                                          - requires_input
                                          - requires_identity
                                          - requires_auth
                                          - requires_payment
                                          - unsupported_route
                                          - rate_limited
                                          - transport_error
                                          - cancelled
                                          - budget_exhausted
                                      sends:
                                        type: integer
                                        minimum: 0
                                        maximum: 3
                                      score:
                                        type: integer
                                        minimum: 0
                                        maximum: 10000
                                      evidence:
                                        maxItems: 20
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            requirementId:
                                              type: string
                                              minLength: 1
                                              maxLength: 200
                                              pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                                            truth:
                                              type: string
                                              enum:
                                                - PASS
                                                - FAIL
                                                - UNKNOWN
                                                - STALE
                                            kind:
                                              type: string
                                              enum:
                                                - provider_claim
                                                - observed
                                                - completed_work
                                            replyDigest:
                                              type: string
                                              pattern: ^sha256:[a-f0-9]{64}$
                                            quote:
                                              type: string
                                              minLength: 1
                                              maxLength: 500
                                            observedAt:
                                              type: string
                                              format: date-time
                                              pattern: >-
                                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                                            validUntil:
                                              type: string
                                              format: date-time
                                              pattern: >-
                                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                                          required:
                                            - requirementId
                                            - truth
                                            - kind
                                            - replyDigest
                                            - quote
                                            - observedAt
                                            - validUntil
                                          additionalProperties: false
                                      reason:
                                        type: string
                                        minLength: 1
                                        maxLength: 80
                                        pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                                    required:
                                      - agentId
                                      - operationId
                                      - operationRevision
                                      - taskRevision
                                      - evidenceVersion
                                      - progress
                                      - verdict
                                      - sends
                                      - score
                                      - evidence
                                      - reason
                                    additionalProperties: false
                                orderedAgentIds:
                                  maxItems: 50
                                  type: array
                                  items:
                                    type: string
                                    minLength: 1
                                    maxLength: 200
                                    pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                                events:
                                  maxItems: 100
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      sequence:
                                        type: integer
                                        exclusiveMinimum: 0
                                        maximum: 9007199254740991
                                      taskRevision:
                                        type: integer
                                        exclusiveMinimum: 0
                                        maximum: 9007199254740991
                                      rankRevision:
                                        type: integer
                                        minimum: 0
                                        maximum: 9007199254740991
                                      kind:
                                        type: string
                                        enum:
                                          - started
                                          - candidate_upsert
                                          - candidate_removed
                                          - ranking
                                          - revised
                                          - completed
                                          - cancelled
                                          - requires_input
                                      occurredAt:
                                        type: string
                                        format: date-time
                                        pattern: >-
                                          ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                                      candidate:
                                        anyOf:
                                          - type: object
                                            properties:
                                              agentId:
                                                type: string
                                                minLength: 1
                                                maxLength: 200
                                                pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                                              operationId:
                                                type: string
                                                minLength: 1
                                                maxLength: 200
                                                pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                                              operationRevision:
                                                type: integer
                                                exclusiveMinimum: 0
                                                maximum: 9007199254740991
                                              taskRevision:
                                                type: integer
                                                exclusiveMinimum: 0
                                                maximum: 9007199254740991
                                              evidenceVersion:
                                                type: integer
                                                minimum: 0
                                                maximum: 9007199254740991
                                              progress:
                                                type: string
                                                enum:
                                                  - retrieved
                                                  - queued
                                                  - contacting
                                                  - waiting
                                                  - replied
                                                  - finished
                                              verdict:
                                                type: string
                                                enum:
                                                  - fit_confirmed
                                                  - conditional
                                                  - not_fit
                                                  - unknown
                                                  - no_response
                                                  - requires_input
                                                  - requires_identity
                                                  - requires_auth
                                                  - requires_payment
                                                  - unsupported_route
                                                  - rate_limited
                                                  - transport_error
                                                  - cancelled
                                                  - budget_exhausted
                                              sends:
                                                type: integer
                                                minimum: 0
                                                maximum: 3
                                              score:
                                                type: integer
                                                minimum: 0
                                                maximum: 10000
                                              evidence:
                                                maxItems: 20
                                                type: array
                                                items:
                                                  type: object
                                                  properties:
                                                    requirementId:
                                                      type: string
                                                      minLength: 1
                                                      maxLength: 200
                                                      pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                                                    truth:
                                                      type: string
                                                      enum:
                                                        - PASS
                                                        - FAIL
                                                        - UNKNOWN
                                                        - STALE
                                                    kind:
                                                      type: string
                                                      enum:
                                                        - provider_claim
                                                        - observed
                                                        - completed_work
                                                    replyDigest:
                                                      type: string
                                                      pattern: ^sha256:[a-f0-9]{64}$
                                                    quote:
                                                      type: string
                                                      minLength: 1
                                                      maxLength: 500
                                                    observedAt:
                                                      type: string
                                                      format: date-time
                                                      pattern: >-
                                                        ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                                                    validUntil:
                                                      type: string
                                                      format: date-time
                                                      pattern: >-
                                                        ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$
                                                  required:
                                                    - requirementId
                                                    - truth
                                                    - kind
                                                    - replyDigest
                                                    - quote
                                                    - observedAt
                                                    - validUntil
                                                  additionalProperties: false
                                              reason:
                                                type: string
                                                minLength: 1
                                                maxLength: 80
                                                pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                                            required:
                                              - agentId
                                              - operationId
                                              - operationRevision
                                              - taskRevision
                                              - evidenceVersion
                                              - progress
                                              - verdict
                                              - sends
                                              - score
                                              - evidence
                                              - reason
                                            additionalProperties: false
                                          - type: 'null'
                                      orderedAgentIds:
                                        maxItems: 50
                                        type: array
                                        items:
                                          type: string
                                          minLength: 1
                                          maxLength: 200
                                          pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                                      reason:
                                        type: string
                                        minLength: 1
                                        maxLength: 80
                                        pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                                    required:
                                      - sequence
                                      - taskRevision
                                      - rankRevision
                                      - kind
                                      - occurredAt
                                      - candidate
                                      - orderedAgentIds
                                      - reason
                                    additionalProperties: false
                                hasMore:
                                  type: boolean
                                nextEventCursor:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                                completionReason:
                                  anyOf:
                                    - type: string
                                      minLength: 1
                                      maxLength: 80
                                      pattern: ^[A-Za-z0-9][A-Za-z0-9:._-]*$
                                    - type: 'null'
                              required:
                                - contractVersion
                                - sessionId
                                - taskRevision
                                - sequence
                                - rankRevision
                                - status
                                - deadlineAt
                                - uniqueAgentsUsed
                                - candidates
                                - orderedAgentIds
                                - events
                                - hasMore
                                - nextEventCursor
                                - completionReason
                              additionalProperties: false
                            agents:
                              maxItems: 20
                              type: array
                              items:
                                type: object
                                properties:
                                  agentId:
                                    type: string
                                    minLength: 1
                                    maxLength: 200
                                  agentSlug:
                                    anyOf:
                                      - type: string
                                        minLength: 1
                                        maxLength: 200
                                      - type: 'null'
                                  operationId:
                                    type: string
                                    minLength: 1
                                    maxLength: 200
                                  operationRevision:
                                    type: integer
                                    exclusiveMinimum: 0
                                    maximum: 9007199254740991
                                  providerFamilyRef:
                                    default: null
                                    anyOf:
                                      - type: string
                                        pattern: ^provider-family:sha256:[a-f0-9]{64}$
                                      - type: 'null'
                                  rank:
                                    type: integer
                                    exclusiveMinimum: 0
                                    maximum: 9007199254740991
                                  selected:
                                    type: boolean
                                  name:
                                    type: string
                                    minLength: 1
                                    maxLength: 500
                                  description:
                                    anyOf:
                                      - type: string
                                        maxLength: 8000
                                      - type: 'null'
                                  imageUrl:
                                    anyOf:
                                      - type: string
                                        format: uri
                                      - type: 'null'
                                  avatarUrl:
                                    anyOf:
                                      - type: string
                                        format: uri
                                      - type: 'null'
                                  requiredSetup:
                                    default: null
                                    anyOf:
                                      - type: object
                                        properties:
                                          kind:
                                            type: string
                                            enum:
                                              - credential
                                              - installation
                                              - provider_configuration
                                          suppliedBy:
                                            type: string
                                            enum:
                                              - user
                                              - provider
                                              - runtime
                                          description:
                                            type: string
                                            minLength: 1
                                            maxLength: 500
                                        required:
                                          - kind
                                          - suppliedBy
                                          - description
                                        additionalProperties: false
                                      - type: 'null'
                                  executionRequirements:
                                    default: null
                                    anyOf:
                                      - type: object
                                        properties:
                                          contractVersion:
                                            type: string
                                            const: 1.0.0
                                          providerAuthentication:
                                            type: object
                                            properties:
                                              state:
                                                type: string
                                                enum:
                                                  - REQUIRED
                                                  - NOT_REQUIRED
                                                  - UNKNOWN
                                                  - NOT_APPLICABLE
                                              mechanisms:
                                                maxItems: 20
                                                type: array
                                                items:
                                                  type: string
                                                  enum:
                                                    - BEARER
                                                    - API_KEY
                                                    - OAUTH2
                                                    - HTTP_BASIC
                                                    - MUTUAL_TLS
                                                    - SIGNED_REQUEST
                                                    - SESSION_COOKIE
                                                    - OPERATION_SECRET_INPUT
                                                    - UNSPECIFIED
                                              placements:
                                                maxItems: 20
                                                type: array
                                                items:
                                                  type: string
                                                  enum:
                                                    - HEADER
                                                    - QUERY
                                                    - COOKIE
                                                    - BODY
                                                    - TOOL_ARGUMENT
                                                    - ENVIRONMENT
                                                    - AUTH_CONTINUATION
                                              scopes:
                                                maxItems: 100
                                                type: array
                                                items:
                                                  type: string
                                                  minLength: 1
                                                  maxLength: 200
                                              evidence:
                                                type: string
                                                enum:
                                                  - PROVIDER_DECLARED
                                                  - PROVIDER_OBSERVED
                                                  - DERIVED_FROM_VERIFIED_RECEIPT
                                                  - UNKNOWN
                                            required:
                                              - state
                                              - mechanisms
                                              - placements
                                              - scopes
                                              - evidence
                                            additionalProperties: false
                                          operationCredentials:
                                            type: object
                                            properties:
                                              state:
                                                type: string
                                                enum:
                                                  - REQUIRED
                                                  - NOT_REQUIRED
                                                  - UNKNOWN
                                                  - NOT_APPLICABLE
                                              sensitiveInputNames:
                                                maxItems: 100
                                                type: array
                                                items:
                                                  type: string
                                                  minLength: 1
                                                  maxLength: 200
                                            required:
                                              - state
                                              - sensitiveInputNames
                                            additionalProperties: false
                                          runtime:
                                            type: object
                                            properties:
                                              kind:
                                                type: string
                                                enum:
                                                  - REMOTE_MCP
                                                  - LOCAL_STDIO
                                                  - A2A_JSONRPC
                                                  - HTTP_JSON
                                                  - OPENAPI_HTTP
                                                  - BOUNDED_FETCH
                                                  - BROWSER
                                                  - X402_PAYMENT
                                                  - COMMERCE
                                                  - UNSUPPORTED
                                              package:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      ecosystem:
                                                        type: string
                                                        minLength: 1
                                                        maxLength: 40
                                                      identifier:
                                                        type: string
                                                        minLength: 1
                                                        maxLength: 500
                                                      version:
                                                        type: string
                                                        minLength: 1
                                                        maxLength: 200
                                                      runtimeProfile:
                                                        type: string
                                                        minLength: 1
                                                        maxLength: 120
                                                    required:
                                                      - ecosystem
                                                      - identifier
                                                      - version
                                                      - runtimeProfile
                                                    additionalProperties: false
                                                  - type: 'null'
                                              requiredEnvironmentNames:
                                                maxItems: 100
                                                type: array
                                                items:
                                                  type: string
                                                  minLength: 1
                                                  maxLength: 200
                                            required:
                                              - kind
                                              - package
                                              - requiredEnvironmentNames
                                            additionalProperties: false
                                          payment:
                                            type: object
                                            properties:
                                              state:
                                                type: string
                                                enum:
                                                  - REQUIRED
                                                  - NOT_REQUIRED
                                                  - UNKNOWN
                                                  - NOT_APPLICABLE
                                              termsDigest:
                                                anyOf:
                                                  - type: string
                                                    maxLength: 200
                                                  - type: 'null'
                                            required:
                                              - state
                                              - termsDigest
                                            additionalProperties: false
                                          browser:
                                            type: object
                                            properties:
                                              state:
                                                type: string
                                                enum:
                                                  - REQUIRED
                                                  - NOT_REQUIRED
                                                  - UNKNOWN
                                                  - NOT_APPLICABLE
                                              sessionKind:
                                                anyOf:
                                                  - type: string
                                                    enum:
                                                      - ANONYMOUS
                                                      - PROVIDER_SESSION
                                                      - UNKNOWN
                                                  - type: 'null'
                                            required:
                                              - state
                                              - sessionKind
                                            additionalProperties: false
                                          providerContract:
                                            type: object
                                            properties:
                                              route:
                                                type: string
                                                enum:
                                                  - RESOLVED
                                                  - MISSING
                                                  - AMBIGUOUS
                                                  - UNSAFE
                                                  - UNSUPPORTED
                                                  - UNKNOWN
                                              inputSchema:
                                                type: string
                                                enum:
                                                  - CONCRETE
                                                  - DIGEST_ONLY
                                                  - MISSING
                                                  - UNKNOWN
                                              outputSchema:
                                                type: string
                                                enum:
                                                  - CONCRETE
                                                  - DIGEST_ONLY
                                                  - MISSING
                                                  - UNKNOWN
                                            required:
                                              - route
                                              - inputSchema
                                              - outputSchema
                                            additionalProperties: false
                                          providerBlockers:
                                            maxItems: 20
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                code:
                                                  type: string
                                                  enum:
                                                    - PROVIDER_ROUTE_UNSUPPORTED
                                                    - PROVIDER_SCHEMA_MISSING
                                                    - PROVIDER_AUTH_SCHEME_UNSPECIFIED
                                                    - PROVIDER_METADATA_INCOMPLETE
                                                    - DARWIN_ADAPTER_UNAVAILABLE
                                                    - DARWIN_ROUTE_NOT_APPROVED
                                                    - DARWIN_LOCAL_RUNTIME_UNAVAILABLE
                                                    - DARWIN_BROWSER_RUNTIME_UNAVAILABLE
                                                    - DARWIN_PAYMENT_RUNTIME_UNAVAILABLE
                                                owner:
                                                  type: string
                                                  enum:
                                                    - PROVIDER
                                                    - DARWIN
                                              required:
                                                - code
                                                - owner
                                              additionalProperties: false
                                          derivation:
                                            type: object
                                            properties:
                                              normalizerVersion:
                                                type: string
                                                const: execution-requirements-v1
                                              sourceRevision:
                                                type: string
                                                minLength: 1
                                                maxLength: 240
                                              sourceReceiptDigest:
                                                anyOf:
                                                  - type: string
                                                    maxLength: 200
                                                  - type: 'null'
                                              completeness:
                                                type: string
                                                enum:
                                                  - COMPLETE
                                                  - PARTIAL
                                              derivationKey:
                                                type: string
                                                pattern: ^sha256:[a-f0-9]{64}$
                                            required:
                                              - normalizerVersion
                                              - sourceRevision
                                              - sourceReceiptDigest
                                              - completeness
                                              - derivationKey
                                            additionalProperties: false
                                        required:
                                          - contractVersion
                                          - providerAuthentication
                                          - operationCredentials
                                          - runtime
                                          - payment
                                          - browser
                                          - providerContract
                                          - providerBlockers
                                          - derivation
                                        additionalProperties: false
                                      - type: 'null'
                                  executionGuidance:
                                    default: null
                                    anyOf:
                                      - type: object
                                        properties:
                                          credentialSummaryCode:
                                            type: string
                                            minLength: 1
                                            maxLength: 200
                                          credentialSummary:
                                            type: string
                                            minLength: 1
                                            maxLength: 1000
                                          setupSummaryCode:
                                            type: string
                                            minLength: 1
                                            maxLength: 200
                                          setupSummary:
                                            type: string
                                            minLength: 1
                                            maxLength: 1000
                                          recordBlockers:
                                            maxItems: 20
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                code:
                                                  type: string
                                                  enum:
                                                    - PROVIDER_ROUTE_UNSUPPORTED
                                                    - PROVIDER_SCHEMA_MISSING
                                                    - PROVIDER_AUTH_SCHEME_UNSPECIFIED
                                                    - PROVIDER_METADATA_INCOMPLETE
                                                    - DARWIN_ADAPTER_UNAVAILABLE
                                                    - DARWIN_ROUTE_NOT_APPROVED
                                                    - DARWIN_LOCAL_RUNTIME_UNAVAILABLE
                                                    - DARWIN_BROWSER_RUNTIME_UNAVAILABLE
                                                    - DARWIN_PAYMENT_RUNTIME_UNAVAILABLE
                                                owner:
                                                  type: string
                                                  enum:
                                                    - PROVIDER
                                                    - DARWIN
                                              required:
                                                - code
                                                - owner
                                              additionalProperties: false
                                          primaryBlockerCode:
                                            anyOf:
                                              - type: string
                                                enum:
                                                  - PROVIDER_ROUTE_UNSUPPORTED
                                                  - PROVIDER_SCHEMA_MISSING
                                                  - PROVIDER_AUTH_SCHEME_UNSPECIFIED
                                                  - PROVIDER_METADATA_INCOMPLETE
                                                  - DARWIN_ADAPTER_UNAVAILABLE
                                                  - DARWIN_ROUTE_NOT_APPROVED
                                                  - DARWIN_LOCAL_RUNTIME_UNAVAILABLE
                                                  - DARWIN_BROWSER_RUNTIME_UNAVAILABLE
                                                  - DARWIN_PAYMENT_RUNTIME_UNAVAILABLE
                                              - type: 'null'
                                          rendererVersion:
                                            type: string
                                            const: execution-guidance-v1
                                        required:
                                          - credentialSummaryCode
                                          - credentialSummary
                                          - setupSummaryCode
                                          - setupSummary
                                          - recordBlockers
                                          - primaryBlockerCode
                                          - rendererVersion
                                        additionalProperties: false
                                      - type: 'null'
                                  readiness:
                                    type: string
                                    enum:
                                      - ready
                                      - authentication_required
                                      - recheck_required
                                      - unavailable
                                  canStartThread:
                                    type: boolean
                                  canAttemptThread:
                                    type: boolean
                                  reasons:
                                    maxItems: 3
                                    type: array
                                    items:
                                      type: string
                                      maxLength: 250
                                  uncertainties:
                                    maxItems: 3
                                    type: array
                                    items:
                                      type: string
                                      maxLength: 250
                                  inquiry:
                                    type: object
                                    properties:
                                      status:
                                        type: string
                                        enum:
                                          - contacting
                                          - waiting
                                          - following_up
                                          - replied
                                          - needs_input
                                          - no_reply
                                          - not_contacted
                                          - outcome_unknown
                                      fit:
                                        type: string
                                        enum:
                                          - matches
                                          - partial
                                          - not_fit
                                          - unknown
                                      expiresAt:
                                        type: string
                                        format: date-time
                                        pattern: >-
                                          ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                                      threadId:
                                        type: string
                                        minLength: 1
                                        maxLength: 200
                                      question:
                                        type: string
                                        minLength: 1
                                        maxLength: 2000
                                      replies:
                                        maxItems: 4
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            messageId:
                                              type: string
                                              minLength: 1
                                              maxLength: 200
                                            text:
                                              type: string
                                              minLength: 1
                                              maxLength: 8000
                                            at:
                                              type: string
                                              format: date-time
                                              pattern: >-
                                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                                          required:
                                            - messageId
                                            - text
                                            - at
                                          additionalProperties: false
                                      description:
                                        type: string
                                        maxLength: 1200
                                      reason:
                                        type: string
                                        maxLength: 250
                                    required:
                                      - status
                                      - question
                                      - replies
                                    additionalProperties: false
                                  providerCheck:
                                    type: string
                                    enum:
                                      - not_attempted
                                      - confirmed
                                      - unconfirmed
                                      - unavailable
                                  connectionMethods:
                                    default: []
                                    maxItems: 3
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        protocol:
                                          type: string
                                          enum:
                                            - MCP
                                            - A2A
                                            - WEBMCP
                                        environment:
                                          type: string
                                          enum:
                                            - remote_client
                                            - browser_session
                                        endpointUrl:
                                          anyOf:
                                            - type: string
                                              format: uri
                                            - type: 'null'
                                        endpointStatus:
                                          type: string
                                          enum:
                                            - not_published
                                            - verified
                                        documentationUrl:
                                          type: string
                                          format: uri
                                      required:
                                        - protocol
                                        - environment
                                        - endpointUrl
                                        - endpointStatus
                                        - documentationUrl
                                      additionalProperties: false
                                  connectionPrompt:
                                    type: string
                                    minLength: 1
                                    maxLength: 60000
                                required:
                                  - agentId
                                  - agentSlug
                                  - operationId
                                  - operationRevision
                                  - providerFamilyRef
                                  - rank
                                  - selected
                                  - name
                                  - description
                                  - requiredSetup
                                  - executionRequirements
                                  - executionGuidance
                                  - readiness
                                  - canStartThread
                                  - reasons
                                  - uncertainties
                                  - providerCheck
                                  - connectionMethods
                                  - connectionPrompt
                                additionalProperties: false
                          required:
                            - type
                            - sourceTurnId
                            - snapshot
                            - agents
                          additionalProperties: false
                        - type: object
                          properties:
                            type:
                              type: string
                              const: text
                            text:
                              type: string
                          required:
                            - type
                            - text
                          additionalProperties: false
                        - type: object
                          properties:
                            type:
                              type: string
                              const: agents
                            searchId:
                              type: string
                            agents:
                              maxItems: 20
                              type: array
                              items:
                                type: object
                                properties:
                                  agentId:
                                    type: string
                                    minLength: 1
                                    maxLength: 200
                                  agentSlug:
                                    anyOf:
                                      - type: string
                                        minLength: 1
                                        maxLength: 200
                                      - type: 'null'
                                  operationId:
                                    type: string
                                    minLength: 1
                                    maxLength: 200
                                  operationRevision:
                                    type: integer
                                    exclusiveMinimum: 0
                                    maximum: 9007199254740991
                                  providerFamilyRef:
                                    default: null
                                    anyOf:
                                      - type: string
                                        pattern: ^provider-family:sha256:[a-f0-9]{64}$
                                      - type: 'null'
                                  rank:
                                    type: integer
                                    exclusiveMinimum: 0
                                    maximum: 9007199254740991
                                  selected:
                                    type: boolean
                                  name:
                                    type: string
                                    minLength: 1
                                    maxLength: 500
                                  description:
                                    anyOf:
                                      - type: string
                                        maxLength: 8000
                                      - type: 'null'
                                  imageUrl:
                                    anyOf:
                                      - type: string
                                        format: uri
                                      - type: 'null'
                                  avatarUrl:
                                    anyOf:
                                      - type: string
                                        format: uri
                                      - type: 'null'
                                  requiredSetup:
                                    default: null
                                    anyOf:
                                      - type: object
                                        properties:
                                          kind:
                                            type: string
                                            enum:
                                              - credential
                                              - installation
                                              - provider_configuration
                                          suppliedBy:
                                            type: string
                                            enum:
                                              - user
                                              - provider
                                              - runtime
                                          description:
                                            type: string
                                            minLength: 1
                                            maxLength: 500
                                        required:
                                          - kind
                                          - suppliedBy
                                          - description
                                        additionalProperties: false
                                      - type: 'null'
                                  executionRequirements:
                                    default: null
                                    anyOf:
                                      - type: object
                                        properties:
                                          contractVersion:
                                            type: string
                                            const: 1.0.0
                                          providerAuthentication:
                                            type: object
                                            properties:
                                              state:
                                                type: string
                                                enum:
                                                  - REQUIRED
                                                  - NOT_REQUIRED
                                                  - UNKNOWN
                                                  - NOT_APPLICABLE
                                              mechanisms:
                                                maxItems: 20
                                                type: array
                                                items:
                                                  type: string
                                                  enum:
                                                    - BEARER
                                                    - API_KEY
                                                    - OAUTH2
                                                    - HTTP_BASIC
                                                    - MUTUAL_TLS
                                                    - SIGNED_REQUEST
                                                    - SESSION_COOKIE
                                                    - OPERATION_SECRET_INPUT
                                                    - UNSPECIFIED
                                              placements:
                                                maxItems: 20
                                                type: array
                                                items:
                                                  type: string
                                                  enum:
                                                    - HEADER
                                                    - QUERY
                                                    - COOKIE
                                                    - BODY
                                                    - TOOL_ARGUMENT
                                                    - ENVIRONMENT
                                                    - AUTH_CONTINUATION
                                              scopes:
                                                maxItems: 100
                                                type: array
                                                items:
                                                  type: string
                                                  minLength: 1
                                                  maxLength: 200
                                              evidence:
                                                type: string
                                                enum:
                                                  - PROVIDER_DECLARED
                                                  - PROVIDER_OBSERVED
                                                  - DERIVED_FROM_VERIFIED_RECEIPT
                                                  - UNKNOWN
                                            required:
                                              - state
                                              - mechanisms
                                              - placements
                                              - scopes
                                              - evidence
                                            additionalProperties: false
                                          operationCredentials:
                                            type: object
                                            properties:
                                              state:
                                                type: string
                                                enum:
                                                  - REQUIRED
                                                  - NOT_REQUIRED
                                                  - UNKNOWN
                                                  - NOT_APPLICABLE
                                              sensitiveInputNames:
                                                maxItems: 100
                                                type: array
                                                items:
                                                  type: string
                                                  minLength: 1
                                                  maxLength: 200
                                            required:
                                              - state
                                              - sensitiveInputNames
                                            additionalProperties: false
                                          runtime:
                                            type: object
                                            properties:
                                              kind:
                                                type: string
                                                enum:
                                                  - REMOTE_MCP
                                                  - LOCAL_STDIO
                                                  - A2A_JSONRPC
                                                  - HTTP_JSON
                                                  - OPENAPI_HTTP
                                                  - BOUNDED_FETCH
                                                  - BROWSER
                                                  - X402_PAYMENT
                                                  - COMMERCE
                                                  - UNSUPPORTED
                                              package:
                                                anyOf:
                                                  - type: object
                                                    properties:
                                                      ecosystem:
                                                        type: string
                                                        minLength: 1
                                                        maxLength: 40
                                                      identifier:
                                                        type: string
                                                        minLength: 1
                                                        maxLength: 500
                                                      version:
                                                        type: string
                                                        minLength: 1
                                                        maxLength: 200
                                                      runtimeProfile:
                                                        type: string
                                                        minLength: 1
                                                        maxLength: 120
                                                    required:
                                                      - ecosystem
                                                      - identifier
                                                      - version
                                                      - runtimeProfile
                                                    additionalProperties: false
                                                  - type: 'null'
                                              requiredEnvironmentNames:
                                                maxItems: 100
                                                type: array
                                                items:
                                                  type: string
                                                  minLength: 1
                                                  maxLength: 200
                                            required:
                                              - kind
                                              - package
                                              - requiredEnvironmentNames
                                            additionalProperties: false
                                          payment:
                                            type: object
                                            properties:
                                              state:
                                                type: string
                                                enum:
                                                  - REQUIRED
                                                  - NOT_REQUIRED
                                                  - UNKNOWN
                                                  - NOT_APPLICABLE
                                              termsDigest:
                                                anyOf:
                                                  - type: string
                                                    maxLength: 200
                                                  - type: 'null'
                                            required:
                                              - state
                                              - termsDigest
                                            additionalProperties: false
                                          browser:
                                            type: object
                                            properties:
                                              state:
                                                type: string
                                                enum:
                                                  - REQUIRED
                                                  - NOT_REQUIRED
                                                  - UNKNOWN
                                                  - NOT_APPLICABLE
                                              sessionKind:
                                                anyOf:
                                                  - type: string
                                                    enum:
                                                      - ANONYMOUS
                                                      - PROVIDER_SESSION
                                                      - UNKNOWN
                                                  - type: 'null'
                                            required:
                                              - state
                                              - sessionKind
                                            additionalProperties: false
                                          providerContract:
                                            type: object
                                            properties:
                                              route:
                                                type: string
                                                enum:
                                                  - RESOLVED
                                                  - MISSING
                                                  - AMBIGUOUS
                                                  - UNSAFE
                                                  - UNSUPPORTED
                                                  - UNKNOWN
                                              inputSchema:
                                                type: string
                                                enum:
                                                  - CONCRETE
                                                  - DIGEST_ONLY
                                                  - MISSING
                                                  - UNKNOWN
                                              outputSchema:
                                                type: string
                                                enum:
                                                  - CONCRETE
                                                  - DIGEST_ONLY
                                                  - MISSING
                                                  - UNKNOWN
                                            required:
                                              - route
                                              - inputSchema
                                              - outputSchema
                                            additionalProperties: false
                                          providerBlockers:
                                            maxItems: 20
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                code:
                                                  type: string
                                                  enum:
                                                    - PROVIDER_ROUTE_UNSUPPORTED
                                                    - PROVIDER_SCHEMA_MISSING
                                                    - PROVIDER_AUTH_SCHEME_UNSPECIFIED
                                                    - PROVIDER_METADATA_INCOMPLETE
                                                    - DARWIN_ADAPTER_UNAVAILABLE
                                                    - DARWIN_ROUTE_NOT_APPROVED
                                                    - DARWIN_LOCAL_RUNTIME_UNAVAILABLE
                                                    - DARWIN_BROWSER_RUNTIME_UNAVAILABLE
                                                    - DARWIN_PAYMENT_RUNTIME_UNAVAILABLE
                                                owner:
                                                  type: string
                                                  enum:
                                                    - PROVIDER
                                                    - DARWIN
                                              required:
                                                - code
                                                - owner
                                              additionalProperties: false
                                          derivation:
                                            type: object
                                            properties:
                                              normalizerVersion:
                                                type: string
                                                const: execution-requirements-v1
                                              sourceRevision:
                                                type: string
                                                minLength: 1
                                                maxLength: 240
                                              sourceReceiptDigest:
                                                anyOf:
                                                  - type: string
                                                    maxLength: 200
                                                  - type: 'null'
                                              completeness:
                                                type: string
                                                enum:
                                                  - COMPLETE
                                                  - PARTIAL
                                              derivationKey:
                                                type: string
                                                pattern: ^sha256:[a-f0-9]{64}$
                                            required:
                                              - normalizerVersion
                                              - sourceRevision
                                              - sourceReceiptDigest
                                              - completeness
                                              - derivationKey
                                            additionalProperties: false
                                        required:
                                          - contractVersion
                                          - providerAuthentication
                                          - operationCredentials
                                          - runtime
                                          - payment
                                          - browser
                                          - providerContract
                                          - providerBlockers
                                          - derivation
                                        additionalProperties: false
                                      - type: 'null'
                                  executionGuidance:
                                    default: null
                                    anyOf:
                                      - type: object
                                        properties:
                                          credentialSummaryCode:
                                            type: string
                                            minLength: 1
                                            maxLength: 200
                                          credentialSummary:
                                            type: string
                                            minLength: 1
                                            maxLength: 1000
                                          setupSummaryCode:
                                            type: string
                                            minLength: 1
                                            maxLength: 200
                                          setupSummary:
                                            type: string
                                            minLength: 1
                                            maxLength: 1000
                                          recordBlockers:
                                            maxItems: 20
                                            type: array
                                            items:
                                              type: object
                                              properties:
                                                code:
                                                  type: string
                                                  enum:
                                                    - PROVIDER_ROUTE_UNSUPPORTED
                                                    - PROVIDER_SCHEMA_MISSING
                                                    - PROVIDER_AUTH_SCHEME_UNSPECIFIED
                                                    - PROVIDER_METADATA_INCOMPLETE
                                                    - DARWIN_ADAPTER_UNAVAILABLE
                                                    - DARWIN_ROUTE_NOT_APPROVED
                                                    - DARWIN_LOCAL_RUNTIME_UNAVAILABLE
                                                    - DARWIN_BROWSER_RUNTIME_UNAVAILABLE
                                                    - DARWIN_PAYMENT_RUNTIME_UNAVAILABLE
                                                owner:
                                                  type: string
                                                  enum:
                                                    - PROVIDER
                                                    - DARWIN
                                              required:
                                                - code
                                                - owner
                                              additionalProperties: false
                                          primaryBlockerCode:
                                            anyOf:
                                              - type: string
                                                enum:
                                                  - PROVIDER_ROUTE_UNSUPPORTED
                                                  - PROVIDER_SCHEMA_MISSING
                                                  - PROVIDER_AUTH_SCHEME_UNSPECIFIED
                                                  - PROVIDER_METADATA_INCOMPLETE
                                                  - DARWIN_ADAPTER_UNAVAILABLE
                                                  - DARWIN_ROUTE_NOT_APPROVED
                                                  - DARWIN_LOCAL_RUNTIME_UNAVAILABLE
                                                  - DARWIN_BROWSER_RUNTIME_UNAVAILABLE
                                                  - DARWIN_PAYMENT_RUNTIME_UNAVAILABLE
                                              - type: 'null'
                                          rendererVersion:
                                            type: string
                                            const: execution-guidance-v1
                                        required:
                                          - credentialSummaryCode
                                          - credentialSummary
                                          - setupSummaryCode
                                          - setupSummary
                                          - recordBlockers
                                          - primaryBlockerCode
                                          - rendererVersion
                                        additionalProperties: false
                                      - type: 'null'
                                  readiness:
                                    type: string
                                    enum:
                                      - ready
                                      - authentication_required
                                      - recheck_required
                                      - unavailable
                                  canStartThread:
                                    type: boolean
                                  canAttemptThread:
                                    type: boolean
                                  reasons:
                                    maxItems: 3
                                    type: array
                                    items:
                                      type: string
                                      maxLength: 250
                                  uncertainties:
                                    maxItems: 3
                                    type: array
                                    items:
                                      type: string
                                      maxLength: 250
                                  inquiry:
                                    type: object
                                    properties:
                                      status:
                                        type: string
                                        enum:
                                          - contacting
                                          - waiting
                                          - following_up
                                          - replied
                                          - needs_input
                                          - no_reply
                                          - not_contacted
                                          - outcome_unknown
                                      fit:
                                        type: string
                                        enum:
                                          - matches
                                          - partial
                                          - not_fit
                                          - unknown
                                      expiresAt:
                                        type: string
                                        format: date-time
                                        pattern: >-
                                          ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                                      threadId:
                                        type: string
                                        minLength: 1
                                        maxLength: 200
                                      question:
                                        type: string
                                        minLength: 1
                                        maxLength: 2000
                                      replies:
                                        maxItems: 4
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            messageId:
                                              type: string
                                              minLength: 1
                                              maxLength: 200
                                            text:
                                              type: string
                                              minLength: 1
                                              maxLength: 8000
                                            at:
                                              type: string
                                              format: date-time
                                              pattern: >-
                                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                                          required:
                                            - messageId
                                            - text
                                            - at
                                          additionalProperties: false
                                      description:
                                        type: string
                                        maxLength: 1200
                                      reason:
                                        type: string
                                        maxLength: 250
                                    required:
                                      - status
                                      - question
                                      - replies
                                    additionalProperties: false
                                  providerCheck:
                                    type: string
                                    enum:
                                      - not_attempted
                                      - confirmed
                                      - unconfirmed
                                      - unavailable
                                  connectionMethods:
                                    default: []
                                    maxItems: 3
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        protocol:
                                          type: string
                                          enum:
                                            - MCP
                                            - A2A
                                            - WEBMCP
                                        environment:
                                          type: string
                                          enum:
                                            - remote_client
                                            - browser_session
                                        endpointUrl:
                                          anyOf:
                                            - type: string
                                              format: uri
                                            - type: 'null'
                                        endpointStatus:
                                          type: string
                                          enum:
                                            - not_published
                                            - verified
                                        documentationUrl:
                                          type: string
                                          format: uri
                                      required:
                                        - protocol
                                        - environment
                                        - endpointUrl
                                        - endpointStatus
                                        - documentationUrl
                                      additionalProperties: false
                                  connectionPrompt:
                                    type: string
                                    minLength: 1
                                    maxLength: 60000
                                required:
                                  - agentId
                                  - agentSlug
                                  - operationId
                                  - operationRevision
                                  - providerFamilyRef
                                  - rank
                                  - selected
                                  - name
                                  - description
                                  - requiredSetup
                                  - executionRequirements
                                  - executionGuidance
                                  - readiness
                                  - canStartThread
                                  - reasons
                                  - uncertainties
                                  - providerCheck
                                  - connectionMethods
                                  - connectionPrompt
                                additionalProperties: false
                            role:
                              type: string
                              enum:
                                - suggested
                                - used
                          required:
                            - type
                            - searchId
                            - agents
                            - role
                          additionalProperties: false
                        - type: object
                          properties:
                            type:
                              type: string
                              const: checkpoint
                            reason:
                              type: string
                              enum:
                                - approval
                                - connection
                                - unavailable
                                - limit
                                - user_control
                                - input
                            text:
                              type: string
                            threadId:
                              type: string
                          required:
                            - type
                            - reason
                            - text
                          additionalProperties: false
                        - type: object
                          properties:
                            type:
                              type: string
                              const: plan
                            presentation:
                              type: object
                              properties:
                                outcome:
                                  type: string
                                  minLength: 1
                                  maxLength: 1200
                                timeline:
                                  anyOf:
                                    - type: string
                                      maxLength: 500
                                    - type: 'null'
                                budget:
                                  anyOf:
                                    - type: string
                                      maxLength: 500
                                    - type: 'null'
                                steps:
                                  minItems: 1
                                  maxItems: 8
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      title:
                                        type: string
                                        minLength: 1
                                        maxLength: 160
                                      description:
                                        type: string
                                        minLength: 1
                                        maxLength: 1200
                                      operationIds:
                                        maxItems: 5
                                        type: array
                                        items:
                                          type: string
                                      alternativeOperationIds:
                                        maxItems: 5
                                        type: array
                                        items:
                                          type: string
                                    required:
                                      - title
                                      - description
                                      - operationIds
                                    additionalProperties: false
                              required:
                                - outcome
                                - timeline
                                - budget
                                - steps
                              additionalProperties: false
                            steps:
                              maxItems: 8
                              type: array
                              items:
                                type: object
                                properties:
                                  stepId:
                                    type: string
                                    minLength: 1
                                    maxLength: 200
                                    pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                                  objective:
                                    type: string
                                  agentId:
                                    type: string
                                    minLength: 1
                                    maxLength: 200
                                    pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                                  dependsOn:
                                    type: array
                                    items:
                                      type: string
                                      minLength: 1
                                      maxLength: 200
                                      pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                                required:
                                  - stepId
                                  - objective
                                  - agentId
                                  - dependsOn
                                additionalProperties: false
                          required:
                            - type
                            - steps
                          additionalProperties: false
                        - type: object
                          properties:
                            type:
                              type: string
                              const: handoff
                            agentId:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            threadId:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            actingAiId:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            actRequestId:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            url:
                              type: string
                            control:
                              type: string
                              enum:
                                - user
                                - coordinator
                            status:
                              type: string
                              const: thread_created
                            operationId:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                          required:
                            - type
                            - agentId
                            - threadId
                          additionalProperties: false
                        - type: object
                          properties:
                            type:
                              type: string
                              const: outcome
                            text:
                              type: string
                            messageIds:
                              type: array
                              items:
                                type: string
                                minLength: 1
                                maxLength: 200
                                pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            verification:
                              type: string
                              enum:
                                - provider_reported
                                - criteria_checked
                            partial:
                              type: boolean
                          required:
                            - type
                            - text
                            - messageIds
                            - verification
                            - partial
                          additionalProperties: false
                  searchResult:
                    type: object
                    properties:
                      searchId:
                        type: string
                        pattern: ^srch_[a-f0-9-]{36}$
                      responseId:
                        type: string
                        pattern: ^sresp_[a-f0-9-]{36}$
                      previousResponseId:
                        anyOf:
                          - type: string
                            pattern: ^sresp_[a-f0-9-]{36}$
                          - type: 'null'
                      contractVersion:
                        type: string
                        const: search-v3.0
                      status:
                        type: string
                        enum:
                          - completed
                          - needs_input
                          - no_match
                      response:
                        type: object
                        properties:
                          agents:
                            maxItems: 20
                            type: array
                            items:
                              type: object
                              properties:
                                agentId:
                                  type: string
                                  minLength: 1
                                  maxLength: 200
                                agentSlug:
                                  anyOf:
                                    - type: string
                                      minLength: 1
                                      maxLength: 200
                                    - type: 'null'
                                operationId:
                                  type: string
                                  minLength: 1
                                  maxLength: 200
                                operationRevision:
                                  type: integer
                                  exclusiveMinimum: 0
                                  maximum: 9007199254740991
                                providerFamilyRef:
                                  default: null
                                  anyOf:
                                    - type: string
                                      pattern: ^provider-family:sha256:[a-f0-9]{64}$
                                    - type: 'null'
                                rank:
                                  type: integer
                                  exclusiveMinimum: 0
                                  maximum: 9007199254740991
                                selected:
                                  type: boolean
                                name:
                                  type: string
                                  minLength: 1
                                  maxLength: 500
                                description:
                                  anyOf:
                                    - type: string
                                      maxLength: 8000
                                    - type: 'null'
                                imageUrl:
                                  anyOf:
                                    - type: string
                                      format: uri
                                    - type: 'null'
                                avatarUrl:
                                  anyOf:
                                    - type: string
                                      format: uri
                                    - type: 'null'
                                requiredSetup:
                                  default: null
                                  anyOf:
                                    - type: object
                                      properties:
                                        kind:
                                          type: string
                                          enum:
                                            - credential
                                            - installation
                                            - provider_configuration
                                        suppliedBy:
                                          type: string
                                          enum:
                                            - user
                                            - provider
                                            - runtime
                                        description:
                                          type: string
                                          minLength: 1
                                          maxLength: 500
                                      required:
                                        - kind
                                        - suppliedBy
                                        - description
                                      additionalProperties: false
                                    - type: 'null'
                                executionRequirements:
                                  default: null
                                  anyOf:
                                    - type: object
                                      properties:
                                        contractVersion:
                                          type: string
                                          const: 1.0.0
                                        providerAuthentication:
                                          type: object
                                          properties:
                                            state:
                                              type: string
                                              enum:
                                                - REQUIRED
                                                - NOT_REQUIRED
                                                - UNKNOWN
                                                - NOT_APPLICABLE
                                            mechanisms:
                                              maxItems: 20
                                              type: array
                                              items:
                                                type: string
                                                enum:
                                                  - BEARER
                                                  - API_KEY
                                                  - OAUTH2
                                                  - HTTP_BASIC
                                                  - MUTUAL_TLS
                                                  - SIGNED_REQUEST
                                                  - SESSION_COOKIE
                                                  - OPERATION_SECRET_INPUT
                                                  - UNSPECIFIED
                                            placements:
                                              maxItems: 20
                                              type: array
                                              items:
                                                type: string
                                                enum:
                                                  - HEADER
                                                  - QUERY
                                                  - COOKIE
                                                  - BODY
                                                  - TOOL_ARGUMENT
                                                  - ENVIRONMENT
                                                  - AUTH_CONTINUATION
                                            scopes:
                                              maxItems: 100
                                              type: array
                                              items:
                                                type: string
                                                minLength: 1
                                                maxLength: 200
                                            evidence:
                                              type: string
                                              enum:
                                                - PROVIDER_DECLARED
                                                - PROVIDER_OBSERVED
                                                - DERIVED_FROM_VERIFIED_RECEIPT
                                                - UNKNOWN
                                          required:
                                            - state
                                            - mechanisms
                                            - placements
                                            - scopes
                                            - evidence
                                          additionalProperties: false
                                        operationCredentials:
                                          type: object
                                          properties:
                                            state:
                                              type: string
                                              enum:
                                                - REQUIRED
                                                - NOT_REQUIRED
                                                - UNKNOWN
                                                - NOT_APPLICABLE
                                            sensitiveInputNames:
                                              maxItems: 100
                                              type: array
                                              items:
                                                type: string
                                                minLength: 1
                                                maxLength: 200
                                          required:
                                            - state
                                            - sensitiveInputNames
                                          additionalProperties: false
                                        runtime:
                                          type: object
                                          properties:
                                            kind:
                                              type: string
                                              enum:
                                                - REMOTE_MCP
                                                - LOCAL_STDIO
                                                - A2A_JSONRPC
                                                - HTTP_JSON
                                                - OPENAPI_HTTP
                                                - BOUNDED_FETCH
                                                - BROWSER
                                                - X402_PAYMENT
                                                - COMMERCE
                                                - UNSUPPORTED
                                            package:
                                              anyOf:
                                                - type: object
                                                  properties:
                                                    ecosystem:
                                                      type: string
                                                      minLength: 1
                                                      maxLength: 40
                                                    identifier:
                                                      type: string
                                                      minLength: 1
                                                      maxLength: 500
                                                    version:
                                                      type: string
                                                      minLength: 1
                                                      maxLength: 200
                                                    runtimeProfile:
                                                      type: string
                                                      minLength: 1
                                                      maxLength: 120
                                                  required:
                                                    - ecosystem
                                                    - identifier
                                                    - version
                                                    - runtimeProfile
                                                  additionalProperties: false
                                                - type: 'null'
                                            requiredEnvironmentNames:
                                              maxItems: 100
                                              type: array
                                              items:
                                                type: string
                                                minLength: 1
                                                maxLength: 200
                                          required:
                                            - kind
                                            - package
                                            - requiredEnvironmentNames
                                          additionalProperties: false
                                        payment:
                                          type: object
                                          properties:
                                            state:
                                              type: string
                                              enum:
                                                - REQUIRED
                                                - NOT_REQUIRED
                                                - UNKNOWN
                                                - NOT_APPLICABLE
                                            termsDigest:
                                              anyOf:
                                                - type: string
                                                  maxLength: 200
                                                - type: 'null'
                                          required:
                                            - state
                                            - termsDigest
                                          additionalProperties: false
                                        browser:
                                          type: object
                                          properties:
                                            state:
                                              type: string
                                              enum:
                                                - REQUIRED
                                                - NOT_REQUIRED
                                                - UNKNOWN
                                                - NOT_APPLICABLE
                                            sessionKind:
                                              anyOf:
                                                - type: string
                                                  enum:
                                                    - ANONYMOUS
                                                    - PROVIDER_SESSION
                                                    - UNKNOWN
                                                - type: 'null'
                                          required:
                                            - state
                                            - sessionKind
                                          additionalProperties: false
                                        providerContract:
                                          type: object
                                          properties:
                                            route:
                                              type: string
                                              enum:
                                                - RESOLVED
                                                - MISSING
                                                - AMBIGUOUS
                                                - UNSAFE
                                                - UNSUPPORTED
                                                - UNKNOWN
                                            inputSchema:
                                              type: string
                                              enum:
                                                - CONCRETE
                                                - DIGEST_ONLY
                                                - MISSING
                                                - UNKNOWN
                                            outputSchema:
                                              type: string
                                              enum:
                                                - CONCRETE
                                                - DIGEST_ONLY
                                                - MISSING
                                                - UNKNOWN
                                          required:
                                            - route
                                            - inputSchema
                                            - outputSchema
                                          additionalProperties: false
                                        providerBlockers:
                                          maxItems: 20
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              code:
                                                type: string
                                                enum:
                                                  - PROVIDER_ROUTE_UNSUPPORTED
                                                  - PROVIDER_SCHEMA_MISSING
                                                  - PROVIDER_AUTH_SCHEME_UNSPECIFIED
                                                  - PROVIDER_METADATA_INCOMPLETE
                                                  - DARWIN_ADAPTER_UNAVAILABLE
                                                  - DARWIN_ROUTE_NOT_APPROVED
                                                  - DARWIN_LOCAL_RUNTIME_UNAVAILABLE
                                                  - DARWIN_BROWSER_RUNTIME_UNAVAILABLE
                                                  - DARWIN_PAYMENT_RUNTIME_UNAVAILABLE
                                              owner:
                                                type: string
                                                enum:
                                                  - PROVIDER
                                                  - DARWIN
                                            required:
                                              - code
                                              - owner
                                            additionalProperties: false
                                        derivation:
                                          type: object
                                          properties:
                                            normalizerVersion:
                                              type: string
                                              const: execution-requirements-v1
                                            sourceRevision:
                                              type: string
                                              minLength: 1
                                              maxLength: 240
                                            sourceReceiptDigest:
                                              anyOf:
                                                - type: string
                                                  maxLength: 200
                                                - type: 'null'
                                            completeness:
                                              type: string
                                              enum:
                                                - COMPLETE
                                                - PARTIAL
                                            derivationKey:
                                              type: string
                                              pattern: ^sha256:[a-f0-9]{64}$
                                          required:
                                            - normalizerVersion
                                            - sourceRevision
                                            - sourceReceiptDigest
                                            - completeness
                                            - derivationKey
                                          additionalProperties: false
                                      required:
                                        - contractVersion
                                        - providerAuthentication
                                        - operationCredentials
                                        - runtime
                                        - payment
                                        - browser
                                        - providerContract
                                        - providerBlockers
                                        - derivation
                                      additionalProperties: false
                                    - type: 'null'
                                executionGuidance:
                                  default: null
                                  anyOf:
                                    - type: object
                                      properties:
                                        credentialSummaryCode:
                                          type: string
                                          minLength: 1
                                          maxLength: 200
                                        credentialSummary:
                                          type: string
                                          minLength: 1
                                          maxLength: 1000
                                        setupSummaryCode:
                                          type: string
                                          minLength: 1
                                          maxLength: 200
                                        setupSummary:
                                          type: string
                                          minLength: 1
                                          maxLength: 1000
                                        recordBlockers:
                                          maxItems: 20
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              code:
                                                type: string
                                                enum:
                                                  - PROVIDER_ROUTE_UNSUPPORTED
                                                  - PROVIDER_SCHEMA_MISSING
                                                  - PROVIDER_AUTH_SCHEME_UNSPECIFIED
                                                  - PROVIDER_METADATA_INCOMPLETE
                                                  - DARWIN_ADAPTER_UNAVAILABLE
                                                  - DARWIN_ROUTE_NOT_APPROVED
                                                  - DARWIN_LOCAL_RUNTIME_UNAVAILABLE
                                                  - DARWIN_BROWSER_RUNTIME_UNAVAILABLE
                                                  - DARWIN_PAYMENT_RUNTIME_UNAVAILABLE
                                              owner:
                                                type: string
                                                enum:
                                                  - PROVIDER
                                                  - DARWIN
                                            required:
                                              - code
                                              - owner
                                            additionalProperties: false
                                        primaryBlockerCode:
                                          anyOf:
                                            - type: string
                                              enum:
                                                - PROVIDER_ROUTE_UNSUPPORTED
                                                - PROVIDER_SCHEMA_MISSING
                                                - PROVIDER_AUTH_SCHEME_UNSPECIFIED
                                                - PROVIDER_METADATA_INCOMPLETE
                                                - DARWIN_ADAPTER_UNAVAILABLE
                                                - DARWIN_ROUTE_NOT_APPROVED
                                                - DARWIN_LOCAL_RUNTIME_UNAVAILABLE
                                                - DARWIN_BROWSER_RUNTIME_UNAVAILABLE
                                                - DARWIN_PAYMENT_RUNTIME_UNAVAILABLE
                                            - type: 'null'
                                        rendererVersion:
                                          type: string
                                          const: execution-guidance-v1
                                      required:
                                        - credentialSummaryCode
                                        - credentialSummary
                                        - setupSummaryCode
                                        - setupSummary
                                        - recordBlockers
                                        - primaryBlockerCode
                                        - rendererVersion
                                      additionalProperties: false
                                    - type: 'null'
                                readiness:
                                  type: string
                                  enum:
                                    - ready
                                    - authentication_required
                                    - recheck_required
                                    - unavailable
                                canStartThread:
                                  type: boolean
                                canAttemptThread:
                                  type: boolean
                                reasons:
                                  maxItems: 3
                                  type: array
                                  items:
                                    type: string
                                    maxLength: 250
                                uncertainties:
                                  maxItems: 3
                                  type: array
                                  items:
                                    type: string
                                    maxLength: 250
                                inquiry:
                                  type: object
                                  properties:
                                    status:
                                      type: string
                                      enum:
                                        - contacting
                                        - waiting
                                        - following_up
                                        - replied
                                        - needs_input
                                        - no_reply
                                        - not_contacted
                                        - outcome_unknown
                                    fit:
                                      type: string
                                      enum:
                                        - matches
                                        - partial
                                        - not_fit
                                        - unknown
                                    expiresAt:
                                      type: string
                                      format: date-time
                                      pattern: >-
                                        ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                                    threadId:
                                      type: string
                                      minLength: 1
                                      maxLength: 200
                                    question:
                                      type: string
                                      minLength: 1
                                      maxLength: 2000
                                    replies:
                                      maxItems: 4
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          messageId:
                                            type: string
                                            minLength: 1
                                            maxLength: 200
                                          text:
                                            type: string
                                            minLength: 1
                                            maxLength: 8000
                                          at:
                                            type: string
                                            format: date-time
                                            pattern: >-
                                              ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                                        required:
                                          - messageId
                                          - text
                                          - at
                                        additionalProperties: false
                                    description:
                                      type: string
                                      maxLength: 1200
                                    reason:
                                      type: string
                                      maxLength: 250
                                  required:
                                    - status
                                    - question
                                    - replies
                                  additionalProperties: false
                                providerCheck:
                                  type: string
                                  enum:
                                    - not_attempted
                                    - confirmed
                                    - unconfirmed
                                    - unavailable
                                connectionMethods:
                                  default: []
                                  maxItems: 3
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      protocol:
                                        type: string
                                        enum:
                                          - MCP
                                          - A2A
                                          - WEBMCP
                                      environment:
                                        type: string
                                        enum:
                                          - remote_client
                                          - browser_session
                                      endpointUrl:
                                        anyOf:
                                          - type: string
                                            format: uri
                                          - type: 'null'
                                      endpointStatus:
                                        type: string
                                        enum:
                                          - not_published
                                          - verified
                                      documentationUrl:
                                        type: string
                                        format: uri
                                    required:
                                      - protocol
                                      - environment
                                      - endpointUrl
                                      - endpointStatus
                                      - documentationUrl
                                    additionalProperties: false
                                connectionPrompt:
                                  type: string
                                  minLength: 1
                                  maxLength: 60000
                              required:
                                - agentId
                                - agentSlug
                                - operationId
                                - operationRevision
                                - providerFamilyRef
                                - rank
                                - selected
                                - name
                                - description
                                - requiredSetup
                                - executionRequirements
                                - executionGuidance
                                - readiness
                                - canStartThread
                                - reasons
                                - uncertainties
                                - providerCheck
                                - connectionMethods
                                - connectionPrompt
                              additionalProperties: false
                          assessment:
                            type: object
                            properties:
                              outcome:
                                type: string
                                enum:
                                  - strong
                                  - partial
                                  - clarify
                                  - no_match
                                  - unverified
                              explanation:
                                type: string
                                minLength: 1
                                maxLength: 2000
                            required:
                              - outcome
                              - explanation
                            additionalProperties: false
                          relatedSearches:
                            default: []
                            maxItems: 3
                            type: array
                            items:
                              type: object
                              properties:
                                query:
                                  type: string
                                  minLength: 1
                                  maxLength: 200
                                reason:
                                  type: string
                                  minLength: 1
                                  maxLength: 250
                              required:
                                - query
                                - reason
                              additionalProperties: false
                          plan:
                            anyOf:
                              - type: object
                                properties:
                                  steps:
                                    minItems: 1
                                    maxItems: 8
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        stepId:
                                          type: string
                                          minLength: 1
                                          maxLength: 200
                                        agentId:
                                          type: string
                                          minLength: 1
                                          maxLength: 200
                                        operationId:
                                          type: string
                                          minLength: 1
                                          maxLength: 200
                                        objective:
                                          type: string
                                          minLength: 1
                                          maxLength: 250
                                        dependsOn:
                                          maxItems: 8
                                          type: array
                                          items:
                                            type: string
                                            minLength: 1
                                            maxLength: 200
                                        alternatives:
                                          maxItems: 3
                                          type: array
                                          items:
                                            type: object
                                            properties:
                                              agentId:
                                                type: string
                                                minLength: 1
                                                maxLength: 200
                                              operationId:
                                                type: string
                                                minLength: 1
                                                maxLength: 200
                                            required:
                                              - agentId
                                              - operationId
                                            additionalProperties: false
                                      required:
                                        - stepId
                                        - agentId
                                        - operationId
                                        - objective
                                        - dependsOn
                                      additionalProperties: false
                                required:
                                  - steps
                                additionalProperties: false
                              - type: 'null'
                          question:
                            anyOf:
                              - type: string
                                minLength: 1
                                maxLength: 500
                              - type: 'null'
                          noMatchReason:
                            anyOf:
                              - type: string
                                minLength: 1
                                maxLength: 500
                              - type: 'null'
                          overview:
                            anyOf:
                              - type: string
                                maxLength: 32000
                              - type: 'null'
                        required:
                          - agents
                          - relatedSearches
                          - question
                          - noMatchReason
                        additionalProperties: false
                      searchToken:
                        type: string
                    required:
                      - searchId
                      - responseId
                      - previousResponseId
                      - contractVersion
                      - status
                      - response
                    additionalProperties: false
                  createdAt:
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                  updatedAt:
                    type: string
                    format: date-time
                    pattern: >-
                      ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                required:
                  - turnId
                  - clientMessageId
                  - message
                  - status
                  - blocks
                  - createdAt
                  - updatedAt
                additionalProperties: false
            nextBefore:
              anyOf:
                - type: string
                - type: 'null'
            eventCursor:
              type: string
          required:
            - turns
            - nextBefore
            - eventCursor
          additionalProperties: false
        conversationToken:
          description: Private guest token. Send as X-Assist-Token for subsequent requests.
          type: string
      required:
        - conversationId
        - status
        - goal
        - messages
        - revisions
        - latestRevisionId
        - quote
        - funding
        - run
        - previousRuns
        - createdAt
        - updatedAt
      additionalProperties: false
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
    bearer:
      type: http
      scheme: bearer

````

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