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

# Update Workflow Schedule

> Modify a pending scheduled run (time, inputs, or version).



## OpenAPI

````yaml https://api-prod.interactly.ai/api-docs/workflows/api.json patch /workflows/v1/workflow-schedules/{schedule_id}
openapi: 3.1.0
info:
  title: Interactly API
  description: API for building interactly.ai services
  version: 1.1.0
  contact:
    name: Interactly
    url: https://interactly.ai
    email: developers@interactly.ai
servers:
  - url: https://api-prod.interactly.ai
    description: API Server
security: []
paths:
  /workflows/v1/workflow-schedules/{schedule_id}:
    patch:
      tags:
        - Workflow Schedules
      summary: Update Workflow Schedule
      description: Modify a pending scheduled run (time, inputs, or version).
      operationId: >-
        workflow_service_update_workflow_schedule_v1_workflow_schedules__schedule_id__patch
      parameters:
        - name: schedule_id
          in: path
          required: true
          schema:
            $ref: '#/components/schemas/PydanticObjectId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/Body_update_workflow_schedule_v1_workflow_schedules__schedule_id__patch
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkflowScheduledRunsModel'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - bearer: []
components:
  schemas:
    PydanticObjectId:
      type: string
      maxLength: 24
      minLength: 24
      pattern: ^[0-9a-f]{24}$
      example: 5eb7cf5a86d9755df3a6c593
    Body_update_workflow_schedule_v1_workflow_schedules__schedule_id__patch:
      properties:
        scheduled_time:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Scheduled Time
          description: New scheduled time in UTC
        run_input:
          anyOf:
            - $ref: '#/components/schemas/WorkflowRunInput-Input'
            - type: 'null'
        version:
          anyOf:
            - type: integer
            - type: 'null'
          title: Version
      type: object
      title: Body_update_workflow_schedule_v1_workflow_schedules__schedule_id__patch
    WorkflowScheduledRunsModel:
      properties:
        team_id:
          anyOf:
            - type: string
            - type: 'null'
          description: ID of the team that owns this edge
        created_by:
          anyOf:
            - type: string
            - type: 'null'
          description: ID of the user who created this edge
        updated_by:
          anyOf:
            - type: string
            - type: 'null'
          description: ID of the user who last updated this edge
        created_at:
          type: string
          format: date-time
          title: Created At
        updated_at:
          type: string
          format: date-time
          title: Updated At
        _id:
          anyOf:
            - $ref: '#/components/schemas/PydanticObjectId'
            - type: 'null'
          description: MongoDB document ObjectID
        workflow_id:
          $ref: '#/components/schemas/PydanticObjectId'
          description: ID of the workflow to run
        status:
          $ref: '#/components/schemas/WorkflowScheduleStatus'
          description: Current status of the schedule
          default: pending
        scheduled_time:
          type: string
          format: date-time
          title: Scheduled Time
          description: The target time for the workflow execution (UTC)
        run_input:
          $ref: '#/components/schemas/WorkflowRunInput-Output'
          description: Inputs and dynamic variables for the workflow run
        version:
          anyOf:
            - type: integer
            - type: 'null'
          title: Version
          description: Version of the workflow to run
        schedule_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Schedule Name
          description: AWS EventBridge Schedule name (used for deletion)
        scheduler_arn:
          anyOf:
            - type: string
            - type: 'null'
          title: Scheduler Arn
          description: AWS EventBridge Scheduler ARN
        actual_run_id:
          anyOf:
            - $ref: '#/components/schemas/PydanticObjectId'
            - type: 'null'
          description: Link to the actual WorkflowRunsModel ID once executed
        scheduled_by_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Scheduled By Name
          description: Display name of the user who created the schedule
        error_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Error Message
          description: Error message if the schedule failed to execute
      type: object
      required:
        - workflow_id
        - scheduled_time
      title: WorkflowScheduledRunsModel
      description: Stores scheduled workflow runs.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    WorkflowRunInput-Input:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        command:
          $ref: '#/components/schemas/WorkflowCommand'
          title: Workflow Command
          description: Command to execute on the workflow or workflow run
          default: start
        workflow_id:
          anyOf:
            - $ref: '#/components/schemas/PydanticObjectId'
            - type: 'null'
          title: Workflow DB Object ID
          description: DB Object ID of the workflow to run
        version_number:
          anyOf:
            - type: integer
            - type: 'null'
          title: Workflow Version Number
          description: >-
            Version number of the workflow this run is associated with. 0 is the
            initial version (default).
          default: 0
        run_by:
          anyOf:
            - type: string
            - type: 'null'
          title: Workflow Run Initiator
          description: Identifier of the user or system that initiated the workflow run
        workflow_run_id:
          anyOf:
            - $ref: '#/components/schemas/PydanticObjectId'
            - type: 'null'
          title: Workflow Run ID
          description: ID of the workflow run to resume
        team_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Team ID
          description: >-
            Team ID associated with this workflow run, used for vendor
            credential lookup
        start_node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Start Node Logical ID
          description: >-
            Optional logical ID of the node to start execution from, bypassing
            the default start node.
        initial_state:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Initial Workflow State
          description: Optional serialized WorkflowState to resume execution with context.
        thread_to_node_inputs:
          additionalProperties:
            $ref: '#/components/schemas/NodesRunInputs'
          type: object
          title: Thread to Node Inputs
          description: Mapping of thread IDs to node inputs
        welcome_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Welcome Message
          description: >-
            Voice-engine opening line, seeded as the first assistant message on
            the first run only.
      type: object
      title: WorkflowRunInput
      description: Input to the workflow, used to kick off or resume a workflow run.
    WorkflowScheduleStatus:
      type: string
      enum:
        - pending
        - in_progress
        - completed
        - failed
        - cancelled
      title: WorkflowScheduleStatus
    WorkflowRunInput-Output:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        command:
          $ref: '#/components/schemas/WorkflowCommand'
          title: Workflow Command
          description: Command to execute on the workflow or workflow run
          default: start
        workflow_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workflow DB Object ID
          description: DB Object ID of the workflow to run
        version_number:
          anyOf:
            - type: integer
            - type: 'null'
          title: Workflow Version Number
          description: >-
            Version number of the workflow this run is associated with. 0 is the
            initial version (default).
          default: 0
        run_by:
          anyOf:
            - type: string
            - type: 'null'
          title: Workflow Run Initiator
          description: Identifier of the user or system that initiated the workflow run
        workflow_run_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Workflow Run ID
          description: ID of the workflow run to resume
        team_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Team ID
          description: >-
            Team ID associated with this workflow run, used for vendor
            credential lookup
        start_node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Start Node Logical ID
          description: >-
            Optional logical ID of the node to start execution from, bypassing
            the default start node.
        initial_state:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Initial Workflow State
          description: Optional serialized WorkflowState to resume execution with context.
        thread_to_node_inputs:
          additionalProperties:
            $ref: '#/components/schemas/NodesRunInputs'
          type: object
          title: Thread to Node Inputs
          description: Mapping of thread IDs to node inputs
        welcome_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Welcome Message
          description: >-
            Voice-engine opening line, seeded as the first assistant message on
            the first run only.
      type: object
      title: WorkflowRunInput
      description: Input to the workflow, used to kick off or resume a workflow run.
    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
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    WorkflowCommand:
      type: string
      enum:
        - start
        - data
        - resume
        - pause
        - stop
      title: WorkflowCommand
    NodesRunInputs:
      properties:
        node_run_inputs:
          items:
            oneOf:
              - $ref: '#/components/schemas/BaseNodeRunInput'
              - $ref: '#/components/schemas/LLMNodeRunInput'
              - $ref: '#/components/schemas/SayStaticMessageNodeRunInput'
              - $ref: '#/components/schemas/SuperNodeRunInput'
              - $ref: '#/components/schemas/WorkflowRunFetchNodeRunInput'
              - $ref: '#/components/schemas/WorkflowRunEvalLLMNodeRunInput'
              - $ref: '#/components/schemas/ToolNodeRunInput'
              - $ref: '#/components/schemas/StartConversationNodeRunInput'
              - $ref: '#/components/schemas/EndConversationNodeRunInput'
              - $ref: '#/components/schemas/SendSMSNodeRunInput'
              - $ref: '#/components/schemas/GoogleDocsNodeRunInput'
              - $ref: '#/components/schemas/HttpRequestNodeRunInput'
              - $ref: '#/components/schemas/AthenaPatientsSearchNodeRunInput'
              - $ref: '#/components/schemas/AthenaPatientsCreateNodeRunInput'
              - $ref: '#/components/schemas/AthenaPatientsUpdateNodeRunInput'
              - $ref: '#/components/schemas/AthenaAppointmentsCreateNodeRunInput'
              - $ref: '#/components/schemas/DeduplicateNodeRunInput'
              - $ref: '#/components/schemas/FieldExtractorNodeRunInput'
            discriminator:
              propertyName: type
              mapping:
                athena_appointments_create:
                  $ref: '#/components/schemas/AthenaAppointmentsCreateNodeRunInput'
                athena_patients_create:
                  $ref: '#/components/schemas/AthenaPatientsCreateNodeRunInput'
                athena_patients_search:
                  $ref: '#/components/schemas/AthenaPatientsSearchNodeRunInput'
                athena_patients_update:
                  $ref: '#/components/schemas/AthenaPatientsUpdateNodeRunInput'
                base_node:
                  $ref: '#/components/schemas/BaseNodeRunInput'
                deduplicate:
                  $ref: '#/components/schemas/DeduplicateNodeRunInput'
                end_conversation:
                  $ref: '#/components/schemas/EndConversationNodeRunInput'
                field_extractor:
                  $ref: '#/components/schemas/FieldExtractorNodeRunInput'
                google_docs:
                  $ref: '#/components/schemas/GoogleDocsNodeRunInput'
                http_request:
                  $ref: '#/components/schemas/HttpRequestNodeRunInput'
                llm:
                  $ref: '#/components/schemas/LLMNodeRunInput'
                say_static:
                  $ref: '#/components/schemas/SayStaticMessageNodeRunInput'
                send_sms:
                  $ref: '#/components/schemas/SendSMSNodeRunInput'
                start_conversation:
                  $ref: '#/components/schemas/StartConversationNodeRunInput'
                super_node:
                  $ref: '#/components/schemas/SuperNodeRunInput'
                tool_node:
                  $ref: '#/components/schemas/ToolNodeRunInput'
                workflow_run_evaluator:
                  $ref: '#/components/schemas/WorkflowRunEvalLLMNodeRunInput'
                workflow_run_fetch:
                  $ref: '#/components/schemas/WorkflowRunFetchNodeRunInput'
          type: array
          title: Node Run Inputs
          description: Mapping of node logical IDs to their respective run inputs
      type: object
      title: NodesRunInputs
      description: Represents the run inputs for multiple nodes in a workflow.
    BaseNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: base_node
          title: Type
          description: Discriminator field which must always be 'base_node'
          default: base_node
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
      type: object
      title: BaseNodeRunInput
    LLMNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: llm
          title: Type
          description: Discriminator field which must always be 'llm'
          default: llm
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
        messages:
          items:
            oneOf:
              - $ref: '#/components/schemas/AIMessage'
              - $ref: '#/components/schemas/HumanMessage'
              - $ref: '#/components/schemas/ChatMessage'
              - $ref: '#/components/schemas/SystemMessage'
              - $ref: '#/components/schemas/FunctionMessage'
              - $ref: '#/components/schemas/ToolMessage'
              - $ref: '#/components/schemas/AIMessageChunk'
              - $ref: '#/components/schemas/HumanMessageChunk'
              - $ref: '#/components/schemas/ChatMessageChunk'
              - $ref: '#/components/schemas/SystemMessageChunk'
              - $ref: '#/components/schemas/FunctionMessageChunk'
              - $ref: '#/components/schemas/ToolMessageChunk'
          type: array
          title: Input User Messages
          description: Input user messages to be processed by the LLM node
      type: object
      title: LLMNodeRunInput
    SayStaticMessageNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: say_static
          title: Type
          description: Discriminator field which must always be 'say_static'
          default: say_static
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
      type: object
      title: SayStaticMessageNodeRunInput
    SuperNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: super_node
          title: Type
          description: Discriminator field which must always be 'super_node'
          default: super_node
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
      type: object
      title: SuperNodeRunInput
    WorkflowRunFetchNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: workflow_run_fetch
          title: Type
          description: Discriminator field which must always be 'workflow_run_fetch'
          default: workflow_run_fetch
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
      type: object
      title: WorkflowRunFetchNodeRunInput
    WorkflowRunEvalLLMNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: workflow_run_evaluator
          title: Type
          description: Discriminator field which must always be 'workflow_run_evaluator'
          default: workflow_run_evaluator
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
        messages:
          items:
            oneOf:
              - $ref: '#/components/schemas/AIMessage'
              - $ref: '#/components/schemas/HumanMessage'
              - $ref: '#/components/schemas/ChatMessage'
              - $ref: '#/components/schemas/SystemMessage'
              - $ref: '#/components/schemas/FunctionMessage'
              - $ref: '#/components/schemas/ToolMessage'
              - $ref: '#/components/schemas/AIMessageChunk'
              - $ref: '#/components/schemas/HumanMessageChunk'
              - $ref: '#/components/schemas/ChatMessageChunk'
              - $ref: '#/components/schemas/SystemMessageChunk'
              - $ref: '#/components/schemas/FunctionMessageChunk'
              - $ref: '#/components/schemas/ToolMessageChunk'
          type: array
          title: Input User Messages
          description: Input user messages to be processed by the LLM node
      type: object
      title: WorkflowRunEvalLLMNodeRunInput
      description: Input model for evaluator node execution.
    ToolNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: tool_node
          title: Type
          description: Discriminator field which must always be 'tool_node'
          default: tool_node
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
      type: object
      title: ToolNodeRunInput
    StartConversationNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: start_conversation
          title: Type
          description: Discriminator field which must always be 'start_conversation'
          default: start_conversation
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
      type: object
      title: StartConversationNodeRunInput
    EndConversationNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: end_conversation
          title: Type
          description: Discriminator field which must always be 'end_conversation'
          default: end_conversation
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
      type: object
      title: EndConversationNodeRunInput
    SendSMSNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: send_sms
          title: Type
          description: Discriminator field which must always be 'send_sms'
          default: send_sms
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
        override_destination_phone_number:
          anyOf:
            - type: string
            - type: 'null'
          title: Destination Phone Number
          description: >-
            Destination phone number in E.164 format. Example of E.164 format:
            +1234567890. This field, if provided, overrides the phone number in
            the node config.
        override_message:
          anyOf:
            - type: string
            - type: 'null'
          title: SMS Message
          description: >-
            SMS message to be sent. Can include dynamic and runtime variable
            placeholders for dynamic content. This field, if provided, overrides
            the message in the node config.
      type: object
      title: SendSMSNodeRunInput
    GoogleDocsNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: google_docs
          title: Node Type
          description: Type of the node. Must be 'google_docs'
          default: google_docs
          input_field_not_visible: true
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
        operate_document:
          anyOf:
            - oneOf:
                - $ref: '#/components/schemas/GoogleDocsCreateDocumentNodeRunInput'
                - $ref: '#/components/schemas/GoogleDocsGetDocumentNodeRunInput'
                - $ref: '#/components/schemas/GoogleDocsUpdateDocumentNodeRunInput'
              discriminator:
                propertyName: type
                mapping:
                  google_docs_create_document:
                    $ref: '#/components/schemas/GoogleDocsCreateDocumentNodeRunInput'
                  google_docs_get_document:
                    $ref: '#/components/schemas/GoogleDocsGetDocumentNodeRunInput'
                  google_docs_update_document:
                    $ref: '#/components/schemas/GoogleDocsUpdateDocumentNodeRunInput'
            - type: 'null'
          title: Document Operation
          description: >-
            Configuration for operating on a Google Docs document (create, get,
            or update).
      type: object
      title: Google Docs Node
      description: Run input for Google Docs node.
    HttpRequestNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: http_request
          title: Type
          description: Discriminator field which must always be 'http_request'
          default: http_request
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
        override_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Override URL
          description: Override the URL for the HTTP request
      type: object
      title: HttpRequestNodeRunInput
    AthenaPatientsSearchNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: athena_patients_search
          title: Type
          description: Discriminator field which must always be 'athena_patients_search'
          default: athena_patients_search
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
        override_api_key:
          anyOf:
            - type: string
            - type: 'null'
          title: Override API Key
          description: Override API key for the node
      type: object
      title: AthenaPatientsSearchNodeRunInput
    AthenaPatientsCreateNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: athena_patients_create
          title: Type
          description: Discriminator field which must always be 'athena_patients_create'
          default: athena_patients_create
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
        override_api_key:
          anyOf:
            - type: string
            - type: 'null'
          title: Override API Key
          description: Override API key for the node
      type: object
      title: AthenaPatientsCreateNodeRunInput
    AthenaPatientsUpdateNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: athena_patients_update
          title: Type
          description: Discriminator field which must always be 'athena_patients_update'
          default: athena_patients_update
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
        override_api_key:
          anyOf:
            - type: string
            - type: 'null'
          title: Override API Key
          description: Override API key for the node
      type: object
      title: AthenaPatientsUpdateNodeRunInput
    AthenaAppointmentsCreateNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: athena_appointments_create
          title: Type
          description: >-
            Discriminator field which must always be
            'athena_appointments_create'
          default: athena_appointments_create
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
        override_api_key:
          anyOf:
            - type: string
            - type: 'null'
          title: Override API Key
          description: Override API key for the node
      type: object
      title: AthenaAppointmentsCreateNodeRunInput
    DeduplicateNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: deduplicate
          title: Type
          description: Discriminator field which must always be 'deduplicate'
          default: deduplicate
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
      type: object
      title: DeduplicateNodeRunInput
    FieldExtractorNodeRunInput:
      properties:
        dynamic_variables:
          additionalProperties: true
          type: object
          title: Dynamic Variables
          description: >-
            Dynamic variable values that will replace the '{{...}}' placeholders
            in the prompts, condition strings, tool signatures, etc.
        runtime_variables:
          additionalProperties: true
          type: object
          title: Runtime Variables
          description: >-
            Runtime variables that will replace the '[[...]]' placeholders in
            the prompts, condition strings, tool signatures, etc.
        miscellaneous:
          additionalProperties: true
          type: object
          title: Miscellaneous Run Input Data
          description: Miscellaneous run-input data
          field_visibility_level: super_admin
        type:
          type: string
          const: field_extractor
          title: Type
          description: Discriminator field which must always be 'field_extractor'
          default: field_extractor
        node_logical_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Node Logical ID
          description: Logical ID of the node this run input is for
      type: object
      title: FieldExtractorNodeRunInput
    AIMessage:
      properties:
        content:
          anyOf:
            - type: string
            - items:
                anyOf:
                  - type: string
                  - additionalProperties: true
                    type: object
              type: array
          title: Content
        additional_kwargs:
          additionalProperties: true
          type: object
          title: Additional Kwargs
        response_metadata:
          additionalProperties: true
          type: object
          title: Response Metadata
        type:
          type: string
          const: ai
          title: Type
          default: ai
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        tool_calls:
          items:
            $ref: '#/components/schemas/ToolCall'
          type: array
          title: Tool Calls
        invalid_tool_calls:
          items:
            $ref: '#/components/schemas/InvalidToolCall'
          type: array
          title: Invalid Tool Calls
        usage_metadata:
          anyOf:
            - $ref: '#/components/schemas/UsageMetadata'
            - type: 'null'
      additionalProperties: true
      type: object
      required:
        - content
      title: AIMessage
      description: |-
        Message from an AI.

        An `AIMessage` is returned from a chat model as a response to a prompt.

        This message represents the output of the model and consists of both
        the raw output as returned by the model and standardized fields
        (e.g., tool calls, usage metadata) added by the LangChain framework.
    HumanMessage:
      properties:
        content:
          anyOf:
            - type: string
            - items:
                anyOf:
                  - type: string
                  - additionalProperties: true
                    type: object
              type: array
          title: Content
        additional_kwargs:
          additionalProperties: true
          type: object
          title: Additional Kwargs
        response_metadata:
          additionalProperties: true
          type: object
          title: Response Metadata
        type:
          type: string
          const: human
          title: Type
          default: human
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
      additionalProperties: true
      type: object
      required:
        - content
      title: HumanMessage
      description: >-
        Message from the user.


        A `HumanMessage` is a message that is passed in from a user to the
        model.


        Example:
            ```python
            from langchain_core.messages import HumanMessage, SystemMessage

            messages = [
                SystemMessage(content="You are a helpful assistant! Your name is Bob."),
                HumanMessage(content="What is your name?"),
            ]

            # Instantiate a chat model and invoke it with the messages
            model = ...
            print(model.invoke(messages))
            ```
    ChatMessage:
      properties:
        content:
          anyOf:
            - type: string
            - items:
                anyOf:
                  - type: string
                  - additionalProperties: true
                    type: object
              type: array
          title: Content
        additional_kwargs:
          additionalProperties: true
          type: object
          title: Additional Kwargs
        response_metadata:
          additionalProperties: true
          type: object
          title: Response Metadata
        type:
          type: string
          const: chat
          title: Type
          default: chat
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        role:
          type: string
          title: Role
      additionalProperties: true
      type: object
      required:
        - content
        - role
      title: ChatMessage
      description: Message that can be assigned an arbitrary speaker (i.e. role).
    SystemMessage:
      properties:
        content:
          anyOf:
            - type: string
            - items:
                anyOf:
                  - type: string
                  - additionalProperties: true
                    type: object
              type: array
          title: Content
        additional_kwargs:
          additionalProperties: true
          type: object
          title: Additional Kwargs
        response_metadata:
          additionalProperties: true
          type: object
          title: Response Metadata
        type:
          type: string
          const: system
          title: Type
          default: system
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
      additionalProperties: true
      type: object
      required:
        - content
      title: SystemMessage
      description: |-
        Message for priming AI behavior.

        The system message is usually passed in as the first of a sequence
        of input messages.

        Example:
            ```python
            from langchain_core.messages import HumanMessage, SystemMessage

            messages = [
                SystemMessage(content="You are a helpful assistant! Your name is Bob."),
                HumanMessage(content="What is your name?"),
            ]

            # Define a chat model and invoke it with the messages
            print(model.invoke(messages))
            ```
    FunctionMessage:
      properties:
        content:
          anyOf:
            - type: string
            - items:
                anyOf:
                  - type: string
                  - additionalProperties: true
                    type: object
              type: array
          title: Content
        additional_kwargs:
          additionalProperties: true
          type: object
          title: Additional Kwargs
        response_metadata:
          additionalProperties: true
          type: object
          title: Response Metadata
        type:
          type: string
          const: function
          title: Type
          default: function
        name:
          type: string
          title: Name
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
      additionalProperties: true
      type: object
      required:
        - content
        - name
      title: FunctionMessage
      description: >-
        Message for passing the result of executing a tool back to a model.


        `FunctionMessage` are an older version of the `ToolMessage` schema, and

        do not contain the `tool_call_id` field.


        The `tool_call_id` field is used to associate the tool call request with
        the

        tool call response. Useful in situations where a chat model is able

        to request multiple tool calls in parallel.
    ToolMessage:
      properties:
        content:
          anyOf:
            - type: string
            - items:
                anyOf:
                  - type: string
                  - additionalProperties: true
                    type: object
              type: array
          title: Content
        additional_kwargs:
          additionalProperties: true
          type: object
          title: Additional Kwargs
        response_metadata:
          additionalProperties: true
          type: object
          title: Response Metadata
        type:
          type: string
          const: tool
          title: Type
          default: tool
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        tool_call_id:
          type: string
          title: Tool Call Id
        artifact:
          title: Artifact
        status:
          type: string
          enum:
            - success
            - error
          title: Status
          default: success
      additionalProperties: true
      type: object
      required:
        - content
        - tool_call_id
      title: ToolMessage
      description: >-
        Message for passing the result of executing a tool back to a model.


        `ToolMessage` objects contain the result of a tool invocation.
        Typically, the result

        is encoded inside the `content` field.


        `tool_call_id` is used to associate the tool call request with the tool
        call

        response. Useful in situations where a chat model is able to request
        multiple tool

        calls in parallel.


        Example:
            A `ToolMessage` representing a result of `42` from a tool call with id

            ```python
            from langchain_core.messages import ToolMessage

            ToolMessage(content="42", tool_call_id="call_Jja7J89XsjrOLA5r!MEOW!SL")
            ```

        Example:
            A `ToolMessage` where only part of the tool output is sent to the model
            and the full output is passed in to artifact.

            ```python
            from langchain_core.messages import ToolMessage

            tool_output = {
                "stdout": "From the graph we can see that the correlation between "
                "x and y is ...",
                "stderr": None,
                "artifacts": {"type": "image", "base64_data": "/9j/4gIcSU..."},
            }

            ToolMessage(
                content=tool_output["stdout"],
                artifact=tool_output,
                tool_call_id="call_Jja7J89XsjrOLA5r!MEOW!SL",
            )
            ```
    AIMessageChunk:
      properties:
        content:
          anyOf:
            - type: string
            - items:
                anyOf:
                  - type: string
                  - additionalProperties: true
                    type: object
              type: array
          title: Content
        additional_kwargs:
          additionalProperties: true
          type: object
          title: Additional Kwargs
        response_metadata:
          additionalProperties: true
          type: object
          title: Response Metadata
        type:
          type: string
          const: AIMessageChunk
          title: Type
          default: AIMessageChunk
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        tool_calls:
          items:
            $ref: '#/components/schemas/ToolCall'
          type: array
          title: Tool Calls
        invalid_tool_calls:
          items:
            $ref: '#/components/schemas/InvalidToolCall'
          type: array
          title: Invalid Tool Calls
        usage_metadata:
          anyOf:
            - $ref: '#/components/schemas/UsageMetadata'
            - type: 'null'
        tool_call_chunks:
          items:
            $ref: '#/components/schemas/ToolCallChunk'
          type: array
          title: Tool Call Chunks
        chunk_position:
          anyOf:
            - type: string
              const: last
            - type: 'null'
          title: Chunk Position
      additionalProperties: true
      type: object
      required:
        - content
      title: AIMessageChunk
      description: Message chunk from an AI (yielded when streaming).
    HumanMessageChunk:
      properties:
        content:
          anyOf:
            - type: string
            - items:
                anyOf:
                  - type: string
                  - additionalProperties: true
                    type: object
              type: array
          title: Content
        additional_kwargs:
          additionalProperties: true
          type: object
          title: Additional Kwargs
        response_metadata:
          additionalProperties: true
          type: object
          title: Response Metadata
        type:
          type: string
          const: HumanMessageChunk
          title: Type
          default: HumanMessageChunk
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
      additionalProperties: true
      type: object
      required:
        - content
      title: HumanMessageChunk
      description: Human Message chunk.
    ChatMessageChunk:
      properties:
        content:
          anyOf:
            - type: string
            - items:
                anyOf:
                  - type: string
                  - additionalProperties: true
                    type: object
              type: array
          title: Content
        additional_kwargs:
          additionalProperties: true
          type: object
          title: Additional Kwargs
        response_metadata:
          additionalProperties: true
          type: object
          title: Response Metadata
        type:
          type: string
          const: ChatMessageChunk
          title: Type
          default: ChatMessageChunk
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        role:
          type: string
          title: Role
      additionalProperties: true
      type: object
      required:
        - content
        - role
      title: ChatMessageChunk
      description: Chat Message chunk.
    SystemMessageChunk:
      properties:
        content:
          anyOf:
            - type: string
            - items:
                anyOf:
                  - type: string
                  - additionalProperties: true
                    type: object
              type: array
          title: Content
        additional_kwargs:
          additionalProperties: true
          type: object
          title: Additional Kwargs
        response_metadata:
          additionalProperties: true
          type: object
          title: Response Metadata
        type:
          type: string
          const: SystemMessageChunk
          title: Type
          default: SystemMessageChunk
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
      additionalProperties: true
      type: object
      required:
        - content
      title: SystemMessageChunk
      description: System Message chunk.
    FunctionMessageChunk:
      properties:
        content:
          anyOf:
            - type: string
            - items:
                anyOf:
                  - type: string
                  - additionalProperties: true
                    type: object
              type: array
          title: Content
        additional_kwargs:
          additionalProperties: true
          type: object
          title: Additional Kwargs
        response_metadata:
          additionalProperties: true
          type: object
          title: Response Metadata
        type:
          type: string
          const: FunctionMessageChunk
          title: Type
          default: FunctionMessageChunk
        name:
          type: string
          title: Name
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
      additionalProperties: true
      type: object
      required:
        - content
        - name
      title: FunctionMessageChunk
      description: Function Message chunk.
    ToolMessageChunk:
      properties:
        content:
          anyOf:
            - type: string
            - items:
                anyOf:
                  - type: string
                  - additionalProperties: true
                    type: object
              type: array
          title: Content
        additional_kwargs:
          additionalProperties: true
          type: object
          title: Additional Kwargs
        response_metadata:
          additionalProperties: true
          type: object
          title: Response Metadata
        type:
          type: string
          const: ToolMessageChunk
          title: Type
          default: ToolMessageChunk
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        tool_call_id:
          type: string
          title: Tool Call Id
        artifact:
          title: Artifact
        status:
          type: string
          enum:
            - success
            - error
          title: Status
          default: success
      additionalProperties: true
      type: object
      required:
        - content
        - tool_call_id
      title: ToolMessageChunk
      description: Tool Message chunk.
    GoogleDocsCreateDocumentNodeRunInput:
      properties:
        type:
          type: string
          const: google_docs_create_document
          title: Node Type
          description: Type of the node. Must be 'google_docs_create_document'
          default: google_docs_create_document
          input_field_not_visible: true
      type: object
      title: GoogleDocsCreateDocumentNodeRunInput
      description: Run input for creating a Google Docs document.
    GoogleDocsGetDocumentNodeRunInput:
      properties:
        type:
          type: string
          const: google_docs_get_document
          title: Node Type
          description: Type of the node. Must be 'google_docs_get_document'
          default: google_docs_get_document
          input_field_not_visible: true
      type: object
      title: GoogleDocsGetDocumentNodeRunInput
      description: Run input for getting a Google Docs document.
    GoogleDocsUpdateDocumentNodeRunInput:
      properties:
        type:
          type: string
          const: google_docs_update_document
          title: Node Type
          description: Type of the node. Must be 'google_docs_update_document'
          default: google_docs_update_document
          input_field_not_visible: true
      type: object
      title: GoogleDocsUpdateDocumentNodeRunInput
      description: Run input for updating a Google Docs document.
    ToolCall:
      properties:
        name:
          type: string
          title: Name
        args:
          additionalProperties: true
          type: object
          title: Args
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        type:
          type: string
          const: tool_call
          title: Type
      additionalProperties: true
      type: object
      required:
        - name
        - args
        - id
      title: ToolCall
      description: |-
        Represents an AI's request to call a tool.

        Example:
            ```python
            {"name": "foo", "args": {"a": 1}, "id": "123"}
            ```

            This represents a request to call the tool named `'foo'` with arguments
            `{"a": 1}` and an identifier of `'123'`.

        !!! note "Factory function"

            `tool_call` may also be used as a factory to create a `ToolCall`. Benefits
            include:

            * Required arguments strictly validated at creation time
    InvalidToolCall:
      properties:
        type:
          type: string
          const: invalid_tool_call
          title: Type
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        args:
          anyOf:
            - type: string
            - type: 'null'
          title: Args
        error:
          anyOf:
            - type: string
            - type: 'null'
          title: Error
        index:
          anyOf:
            - type: integer
            - type: string
          title: Index
        extras:
          additionalProperties: true
          type: object
          title: Extras
      additionalProperties: true
      type: object
      required:
        - type
        - id
        - name
        - args
        - error
      title: InvalidToolCall
      description: |-
        Allowance for errors made by LLM.

        Here we add an `error` key to surface errors made during generation
        (e.g., invalid JSON arguments.)
    UsageMetadata:
      properties:
        input_tokens:
          type: integer
          title: Input Tokens
        output_tokens:
          type: integer
          title: Output Tokens
        total_tokens:
          type: integer
          title: Total Tokens
        input_token_details:
          $ref: '#/components/schemas/InputTokenDetails'
        output_token_details:
          $ref: '#/components/schemas/OutputTokenDetails'
      additionalProperties: true
      type: object
      required:
        - input_tokens
        - output_tokens
        - total_tokens
      title: UsageMetadata
      description: >-
        Usage metadata for a message, such as token counts.


        This is a standard representation of token usage that is consistent
        across models.


        Example:
            ```python
            {
                "input_tokens": 350,
                "output_tokens": 240,
                "total_tokens": 590,
                "input_token_details": {
                    "audio": 10,
                    "cache_creation": 200,
                    "cache_read": 100,
                },
                "output_token_details": {
                    "audio": 10,
                    "reasoning": 200,
                },
            }
            ```

        !!! warning "Behavior changed in `langchain-core` 0.3.9"

            Added `input_token_details` and `output_token_details`.

        !!! note "LangSmith SDK"

            The LangSmith SDK also has a `UsageMetadata` class. While the two share fields,
            LangSmith's `UsageMetadata` has additional fields to capture cost information
            used by the LangSmith platform.
    ToolCallChunk:
      properties:
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        args:
          anyOf:
            - type: string
            - type: 'null'
          title: Args
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
        index:
          anyOf:
            - type: integer
            - type: 'null'
          title: Index
        type:
          type: string
          const: tool_call_chunk
          title: Type
      additionalProperties: true
      type: object
      required:
        - name
        - args
        - id
        - index
      title: ToolCallChunk
      description: >-
        A chunk of a tool call (yielded when streaming).


        When merging `ToolCallChunk` objects (e.g., via
        `AIMessageChunk.__add__`), all

        string attributes are concatenated. Chunks are only merged if their
        values of

        `index` are equal and not `None`.


        Example:

        ```python

        left_chunks = [ToolCallChunk(name="foo", args='{"a":', index=0)]

        right_chunks = [ToolCallChunk(name=None, args="1}", index=0)]


        (
            AIMessageChunk(content="", tool_call_chunks=left_chunks)
            + AIMessageChunk(content="", tool_call_chunks=right_chunks)
        ).tool_call_chunks == [ToolCallChunk(name="foo", args='{"a":1}',
        index=0)]

        ```
    InputTokenDetails:
      properties:
        audio:
          type: integer
          title: Audio
        cache_creation:
          type: integer
          title: Cache Creation
        cache_read:
          type: integer
          title: Cache Read
      additionalProperties: true
      type: object
      title: InputTokenDetails
      description: >-
        Breakdown of input token counts.


        Does *not* need to sum to full input token count. Does *not* need to
        have all keys.


        Example:
            ```python
            {
                "audio": 10,
                "cache_creation": 200,
                "cache_read": 100,
            }
            ```

        May also hold extra provider-specific keys.


        !!! version-added "Added in `langchain-core` 0.3.9"
    OutputTokenDetails:
      properties:
        audio:
          type: integer
          title: Audio
        reasoning:
          type: integer
          title: Reasoning
      additionalProperties: true
      type: object
      title: OutputTokenDetails
      description: >-
        Breakdown of output token counts.


        Does *not* need to sum to full output token count. Does *not* need to
        have all keys.


        Example:
            ```python
            {
                "audio": 10,
                "reasoning": 200,
            }
            ```

        May also hold extra provider-specific keys.


        !!! version-added "Added in `langchain-core` 0.3.9"
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: Bearer
      type: http
      description: >-
        Retrieve your API Key from [Dashboard API Keys
        Section](https://dashboard.interactly.ai/api-keys).

````