Arize Phoenix chat API

The chat API from Arize Phoenix — 2 operation(s) for chat.

OpenAPI Specification

phoenix-chat-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Arize-Phoenix REST annotation_configs chat API
  description: Schema for Arize-Phoenix REST API
  version: '1.0'
tags:
- name: chat
paths:
  /agents/{agent_id}/sessions/{session_id}/chat:
    post:
      tags:
      - chat
      summary: Chat
      operationId: chat_agents__agent_id__sessions__session_id__chat_post
      parameters:
      - name: agent_id
        in: path
        required: true
        schema:
          type: string
          title: Agent Id
      - name: session_id
        in: path
        required: true
        schema:
          type: string
          title: Session Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChatRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /agents/{agent_id}/sessions/{session_id}/summary:
    post:
      tags:
      - chat
      summary: Summarize Endpoint
      operationId: summarize_endpoint_agents__agent_id__sessions__session_id__summary_post
      parameters:
      - name: agent_id
        in: path
        required: true
        schema:
          type: string
          title: Agent Id
      - name: session_id
        in: path
        required: true
        schema:
          type: string
          title: Session Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/_SummarizeRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/_SummarizeResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    PlaygroundBuiltinModelContext:
      properties:
        type:
          type: string
          const: builtin
          title: Type
          default: builtin
        provider:
          type: string
          title: Provider
        modelName:
          type: string
          title: Modelname
      type: object
      required:
      - provider
      - modelName
      title: PlaygroundBuiltinModelContext
      description: Built-in playground model selection.
    StepStartUIPart:
      properties:
        type:
          type: string
          const: step-start
          title: Type
          default: step-start
      additionalProperties: false
      type: object
      title: StepStartUIPart
      description: A step boundary part of a message.
    SourceUrlUIPart:
      properties:
        type:
          type: string
          const: source-url
          title: Type
          default: source-url
        sourceId:
          type: string
          title: Sourceid
        url:
          type: string
          title: Url
        title:
          type: string
          nullable: true
          title: Title
        providerMetadata:
          additionalProperties:
            additionalProperties: true
            type: object
          type: object
          nullable: true
          title: Providermetadata
      additionalProperties: false
      type: object
      required:
      - sourceId
      - url
      title: SourceUrlUIPart
      description: A source part of a message.
    UIMessage:
      properties:
        id:
          type: string
          title: Id
        role:
          type: string
          enum:
          - system
          - user
          - assistant
          title: Role
        metadata:
          nullable: true
          title: Metadata
        parts:
          items:
            anyOf:
            - $ref: '#/components/schemas/TextUIPart'
            - $ref: '#/components/schemas/ReasoningUIPart'
            - $ref: '#/components/schemas/ToolInputStreamingPart'
            - $ref: '#/components/schemas/ToolInputAvailablePart'
            - $ref: '#/components/schemas/ToolOutputAvailablePart'
            - $ref: '#/components/schemas/ToolOutputErrorPart'
            - $ref: '#/components/schemas/ToolApprovalRequestedPart'
            - $ref: '#/components/schemas/ToolApprovalRespondedPart'
            - $ref: '#/components/schemas/ToolOutputDeniedPart'
            - $ref: '#/components/schemas/DynamicToolInputStreamingPart'
            - $ref: '#/components/schemas/DynamicToolInputAvailablePart'
            - $ref: '#/components/schemas/DynamicToolOutputAvailablePart'
            - $ref: '#/components/schemas/DynamicToolOutputErrorPart'
            - $ref: '#/components/schemas/DynamicToolApprovalRequestedPart'
            - $ref: '#/components/schemas/DynamicToolApprovalRespondedPart'
            - $ref: '#/components/schemas/DynamicToolOutputDeniedPart'
            - $ref: '#/components/schemas/SourceUrlUIPart'
            - $ref: '#/components/schemas/SourceDocumentUIPart'
            - $ref: '#/components/schemas/FileUIPart'
            - $ref: '#/components/schemas/DataUIPart'
            - $ref: '#/components/schemas/StepStartUIPart'
          type: array
          title: Parts
      additionalProperties: false
      type: object
      required:
      - id
      - role
      - parts
      title: UIMessage
      description: A message as displayed in the UI by Vercel AI Elements.
    ToolOutputAvailablePart:
      properties:
        type:
          type: string
          pattern: ^tool-
          title: Type
        toolCallId:
          type: string
          title: Toolcallid
        title:
          type: string
          nullable: true
          title: Title
        state:
          type: string
          const: output-available
          title: State
          default: output-available
        input:
          nullable: true
          title: Input
        output:
          nullable: true
          title: Output
        providerExecuted:
          type: boolean
          nullable: true
          title: Providerexecuted
        callProviderMetadata:
          additionalProperties:
            additionalProperties: true
            type: object
          type: object
          nullable: true
          title: Callprovidermetadata
        preliminary:
          type: boolean
          nullable: true
          title: Preliminary
        approval:
          anyOf:
          - $ref: '#/components/schemas/ToolApprovalRequested'
          - $ref: '#/components/schemas/ToolApprovalResponded'
          - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
      - type
      - toolCallId
      title: ToolOutputAvailablePart
      description: Tool part in output-available state.
    AssistantMessageMetadataUsageTokenDetails:
      properties:
        cacheRead:
          type: integer
          title: Cacheread
        cacheWrite:
          type: integer
          title: Cachewrite
      type: object
      required:
      - cacheRead
      - cacheWrite
      title: AssistantMessageMetadataUsageTokenDetails
    ToolApprovalResponded:
      properties:
        id:
          type: string
          title: Id
        approved:
          type: boolean
          title: Approved
        reason:
          type: string
          nullable: true
          title: Reason
      additionalProperties: false
      type: object
      required:
      - id
      - approved
      title: ToolApprovalResponded
      description: Tool approval in responded state (user has approved or denied).
    PlaygroundEvaluatorContext:
      properties:
        datasetEvaluatorId:
          type: string
          title: Datasetevaluatorid
        name:
          type: string
          title: Name
        kind:
          type: string
          enum:
          - LLM
          - CODE
          - BUILTIN
          title: Kind
        isBuiltin:
          type: boolean
          title: Isbuiltin
        isApplied:
          type: boolean
          title: Isapplied
      type: object
      required:
      - datasetEvaluatorId
      - name
      - kind
      - isBuiltin
      - isApplied
      title: PlaygroundEvaluatorContext
      description: 'One dataset evaluator on the mounted playground''s roster. ``name`` is

        user-controlled; sanitize at every model-visible boundary.'
    DynamicToolApprovalRequestedPart:
      properties:
        type:
          type: string
          const: dynamic-tool
          title: Type
          default: dynamic-tool
        toolName:
          type: string
          title: Toolname
        toolCallId:
          type: string
          title: Toolcallid
        title:
          type: string
          nullable: true
          title: Title
        state:
          type: string
          const: approval-requested
          title: State
          default: approval-requested
        input:
          title: Input
        providerExecuted:
          type: boolean
          nullable: true
          title: Providerexecuted
        callProviderMetadata:
          additionalProperties:
            additionalProperties: true
            type: object
          type: object
          nullable: true
          title: Callprovidermetadata
        approval:
          anyOf:
          - $ref: '#/components/schemas/ToolApprovalRequested'
          - $ref: '#/components/schemas/ToolApprovalResponded'
          - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
      - toolName
      - toolCallId
      - input
      title: DynamicToolApprovalRequestedPart
      description: Dynamic tool part in approval-requested state (awaiting user decision).
    ChatRequest:
      oneOf:
      - $ref: '#/components/schemas/ChatSubmitMessage'
      - $ref: '#/components/schemas/ChatRegenerateMessage'
      title: ChatRequest
      description: Discriminated union of chat request payloads.
      discriminator:
        propertyName: trigger
        mapping:
          regenerate-message: '#/components/schemas/ChatRegenerateMessage'
          submit-message: '#/components/schemas/ChatSubmitMessage'
    ToolInputAvailablePart:
      properties:
        type:
          type: string
          pattern: ^tool-
          title: Type
        toolCallId:
          type: string
          title: Toolcallid
        title:
          type: string
          nullable: true
          title: Title
        state:
          type: string
          const: input-available
          title: State
          default: input-available
        input:
          nullable: true
          title: Input
        providerExecuted:
          type: boolean
          nullable: true
          title: Providerexecuted
        callProviderMetadata:
          additionalProperties:
            additionalProperties: true
            type: object
          type: object
          nullable: true
          title: Callprovidermetadata
        approval:
          anyOf:
          - $ref: '#/components/schemas/ToolApprovalRequested'
          - $ref: '#/components/schemas/ToolApprovalResponded'
          - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
      - type
      - toolCallId
      title: ToolInputAvailablePart
      description: Tool part in input-available state.
    DatasetContext:
      properties:
        type:
          type: string
          const: dataset
          title: Type
        datasetNodeId:
          type: string
          title: Datasetnodeid
        datasetVersionNodeId:
          type: string
          nullable: true
          title: Datasetversionnodeid
      type: object
      required:
      - type
      - datasetNodeId
      title: DatasetContext
      description: 'Dataset the user is currently viewing or has bound to a workflow.


        Carries the dataset''s relay node id and, when known, the active version

        node id. These IDs scope the create-form handoff link and the sampling of

        active dataset examples used as prompt context; the dataset schema itself

        is open.'
    PlaygroundInstanceContext:
      properties:
        instanceId:
          type: integer
          title: Instanceid
        model:
          oneOf:
          - $ref: '#/components/schemas/PlaygroundBuiltinModelContext'
          - $ref: '#/components/schemas/PlaygroundCustomProviderModelContext'
          discriminator:
            propertyName: type
            mapping:
              builtin: '#/components/schemas/PlaygroundBuiltinModelContext'
              custom: '#/components/schemas/PlaygroundCustomProviderModelContext'
          nullable: true
          title: Model
        experimentId:
          type: string
          nullable: true
          title: Experimentid
      type: object
      required:
      - instanceId
      title: PlaygroundInstanceContext
      description: 'One mounted playground instance and its current model selection.


        ``experiment_id`` carries the relay node id of the experiment produced by

        this instance''s last dataset-backed run, or ``None`` when the instance has

        not produced one. Ephemeral experiments are included: they remain queryable

        until the server sweeps them ~24h after their last update.'
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    AssistantMetadataUIMessage:
      properties:
        id:
          type: string
          title: Id
        role:
          type: string
          enum:
          - system
          - user
          - assistant
          title: Role
        metadata:
          $ref: '#/components/schemas/AssistantMessageMetadata'
          nullable: true
        parts:
          items:
            anyOf:
            - $ref: '#/components/schemas/TextUIPart'
            - $ref: '#/components/schemas/ReasoningUIPart'
            - $ref: '#/components/schemas/ToolInputStreamingPart'
            - $ref: '#/components/schemas/ToolInputAvailablePart'
            - $ref: '#/components/schemas/ToolOutputAvailablePart'
            - $ref: '#/components/schemas/ToolOutputErrorPart'
            - $ref: '#/components/schemas/ToolApprovalRequestedPart'
            - $ref: '#/components/schemas/ToolApprovalRespondedPart'
            - $ref: '#/components/schemas/ToolOutputDeniedPart'
            - $ref: '#/components/schemas/DynamicToolInputStreamingPart'
            - $ref: '#/components/schemas/DynamicToolInputAvailablePart'
            - $ref: '#/components/schemas/DynamicToolOutputAvailablePart'
            - $ref: '#/components/schemas/DynamicToolOutputErrorPart'
            - $ref: '#/components/schemas/DynamicToolApprovalRequestedPart'
            - $ref: '#/components/schemas/DynamicToolApprovalRespondedPart'
            - $ref: '#/components/schemas/DynamicToolOutputDeniedPart'
            - $ref: '#/components/schemas/SourceUrlUIPart'
            - $ref: '#/components/schemas/SourceDocumentUIPart'
            - $ref: '#/components/schemas/FileUIPart'
            - $ref: '#/components/schemas/DataUIPart'
            - $ref: '#/components/schemas/StepStartUIPart'
          type: array
          title: Parts
      additionalProperties: false
      type: object
      required:
      - id
      - role
      - parts
      title: AssistantMetadataUIMessage
      description: '`UIMessage` with `metadata` narrowed to `AssistantMessageMetadata`.'
    ToolApprovalRequestedPart:
      properties:
        type:
          type: string
          pattern: ^tool-
          title: Type
        toolCallId:
          type: string
          title: Toolcallid
        title:
          type: string
          nullable: true
          title: Title
        state:
          type: string
          const: approval-requested
          title: State
          default: approval-requested
        input:
          nullable: true
          title: Input
        providerExecuted:
          type: boolean
          nullable: true
          title: Providerexecuted
        callProviderMetadata:
          additionalProperties:
            additionalProperties: true
            type: object
          type: object
          nullable: true
          title: Callprovidermetadata
        approval:
          anyOf:
          - $ref: '#/components/schemas/ToolApprovalRequested'
          - $ref: '#/components/schemas/ToolApprovalResponded'
          - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
      - type
      - toolCallId
      title: ToolApprovalRequestedPart
      description: Tool part in approval-requested state (awaiting user decision).
    ProjectContext:
      properties:
        type:
          type: string
          const: project
          title: Type
        projectNodeId:
          type: string
          title: Projectnodeid
        spanFilter:
          type: string
          nullable: true
          title: Spanfilter
        rootSpansOnly:
          type: boolean
          nullable: true
          title: Rootspansonly
      type: object
      required:
      - type
      - projectNodeId
      title: ProjectContext
      description: 'Project the user is currently viewing.


        ``span_filter`` carries the project-scoped span filter expression when the

        span filter field is mounted — empty string when the field is mounted with

        no condition applied, ``None`` when the field is not present at all.


        ``root_spans_only`` carries the current state of the spans-table root vs.

        all toggle when that toggle is mounted — ``True`` when the table is

        restricted to root spans, ``False`` when it shows every span, ``None``

        when the toggle is not present (e.g. on the traces tab).'
    PlaygroundExperimentScaffoldContext:
      properties:
        name:
          type: string
          nullable: true
          title: Name
        description:
          type: string
          nullable: true
          title: Description
        hasMetadata:
          type: boolean
          title: Hasmetadata
          default: false
      type: object
      title: PlaygroundExperimentScaffoldContext
      description: "Experiment name/description/metadata the user has staged for the playground's\n*next* dataset-backed run, before that run has started.\n\nThe playground UI lets the user pre-set how the next recorded run's experiment\nwill be named, described, and tagged (via the ``set_playground_experiment_recording``\ntool or the recording form). That staged state is surfaced here so the agent can\nsee what is already set and avoid re-staging it.\n\nField semantics:\n- ``name`` / ``description``: the staged values, surfaced to the model verbatim,\n  or ``None`` when the user has not staged them.\n- ``has_metadata``: a presence flag, not the value. Only *whether* metadata has\n  been staged is model-relevant (so the agent knows not to re-attach it); the\n  metadata object itself is deliberately kept out of the prompt.\n\nA field left unstaged (``None`` / ``False``) falls back to the server default when\nthe run starts. The scaffold is consumed once that next run begins."
    WebAccessContext:
      properties:
        type:
          type: string
          const: web_access
          title: Type
        enabled:
          type: boolean
          title: Enabled
      type: object
      required:
      - type
      - enabled
      title: WebAccessContext
      description: User's per-turn request to expose web search / fetch tools.
    FileUIPart:
      properties:
        type:
          type: string
          const: file
          title: Type
          default: file
        mediaType:
          type: string
          title: Mediatype
        filename:
          type: string
          nullable: true
          title: Filename
        url:
          type: string
          title: Url
        providerMetadata:
          additionalProperties:
            additionalProperties: true
            type: object
          type: object
          nullable: true
          title: Providermetadata
      additionalProperties: false
      type: object
      required:
      - mediaType
      - url
      title: FileUIPart
      description: A file part of a message.
    SubagentsContext:
      properties:
        type:
          type: string
          const: subagents
          title: Type
        enabled:
          type: boolean
          title: Enabled
      type: object
      required:
      - type
      - enabled
      title: SubagentsContext
      description: User's per-turn request to expose the subagent-spawning tool.
    DataUIPart:
      properties:
        type:
          type: string
          pattern: ^data-
          title: Type
        id:
          type: string
          nullable: true
          title: Id
        data:
          title: Data
      additionalProperties: false
      type: object
      required:
      - type
      - data
      title: DataUIPart
      description: Data part with dynamic type based on data name.
    DynamicToolOutputDeniedPart:
      properties:
        type:
          type: string
          const: dynamic-tool
          title: Type
          default: dynamic-tool
        toolName:
          type: string
          title: Toolname
        toolCallId:
          type: string
          title: Toolcallid
        title:
          type: string
          nullable: true
          title: Title
        state:
          type: string
          const: output-denied
          title: State
          default: output-denied
        input:
          title: Input
        providerExecuted:
          type: boolean
          nullable: true
          title: Providerexecuted
        callProviderMetadata:
          additionalProperties:
            additionalProperties: true
            type: object
          type: object
          nullable: true
          title: Callprovidermetadata
        approval:
          anyOf:
          - $ref: '#/components/schemas/ToolApprovalRequested'
          - $ref: '#/components/schemas/ToolApprovalResponded'
          - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
      - toolName
      - toolCallId
      - input
      title: DynamicToolOutputDeniedPart
      description: Dynamic tool part in output-denied state (tool was denied, terminal state).
    ToolApprovalRequested:
      properties:
        id:
          type: string
          title: Id
      additionalProperties: false
      type: object
      required:
      - id
      title: ToolApprovalRequested
      description: Tool approval in requested state (awaiting user response).
    _SummarizeResponse:
      properties:
        summary:
          type: string
          title: Summary
      type: object
      required:
      - summary
      title: _SummarizeResponse
    ToolOutputDeniedPart:
      properties:
        type:
          type: string
          pattern: ^tool-
          title: Type
        toolCallId:
          type: string
          title: Toolcallid
        title:
          type: string
          nullable: true
          title: Title
        state:
          type: string
          const: output-denied
          title: State
          default: output-denied
        input:
          nullable: true
          title: Input
        providerExecuted:
          type: boolean
          nullable: true
          title: Providerexecuted
        callProviderMetadata:
          additionalProperties:
            additionalProperties: true
            type: object
          type: object
          nullable: true
          title: Callprovidermetadata
        approval:
          anyOf:
          - $ref: '#/components/schemas/ToolApprovalRequested'
          - $ref: '#/components/schemas/ToolApprovalResponded'
          - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
      - type
      - toolCallId
      title: ToolOutputDeniedPart
      description: Tool part in output-denied state (tool was denied, terminal state).
    TextUIPart:
      properties:
        type:
          type: string
          const: text
          title: Type
          default: text
        text:
          type: string
          title: Text
        state:
          type: string
          enum:
          - streaming
          - done
          nullable: true
          title: State
        providerMetadata:
          additionalProperties:
            additionalProperties: true
            type: object
          type: object
          nullable: true
          title: Providermetadata
      additionalProperties: false
      type: object
      required:
      - text
      title: TextUIPart
      description: A text part of a message.
    LlmEvaluatorContext:
      properties:
        type:
          type: string
          const: llm_evaluator
          title: Type
        evaluatorNodeId:
          type: string
          nullable: true
          title: Evaluatornodeid
      type: object
      required:
      - type
      title: LlmEvaluatorContext
      description: LLM-evaluator create/edit form mounted in the current browser route.
    ReasoningUIPart:
      properties:
        type:
          type: string
          const: reasoning
          title: Type
          default: reasoning
        text:
          type: string
          title: Text
        state:
          type: string
          enum:
          - streaming
          - done
          nullable: true
          title: State
        providerMetadata:
          additionalProperties:
            additionalProperties: true
            type: object
          type: object
          nullable: true
          title: Providermetadata
      additionalProperties: false
      type: object
      required:
      - text
      title: ReasoningUIPart
      description: A reasoning part of a message.
    TraceContext:
      properties:
        type:
          type: string
          const: trace
          title: Type
        projectNodeId:
          type: string
          title: Projectnodeid
        otelTraceId:
          type: string
          title: Oteltraceid
      type: object
      required:
      - type
      - projectNodeId
      - otelTraceId
      title: TraceContext
    CustomProviderModelSelection:
      properties:
        providerType:
          type: string
          const: custom
          title: Providertype
        providerId:
          type: string
          title: Providerid
        modelName:
          type: string
          title: Modelname
      type: object
      required:
      - providerType
      - providerId
      - modelName
      title: CustomProviderModelSelection
      description: Chat against a stored custom provider record.
    DynamicToolInputAvailablePart:
      properties:
        type:
          type: string
          const: dynamic-tool
          title: Type
          default: dynamic-tool
        toolName:
          type: string
          title: Toolname
        toolCallId:
          type: string
          title: Toolcallid
        title:
          type: string
          nullable: true
          title: Title
        state:
          type: string
          const: input-available
          title: State
          default: input-available
        input:
          title: Input
        providerExecuted:
          type: boolean
          nullable: true
          title: Providerexecuted
        callProviderMetadata:
          additionalProperties:
            additionalProperties: true
            type: object
          type: object
          nullable: true
          title: Callprovidermetadata
        approval:
          anyOf:
          - $ref: '#/components/schemas/ToolApprovalRequested'
          - $ref: '#/components/schemas/ToolApprovalResponded'
          - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
      - toolName
      - toolCallId
      - input
      title: DynamicToolInputAvailablePart
      description: Dynamic tool part in input-available state.
    DynamicToolOutputAvailablePart:
      properties:
        type:
          type: string
          const: dynamic-tool
          title: Type
          default: dynamic-tool
        toolName:
          type: string
          title: Toolname
        toolCallId:
          type: string
          title: Toolcallid
        title:
          type: string
          nullable: true
          title: Title
        state:
          type: string
          const: output-available
          title: State
          default: output-available
        input:
          title: Input
        output:
          title: Output
        providerExecuted:
          type: boolean
          nullable: true
          title: Providerexecuted
        callProviderMetadata:
          additionalProperties:
            additionalProperties: true
            type: object
          type: object
          nullable: true
          title: Callprovidermetadata
        preliminary:
          type: boolean
          nullable: true
          title: Preliminary
        approval:
          anyOf:
          - $ref: '#/components/schemas/ToolApprovalRequested'
          - $ref: '#/components/schemas/ToolApprovalResponded'
          - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
      - toolName
      - toolCallId
      - input
      - output
      title: DynamicToolOutputAvailablePart
      description: Dynamic tool part in output-available state.
    DynamicToolOutputErrorPart:
      properties:
        type:
          type: string
          const: dynamic-tool
          title: Type
          default: dynamic-tool
        toolName:
          type: string
          title: Toolname
        toolCallId:
          type: string
          title: Toolcallid
        title:
          type: string
          nullable: true
          title: Title
        state:
          type: string
          const: output-error
          title: State
          default: output-error
        input:
          title: Input
        errorText:
          type: string
          title: Errortext
        providerExecuted:
          type: boolean
          nullable: true
          title: Providerexecuted
        callProviderMetadata:
          additionalProperties:
            additionalProperties: true
            type: object
          type: object
          nullable: true
          title: Callprovidermetadata
        approval:
          anyOf:
          - $ref: '#/components/schemas/ToolApprovalRequested'
          - $ref: '#/components/schemas/ToolApprovalResponded'
          - type: 'null'
          title: Approval
      additionalProperties: false
      type: object
      required:
      - toolName
      - toolCallId
      - input
      - errorText
      title: DynamicToolOutputErrorPart
      description: Dynamic tool part in output-error state.
    SourceDocumentUIPart:
      properties:
        type:
          type: string
          const: source-document
          title: Type
          default: source-document
        sourceId:
          type: string
          title: Sourceid
        mediaType:
          type: string
          title: Mediatype
        title:
          type: string
          title: Title
        filename:
          type: string
          nullable: true
          title: Filename
        providerMetadata:
          additionalProperties:
            additionalProperties: true
            type: object
          type: object
          nullable: true
          title: Providermetadata
      additionalProperties: false
      type: object
      required:
      - sourceId
      - mediaType
      - title
      title: SourceDocumentUIPart
      description: A document source part of a message.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
     

# --- truncated at 32 KB (51 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/phoenix/refs/heads/main/openapi/phoenix-chat-api-openapi.yml