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

# Get canonical event

> Read a CloudEvent by exact source and event id.



## OpenAPI

````yaml /cloud/rest/openapi.json get /events/{event_id}
openapi: 3.1.0
info:
  title: Veryfront REST API reference
  version: 1.0.0
  description: >-
    ## Explore the API


    | Domain | Use it to |

    | --- | --- |

    | [Projects](#tag/projects) | Manage projects and files. |

    | [Agents](#tag/agents) | Manage agent primitives. |

    | [Orchestration](#tag/execution) | Manage conversations and runs. |

    | [Evaluations](#tag/evaluations) | Manage evaluations and results. |

    | [AI Gateway](#tag/ai-gateway) | Discover models, control access, run
    inference and measure model usage. |

    | [MCP](#tag/mcp) | Discover tools and authorization. |

    | [Integrations](#tag/integrations) | Manage connections and integrations. |

    | [Knowledge](#tag/knowledge) | Manage documents and search. |

    | [Deployments](#tag/deployments) | Manage releases and deployments. |

    | [Runtime](#tag/runtime) | Manage environments and infrastructure. |

    | [Observability](#tag/observability) | Monitor activity and performance. |

    | [Identity & Access](#tag/identity-access) | Manage identity and access. |

    | [Billing & Usage](#tag/billing-usage) | Manage billing and usage. |

    | [Other](#tag/platform) | Inspect health and API metadata. |


    [OpenAPI specification (JSON)](/openapi.json)
  contact:
    name: Veryfront API Support
    url: https://veryfront.com/docs
    email: support@veryfront.com
  x-api-id: 5f1f0b8a-6b0e-4c1a-9b35-0f3a1e6d84c7
  x-audience: external-public
servers:
  - url: https://api.veryfront.com
security:
  - bearerAuth: []
  - apiKeyAuth: []
tags:
  - name: projects
    description: Manage projects and files.
  - name: agents
    description: Manage agent primitives.
  - name: execution
    description: Manage conversations and runs.
  - name: evaluations
    description: Manage evaluations and results.
  - name: ai-gateway
    description: Discover models, control access, run inference and measure model usage.
  - name: mcp
    description: Discover tools and authorization.
  - name: integrations
    description: Manage connections and integrations.
  - name: knowledge
    description: Manage documents and search.
  - name: deployments
    description: Manage releases and deployments.
  - name: runtime
    description: Manage environments and infrastructure.
  - name: observability
    description: Monitor activity and performance.
  - name: identity-access
    description: Manage identity and access.
  - name: billing-usage
    description: Manage billing and usage.
  - name: platform
    description: Inspect health and API metadata.
  - name: projects/Projects
  - name: projects/Projects/Favorites
  - name: projects/Projects/Account Projects
  - name: projects/Projects/Projects
  - name: projects/Projects/Project Labels
  - name: projects/Projects/Project templates
  - name: projects/Files
  - name: projects/Files/Files
  - name: projects/Files/File Chunks
  - name: projects/Files/Branch File Versions
  - name: projects/Files/Branch Files
  - name: projects/Files/Environment Files
  - name: projects/Files/File Versions
  - name: projects/Files/Branch File Drafts
  - name: projects/Files/Release Files
  - name: projects/Files/Sandbox Files
  - name: projects/Files/File Search
  - name: projects/Branches
  - name: projects/Branches/Branches
  - name: projects/Branches/Branch Policies
  - name: projects/Branches/Branch Approvals
  - name: projects/Branches/Branch Status Checks
  - name: projects/Branches/Project Commits
  - name: projects/Branches/Branch Merges
  - name: projects/Uploads
  - name: projects/Uploads/Upload Folders
  - name: projects/Uploads/Upload Grants
  - name: projects/Uploads/Project Uploads
  - name: projects/Uploads/Upload Visibility
  - name: agents/Agents
  - name: agents/Agents/Agents
  - name: agents/Agents/Agent Labels
  - name: agents/Agents/Agent templates
  - name: agents/Agents/Agent Tool References
  - name: agents/Agents/Agent Avatars
  - name: agents/Agents/Agent Capabilities
  - name: agents/Agents/Agent Installation
  - name: agents/Prompts
  - name: agents/Prompts/Project prompts
  - name: agents/Tools
  - name: agents/Tools/Project tools
  - name: agents/Skills
  - name: agents/Skills/Project skills
  - name: agents/Resources
  - name: agents/Resources/Project resources
  - name: agents/Tasks
  - name: agents/Tasks/Tasks
  - name: agents/Workflows
  - name: agents/Workflows/Workflows
  - name: execution/Conversations
  - name: execution/Conversations/Conversations
  - name: execution/Conversations/Conversation messages
  - name: execution/Conversations/Conversation participants
  - name: execution/Conversations/Conversation read state
  - name: execution/Triggers
  - name: execution/Triggers/Project schedules
  - name: execution/Triggers/Webhooks
  - name: execution/Triggers/Webhook events
  - name: execution/Runs
  - name: execution/Runs/Run Input Requests
  - name: execution/Runs/Runs
  - name: execution/Runs/Runtime
  - name: execution/Runs/Child Runs
  - name: execution/Runs/Conversation Runs
  - name: execution/Runs/Project Runs
  - name: execution/Runs/Webhook Runs
  - name: execution/Runs/Run Events
  - name: execution/Runs/Run Actions
  - name: execution/Runs/Run Artifacts
  - name: execution/Executors
  - name: execution/Executors/Connected agents
  - name: execution/Executors/Agent workers
  - name: evaluations/Evaluations
  - name: evaluations/Evaluations/Evaluations
  - name: evaluations/Evaluations/Evaluation Runs
  - name: ai-gateway/Models
  - name: ai-gateway/Models/Model discovery
  - name: ai-gateway/Models/Inference Models
  - name: ai-gateway/Models/Project inference policy
  - name: ai-gateway/Models/Account inference policy
  - name: ai-gateway/Provider credentials
  - name: ai-gateway/Provider credentials/Account provider credentials
  - name: ai-gateway/Inference
  - name: ai-gateway/Inference/OpenAI Chat Completions
  - name: ai-gateway/Inference/Embeddings
  - name: ai-gateway/Inference/OpenAI Responses
  - name: ai-gateway/Inference/Proxy metadata
  - name: ai-gateway/Inference/Anthropic Messages
  - name: ai-gateway/Inference/Provider gateway
  - name: ai-gateway/Inference/Gemini inference
  - name: ai-gateway/Inference/Image generation
  - name: ai-gateway/Model usage
  - name: ai-gateway/Model usage/Model usage
  - name: mcp/Tools
  - name: mcp/Tools/MCP discovery
  - name: mcp/Authorization
  - name: mcp/Authorization/Protected resource discovery
  - name: integrations/Integrations
  - name: integrations/Integrations/Integration tools
  - name: integrations/Integrations/Integration catalog
  - name: integrations/Integrations/Project integrations
  - name: integrations/Connections
  - name: integrations/Connections/Connections
  - name: integrations/Channels
  - name: integrations/Channels/Channels
  - name: integrations/Channels/Setup lookups
  - name: integrations/External storage
  - name: integrations/External storage/External Files
  - name: knowledge/Documents
  - name: knowledge/Documents/Project knowledge
  - name: knowledge/Documents/Retrieval documents
  - name: knowledge/Documents/Knowledge assets
  - name: knowledge/Search
  - name: knowledge/Search/Search
  - name: knowledge/Embeddings
  - name: knowledge/Embeddings/Project embeddings
  - name: deployments/Releases
  - name: deployments/Releases/Releases
  - name: deployments/Releases/Release Source Manifests
  - name: deployments/Deployments
  - name: deployments/Deployments/Project deployments
  - name: deployments/Artifacts
  - name: deployments/Artifacts/Dependencies
  - name: deployments/Artifacts/Release Asset Manifests
  - name: deployments/Artifacts/Style artifacts
  - name: runtime/Environments
  - name: runtime/Environments/Environments
  - name: runtime/Environments/Environment Domains
  - name: runtime/Environments/Environment variables
  - name: runtime/Servers
  - name: runtime/Servers/Servers
  - name: runtime/Servers/Server Environments
  - name: runtime/Sandboxes
  - name: runtime/Sandboxes/Sandbox Lifecycle
  - name: runtime/Sandboxes/Sandbox Commands
  - name: runtime/Sandboxes/Sandbox Environment
  - name: runtime/Sandboxes/Sandbox Health
  - name: runtime/Sandboxes/Sandbox Terminal
  - name: runtime/Cache
  - name: runtime/Cache/Project Cache
  - name: observability/Logs
  - name: observability/Logs/Log entries
  - name: observability/Traces
  - name: observability/Traces/Trace spans
  - name: observability/Traces/Project traces
  - name: observability/Traces/Trace Search
  - name: observability/Metrics
  - name: observability/Metrics/Metric series
  - name: observability/Alerts
  - name: observability/Alerts/Project alerts
  - name: observability/Error types
  - name: observability/Error types/Error types
  - name: identity-access/Users
  - name: identity-access/Users/Account users
  - name: identity-access/Users/Project members
  - name: identity-access/Users/Current user
  - name: identity-access/Accounts
  - name: identity-access/Accounts/Accounts
  - name: identity-access/Invitations
  - name: identity-access/Invitations/Invitations
  - name: identity-access/API keys
  - name: identity-access/API keys/API keys
  - name: identity-access/Authentication
  - name: identity-access/Authentication/Sign-in
  - name: identity-access/Authentication/Tokens
  - name: identity-access/Authorization
  - name: identity-access/Authorization/Authorized apps
  - name: identity-access/Authorization/General OAuth
  - name: identity-access/Authorization/Consent
  - name: billing-usage/Subscriptions
  - name: billing-usage/Subscriptions/Subscription
  - name: billing-usage/Subscriptions/Seats
  - name: billing-usage/Billing
  - name: billing-usage/Billing/Billing details
  - name: billing-usage/Billing/Invoices and payments
  - name: billing-usage/Credits
  - name: billing-usage/Credits/Credits
  - name: billing-usage/Feature gates
  - name: billing-usage/Feature gates/Feature gates
  - name: billing-usage/Budgets
  - name: billing-usage/Budgets/Budgets
  - name: billing-usage/Usage
  - name: billing-usage/Usage/API key usage
  - name: billing-usage/Usage/Usage
  - name: billing-usage/Usage/Project usage
  - name: billing-usage/Analytics
  - name: billing-usage/Analytics/Conversation Analytics
  - name: billing-usage/Analytics/Run Analytics
  - name: platform/Other
  - name: platform/Other/API metadata
paths:
  /events/{event_id}:
    get:
      tags:
        - execution/Runs/Run Events
      summary: Get canonical event
      description: Read a CloudEvent by exact source and event id.
      operationId: getCanonicalEvent
      parameters:
        - schema:
            type: string
            minLength: 1
          required: true
          example: '1'
          name: event_id
          in: path
        - schema:
            type: string
            minLength: 1
          required: true
          description: >-
            Exact Agent Events Protocol source. Run sources use durable row ids.
            Model-call UUID ids read usage evidence; durable row ids read
            captured input for authorized human run editors.
          name: source
          in: query
        - schema:
            type: string
            minLength: 1
            description: >-
              Exact event id query selector. Requires the by-id path
              placeholder; supports dot-only ids without URL path normalization.
          required: false
          example: '1'
          name: id
          in: query
      responses:
        '200':
          description: Target event
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TargetRunEvent'
        '400':
          description: Bad request
          content:
            application/problem+json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/TargetRunProblem'
                  - properties:
                      status:
                        const: 400
        '401':
          description: Unauthorized
          content:
            application/problem+json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/TargetRunProblem'
                  - properties:
                      status:
                        const: 401
        '403':
          description: Forbidden
          content:
            application/problem+json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/TargetRunProblem'
                  - properties:
                      status:
                        const: 403
        '404':
          description: Not found
          content:
            application/problem+json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/TargetRunProblem'
                  - properties:
                      status:
                        const: 404
        '429':
          description: Rate limit exceeded
          headers:
            Retry-After:
              schema:
                type: integer
                format: int32
                minimum: 1
          content:
            application/problem+json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/TargetRunProblem'
                  - properties:
                      status:
                        const: 429
      security:
        - bearerAuth: []
        - apiKeyAuth: []
        - runExecutionAuth: []
components:
  schemas:
    TargetRunEvent:
      type: object
      description: >-
        A CloudEvent with an Agent Events Protocol payload. Full schemas are
        included in x-agent-event-envelope-schema and
        x-agent-event-payload-schemas.
      additionalProperties: true
      x-agent-event-envelope-schema:
        $schema: https://json-schema.org/draft/2020-12/schema
        title: Agent Events Protocol target CloudEvent
        type: object
        properties:
          specversion:
            const: '1.0'
          id:
            type: string
            minLength: 1
            format: ce-string
          source:
            type: string
            minLength: 1
            format: uri-reference
          type:
            enum:
              - com.veryfront.run.requested
              - com.veryfront.run.enqueued
              - com.veryfront.run.started
              - com.veryfront.run.succeeded
              - com.veryfront.run.failed
              - com.veryfront.run.cancelled
              - com.veryfront.run.log.captured
              - com.veryfront.child-run.reported
              - com.veryfront.step.started
              - com.veryfront.step.succeeded
              - com.veryfront.step.failed
              - com.veryfront.step.cancelled
              - com.veryfront.step.ended
              - com.veryfront.tool-call.started
              - com.veryfront.tool-call.arguments.delta.emitted
              - com.veryfront.tool-call.arguments.ended
              - com.veryfront.tool-call.refused
              - com.veryfront.tool-call.status.reported
              - com.veryfront.tool-call.result.recorded
              - com.veryfront.tool-call.result.submitted
              - com.veryfront.tool-call.result.delivery.failed
              - com.veryfront.model-call.input.captured
              - com.veryfront.model-call.usage.recorded
              - com.veryfront.input-request.created
              - com.veryfront.input-request.updated
              - com.veryfront.message.text.started
              - com.veryfront.message.text.delta.emitted
              - com.veryfront.message.text.ended
              - com.veryfront.message.reasoning.started
              - com.veryfront.message.reasoning.delta.emitted
              - com.veryfront.message.reasoning.ended
              - com.veryfront.message.url.referenced
              - com.veryfront.message.document.referenced
              - com.veryfront.message.file.attached
              - com.veryfront.stream.heartbeat.emitted
              - com.veryfront.stream.closed
          datacontenttype:
            const: application/json
          dataschema:
            type: string
            minLength: 1
            format: uri
          data:
            type: object
          subject:
            type: string
            minLength: 1
            format: ce-string
          time:
            type: string
            format: date-time
          recordedat:
            type: string
            format: date-time
          runid:
            type: string
            minLength: 1
            format: ce-string
          runkind:
            enum:
              - agent
              - workflow
              - task
          conversationid:
            type: string
            minLength: 1
            format: ce-string
          modelcallid:
            type: string
            minLength: 1
            format: ce-string
          attemptid:
            type: string
            minLength: 1
            format: ce-string
          traceparent:
            type: string
            pattern: ^00-(?!0{32}-)[0-9a-f]{32}-(?!0{16}-)[0-9a-f]{16}-[0-9a-f]{2}$
          tracestate:
            type: string
            minLength: 1
            maxLength: 512
            format: w3c-tracestate
        required:
          - specversion
          - id
          - source
          - type
          - datacontenttype
          - dataschema
          - data
        propertyNames:
          pattern: ^[a-z0-9]+$
        additionalProperties:
          anyOf:
            - type: string
              format: ce-string
            - type: boolean
            - type: integer
              minimum: -2147483648
              maximum: 2147483647
        dependentRequired:
          runkind:
            - runid
          attemptid:
            - modelcallid
          tracestate:
            - traceparent
        allOf:
          - if:
              properties:
                type:
                  const: com.veryfront.run.requested
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/RunRequested
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/RunRequested
              required:
                - runid
          - if:
              properties:
                type:
                  const: com.veryfront.run.enqueued
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/RunEnqueued
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/RunEnqueued
              required:
                - runid
          - if:
              properties:
                type:
                  const: com.veryfront.run.started
              required:
                - type
            then:
              properties:
                dataschema:
                  const: urn:veryfront:run-events:target:payloads:1#/$defs/RunStarted
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/RunStarted
              required:
                - runid
          - if:
              properties:
                type:
                  const: com.veryfront.run.succeeded
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/RunSucceeded
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/RunSucceeded
              required:
                - runid
          - if:
              properties:
                type:
                  const: com.veryfront.run.failed
              required:
                - type
            then:
              properties:
                dataschema:
                  const: urn:veryfront:run-events:target:payloads:1#/$defs/RunFailed
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/RunFailed
              required:
                - runid
          - if:
              properties:
                type:
                  const: com.veryfront.run.cancelled
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/RunCancelled
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/RunCancelled
              required:
                - runid
          - if:
              properties:
                type:
                  const: com.veryfront.run.log.captured
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/RunLogCaptured
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/RunLogCaptured
              required:
                - runid
          - if:
              properties:
                type:
                  const: com.veryfront.child-run.reported
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/ChildRunReported
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ChildRunReported
              required:
                - runid
          - if:
              properties:
                type:
                  const: com.veryfront.step.started
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/StepStarted
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/StepStarted
              required:
                - runid
          - if:
              properties:
                type:
                  const: com.veryfront.step.succeeded
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/StepSucceeded
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/StepSucceeded
              required:
                - runid
          - if:
              properties:
                type:
                  const: com.veryfront.step.failed
              required:
                - type
            then:
              properties:
                dataschema:
                  const: urn:veryfront:run-events:target:payloads:1#/$defs/StepFailed
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/StepFailed
              required:
                - runid
          - if:
              properties:
                type:
                  const: com.veryfront.step.cancelled
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/StepCancelled
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/StepCancelled
              required:
                - runid
          - if:
              properties:
                type:
                  const: com.veryfront.step.ended
              required:
                - type
            then:
              properties:
                dataschema:
                  const: urn:veryfront:run-events:target:payloads:1#/$defs/StepEnded
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/StepEnded
              required:
                - runid
          - if:
              properties:
                type:
                  const: com.veryfront.tool-call.started
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallStarted
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ToolCallStarted
          - if:
              properties:
                type:
                  const: com.veryfront.tool-call.arguments.delta.emitted
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallArgumentsDeltaEmitted
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ToolCallArgumentsDeltaEmitted
          - if:
              properties:
                type:
                  const: com.veryfront.tool-call.arguments.ended
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallArgumentsEnded
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ToolCallArgumentsEnded
          - if:
              properties:
                type:
                  const: com.veryfront.tool-call.refused
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallRefused
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ToolCallRefused
          - if:
              properties:
                type:
                  const: com.veryfront.tool-call.status.reported
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallStatusReported
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ToolCallStatusReported
          - if:
              properties:
                type:
                  const: com.veryfront.tool-call.result.recorded
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallResultRecorded
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ToolCallResultRecorded
          - if:
              properties:
                type:
                  const: com.veryfront.tool-call.result.submitted
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallResultSubmitted
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ToolCallResultSubmitted
          - if:
              properties:
                type:
                  const: com.veryfront.tool-call.result.delivery.failed
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallResultDeliveryFailed
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ToolCallResultDeliveryFailed
          - if:
              properties:
                type:
                  const: com.veryfront.model-call.input.captured
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/ModelCallInputCaptured
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ModelCallInputCaptured
              required:
                - modelcallid
          - if:
              properties:
                type:
                  const: com.veryfront.model-call.usage.recorded
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/ModelCallUsageRecorded
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ModelCallUsageRecorded
              required:
                - modelcallid
          - if:
              properties:
                type:
                  const: com.veryfront.input-request.created
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/InputRequestCreated
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/InputRequestCreated
          - if:
              properties:
                type:
                  const: com.veryfront.input-request.updated
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/InputRequestUpdated
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/InputRequestUpdated
          - if:
              properties:
                type:
                  const: com.veryfront.message.text.started
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/MessageTextStarted
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/MessageTextStarted
          - if:
              properties:
                type:
                  const: com.veryfront.message.text.delta.emitted
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/MessageTextDeltaEmitted
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/MessageTextDeltaEmitted
          - if:
              properties:
                type:
                  const: com.veryfront.message.text.ended
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/MessageTextEnded
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/MessageTextEnded
          - if:
              properties:
                type:
                  const: com.veryfront.message.reasoning.started
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/MessageReasoningStarted
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/MessageReasoningStarted
          - if:
              properties:
                type:
                  const: com.veryfront.message.reasoning.delta.emitted
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/MessageReasoningDeltaEmitted
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/MessageReasoningDeltaEmitted
          - if:
              properties:
                type:
                  const: com.veryfront.message.reasoning.ended
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/MessageReasoningEnded
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/MessageReasoningEnded
          - if:
              properties:
                type:
                  const: com.veryfront.message.url.referenced
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/MessageUrlReferenced
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/MessageUrlReferenced
          - if:
              properties:
                type:
                  const: com.veryfront.message.document.referenced
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/MessageDocumentReferenced
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/MessageDocumentReferenced
          - if:
              properties:
                type:
                  const: com.veryfront.message.file.attached
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/MessageFileAttached
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/MessageFileAttached
          - if:
              properties:
                type:
                  const: com.veryfront.stream.heartbeat.emitted
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/StreamHeartbeatEmitted
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/StreamHeartbeatEmitted
          - if:
              properties:
                type:
                  const: com.veryfront.stream.closed
              required:
                - type
            then:
              properties:
                dataschema:
                  const: >-
                    urn:veryfront:run-events:target:payloads:1#/$defs/StreamClosed
                data:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/StreamClosed
          - if:
              properties:
                type:
                  const: com.veryfront.model-call.usage.recorded
                data:
                  properties:
                    scope:
                      const: attempt
                  required:
                    - scope
              required:
                - type
                - data
            then:
              required:
                - attemptid
          - if:
              properties:
                type:
                  const: com.veryfront.model-call.usage.recorded
                data:
                  properties:
                    scope:
                      const: call
                  required:
                    - scope
              required:
                - type
                - data
            then:
              not:
                required:
                  - attemptid
          - if:
              properties:
                type:
                  enum:
                    - com.veryfront.stream.heartbeat.emitted
                    - com.veryfront.stream.closed
              required:
                - type
            then:
              not:
                required:
                  - recordedat
          - not:
              required:
                - vfversion
          - not:
              required:
                - extensions
          - not:
              required:
                - data_base64
          - not:
              required:
                - metadata
          - not:
              required:
                - event_id
          - not:
              required:
                - event_type
          - not:
              required:
                - payload
          - not:
              required:
                - kind
          - not:
              required:
                - legacy
          - not:
              required:
                - modelcontextid
        x-source-schema-id: urn:veryfront:run-events:target:envelope:1
      x-agent-event-schema-by-type:
        com.veryfront.run.requested: urn:veryfront:run-events:target:payloads:1#/$defs/RunRequested
        com.veryfront.run.enqueued: urn:veryfront:run-events:target:payloads:1#/$defs/RunEnqueued
        com.veryfront.run.started: urn:veryfront:run-events:target:payloads:1#/$defs/RunStarted
        com.veryfront.run.succeeded: urn:veryfront:run-events:target:payloads:1#/$defs/RunSucceeded
        com.veryfront.run.failed: urn:veryfront:run-events:target:payloads:1#/$defs/RunFailed
        com.veryfront.run.cancelled: urn:veryfront:run-events:target:payloads:1#/$defs/RunCancelled
        com.veryfront.run.log.captured: urn:veryfront:run-events:target:payloads:1#/$defs/RunLogCaptured
        com.veryfront.child-run.reported: urn:veryfront:run-events:target:payloads:1#/$defs/ChildRunReported
        com.veryfront.step.started: urn:veryfront:run-events:target:payloads:1#/$defs/StepStarted
        com.veryfront.step.succeeded: urn:veryfront:run-events:target:payloads:1#/$defs/StepSucceeded
        com.veryfront.step.failed: urn:veryfront:run-events:target:payloads:1#/$defs/StepFailed
        com.veryfront.step.cancelled: urn:veryfront:run-events:target:payloads:1#/$defs/StepCancelled
        com.veryfront.step.ended: urn:veryfront:run-events:target:payloads:1#/$defs/StepEnded
        com.veryfront.tool-call.started: urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallStarted
        com.veryfront.tool-call.arguments.delta.emitted: >-
          urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallArgumentsDeltaEmitted
        com.veryfront.tool-call.arguments.ended: >-
          urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallArgumentsEnded
        com.veryfront.tool-call.refused: urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallRefused
        com.veryfront.tool-call.status.reported: >-
          urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallStatusReported
        com.veryfront.tool-call.result.recorded: >-
          urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallResultRecorded
        com.veryfront.tool-call.result.submitted: >-
          urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallResultSubmitted
        com.veryfront.tool-call.result.delivery.failed: >-
          urn:veryfront:run-events:target:payloads:1#/$defs/ToolCallResultDeliveryFailed
        com.veryfront.model-call.input.captured: >-
          urn:veryfront:run-events:target:payloads:1#/$defs/ModelCallInputCaptured
        com.veryfront.model-call.usage.recorded: >-
          urn:veryfront:run-events:target:payloads:1#/$defs/ModelCallUsageRecorded
        com.veryfront.input-request.created: urn:veryfront:run-events:target:payloads:1#/$defs/InputRequestCreated
        com.veryfront.input-request.updated: urn:veryfront:run-events:target:payloads:1#/$defs/InputRequestUpdated
        com.veryfront.message.text.started: urn:veryfront:run-events:target:payloads:1#/$defs/MessageTextStarted
        com.veryfront.message.text.delta.emitted: >-
          urn:veryfront:run-events:target:payloads:1#/$defs/MessageTextDeltaEmitted
        com.veryfront.message.text.ended: urn:veryfront:run-events:target:payloads:1#/$defs/MessageTextEnded
        com.veryfront.message.reasoning.started: >-
          urn:veryfront:run-events:target:payloads:1#/$defs/MessageReasoningStarted
        com.veryfront.message.reasoning.delta.emitted: >-
          urn:veryfront:run-events:target:payloads:1#/$defs/MessageReasoningDeltaEmitted
        com.veryfront.message.reasoning.ended: >-
          urn:veryfront:run-events:target:payloads:1#/$defs/MessageReasoningEnded
        com.veryfront.message.url.referenced: urn:veryfront:run-events:target:payloads:1#/$defs/MessageUrlReferenced
        com.veryfront.message.document.referenced: >-
          urn:veryfront:run-events:target:payloads:1#/$defs/MessageDocumentReferenced
        com.veryfront.message.file.attached: urn:veryfront:run-events:target:payloads:1#/$defs/MessageFileAttached
        com.veryfront.stream.heartbeat.emitted: >-
          urn:veryfront:run-events:target:payloads:1#/$defs/StreamHeartbeatEmitted
        com.veryfront.stream.closed: urn:veryfront:run-events:target:payloads:1#/$defs/StreamClosed
      x-agent-event-payload-schemas:
        $schema: https://json-schema.org/draft/2020-12/schema
        title: Agent Events Protocol target payloads
        description: >-
          Working draft portable payload contracts. com.veryfront is a publisher
          namespace. Select exactly one root definition using envelope.type;
          data has no duplicate type. Existing source schemas remain migration
          evidence, not this target.
        x-profile: portable-public-core
        x-event-count: 36
        x-payload-selection: >-
          Envelope type selects the x-event-type definition. The bundle itself
          is not a payload union.
        x-excluded-private-events:
          - com.veryfront.run.authorization.sealed
          - com.veryfront.run.billing.mode.retained
          - com.veryfront.run.billing.usage.retained
          - com.veryfront.run.context.compacted
          - com.veryfront.run.dispatch.accepted
          - com.veryfront.run.dispatch.requested
          - com.veryfront.run.input.uploads.sealed
          - com.veryfront.run.provider.replay.boundary.recorded
          - com.veryfront.run.provider.replay.boundary.required
          - com.veryfront.run.provider.replay.checkpointed
          - com.veryfront.run.runtime.owner.changed
          - com.veryfront.run.runtime.retry.recorded
          - com.veryfront.run.tool.exposure.checkpointed
        x-excluded-synchronization-events:
          - com.veryfront.messages.snapshot.emitted
          - com.veryfront.shared-state.delta.emitted
          - com.veryfront.shared-state.snapshot.emitted
        $defs:
          JsonValue:
            anyOf:
              - type: 'null'
              - type: boolean
              - type: number
              - type: string
              - type: array
                items:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonValue
              - $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonObject
          JsonObject:
            type: object
            additionalProperties:
              $ref: >-
                #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonValue
          Extensions:
            type: object
            propertyNames:
              type: string
              minLength: 1
              format: uri
            additionalProperties:
              $ref: >-
                #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonObject
            description: >-
              Optional producer-owned absolute URI namespaces, such as
              https://example.test/extensions or urn:org.example:telemetry. Each
              value is a JSON object; core fields remain closed. Publishing
              extensions still requires authorization.
          ErrorInfo:
            type: object
            properties:
              code:
                type: string
                minLength: 1
              message:
                type: string
            required: []
            additionalProperties: false
            minProperties: 1
          ModelDescriptor:
            type: object
            properties:
              provider:
                type: string
                minLength: 1
              name:
                type: string
                minLength: 1
            required:
              - provider
              - name
            additionalProperties: false
          ModelInput:
            oneOf:
              - type: object
                properties:
                  messages:
                    type: array
                    items:
                      $ref: >-
                        #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonValue
                  tools:
                    type: array
                    items:
                      $ref: >-
                        #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonValue
                  parameters:
                    $ref: >-
                      #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonObject
                required:
                  - messages
                additionalProperties: false
              - type: object
                properties:
                  redacted:
                    const: true
                required:
                  - redacted
                additionalProperties: false
            description: >-
              Full captured model input or an explicit authorized redaction.
              Redaction is not missing-input recovery.
          TokenUsage:
            type: object
            properties:
              input:
                type: integer
                minimum: 0
              output:
                type: integer
                minimum: 0
              total:
                type: integer
                minimum: 0
              cacheRead:
                type: integer
                minimum: 0
              cacheWrite:
                type: integer
                minimum: 0
              reasoning:
                type: integer
                minimum: 0
            required:
              - input
              - output
            additionalProperties: false
            description: >-
              Input/output token counts are the base counters. cacheRead and
              cacheWrite are subsets of input; reasoning is a subset of output.
              These counters are not additive charges and must not be added to
              input/output or total. Optional total is actually reported, not
              synthesized. Cross-field subset bounds are semantic conformance
              checks.
            x-semantic-constraints:
              - cacheRead <= input when present
              - cacheWrite <= input when present
              - reasoning <= output when present
          InputField:
            type: object
            properties:
              name:
                type: string
                minLength: 1
              type:
                type: string
                minLength: 1
              label:
                type: string
                minLength: 1
              required:
                type: boolean
              options:
                type: array
                items:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonValue
            required:
              - name
              - type
            additionalProperties: false
          InputRequestSnapshot:
            type: object
            properties:
              id:
                type: string
                minLength: 1
              status:
                enum:
                  - open
                  - submitted
                  - cancelled
                  - expired
              title:
                type: string
                minLength: 1
              description:
                type: string
              fields:
                type: array
                items:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/InputField
                minItems: 1
              schema:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonObject
              response:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonValue
              expiresAt:
                type: string
                format: date-time
              toolCallId:
                type: string
                minLength: 1
                description: >-
                  Exact logical tool-call occurrence that created the request,
                  when known. Immutable; provider-local IDs do not establish
                  this relation.
            required:
              - id
              - status
            additionalProperties: false
          InputRequestReference:
            type: object
            properties:
              id:
                type: string
                minLength: 1
              uri:
                type: string
                format: uri
              toolCallId:
                type: string
                minLength: 1
                description: >-
                  Exact logical tool-call occurrence that created the request,
                  when known. Immutable; provider-local IDs do not establish
                  this relation.
            required:
              - id
              - uri
            additionalProperties: false
          InputRequestChanges:
            type: object
            properties:
              status:
                enum:
                  - open
                  - submitted
                  - cancelled
                  - expired
              title:
                type: string
                minLength: 1
              description:
                type:
                  - string
                  - 'null'
              fields:
                type: array
                items:
                  $ref: >-
                    #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/InputField
                minItems: 1
              schema:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonObject
              response:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonValue
              expiresAt:
                type:
                  - string
                  - 'null'
                format: date-time
            required: []
            additionalProperties: false
            minProperties: 1
          ChildRun:
            type: object
            properties:
              id:
                type: string
                minLength: 1
              status:
                enum:
                  - queued
                  - running
                  - waiting
                  - succeeded
                  - failed
                  - cancelled
                  - unknown
              kind:
                type: string
                minLength: 1
              conversationId:
                type: string
                minLength: 1
            required:
              - id
              - status
            additionalProperties: false
          RunRequested:
            type: object
            properties:
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required: []
            additionalProperties: false
            title: com.veryfront.run.requested
            x-event-type: com.veryfront.run.requested
            x-envelope-required:
              - runid
            x-semantics: >-
              Owning run lifecycle fact. The envelope runid is authoritative. No
              execution snapshot or internal runtime protocol is required.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          RunEnqueued:
            type: object
            properties:
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required: []
            additionalProperties: false
            title: com.veryfront.run.enqueued
            x-event-type: com.veryfront.run.enqueued
            x-envelope-required:
              - runid
            x-semantics: >-
              Owning run lifecycle fact. The envelope runid is authoritative. No
              execution snapshot or internal runtime protocol is required.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          RunStarted:
            type: object
            properties:
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required: []
            additionalProperties: false
            title: com.veryfront.run.started
            x-event-type: com.veryfront.run.started
            x-envelope-required:
              - runid
            x-semantics: >-
              Owning run lifecycle fact. The envelope runid is authoritative. No
              execution snapshot or internal runtime protocol is required.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          RunSucceeded:
            type: object
            properties:
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required: []
            additionalProperties: false
            title: com.veryfront.run.succeeded
            x-event-type: com.veryfront.run.succeeded
            x-envelope-required:
              - runid
            x-semantics: >-
              Owning run lifecycle fact. The envelope runid is authoritative. No
              execution snapshot or internal runtime protocol is required.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          RunFailed:
            type: object
            properties:
              error:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ErrorInfo
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required: []
            additionalProperties: false
            title: com.veryfront.run.failed
            x-event-type: com.veryfront.run.failed
            x-envelope-required:
              - runid
            x-semantics: >-
              Owning failed run transition; optional error details do not
              classify an unrelated transport or delivery error.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          RunCancelled:
            type: object
            properties:
              reason:
                type: string
                minLength: 1
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required: []
            additionalProperties: false
            title: com.veryfront.run.cancelled
            x-event-type: com.veryfront.run.cancelled
            x-envelope-required:
              - runid
            x-semantics: >-
              Owning cancelled run transition. A cancellation reason is optional
              and is not synthesized from every run error.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          RunLogCaptured:
            type: object
            properties:
              text:
                type: string
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - text
            additionalProperties: false
            title: com.veryfront.run.log.captured
            x-event-type: com.veryfront.run.log.captured
            x-envelope-required:
              - runid
            x-semantics: >-
              Captured log string. No line splitting, severity or timestamp is
              invented.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          ChildRunReported:
            type: object
            properties:
              childRun:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ChildRun
              toolCallId:
                type: string
                minLength: 1
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - childRun
            additionalProperties: false
            title: com.veryfront.child-run.reported
            x-event-type: com.veryfront.child-run.reported
            x-envelope-required:
              - runid
            x-semantics: >-
              Reports a real association to the recipient run named by envelope
              runid. It does not create a run or synthesize creator/parent
              ancestry. unknown must be explicitly reported;
              missing/unrecognized status is not defaulted.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          StepStarted:
            type: object
            properties:
              stepId:
                type: string
                minLength: 1
              name:
                type: string
                minLength: 1
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - stepId
            additionalProperties: false
            title: com.veryfront.step.started
            x-event-type: com.veryfront.step.started
            x-envelope-required:
              - runid
            x-semantics: >-
              Exact producer-owned step occurrence scoped to the envelope runid.
              Outcome belongs to the owning step transition; ended does not
              assert a classified outcome.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          StepSucceeded:
            type: object
            properties:
              stepId:
                type: string
                minLength: 1
              name:
                type: string
                minLength: 1
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - stepId
            additionalProperties: false
            title: com.veryfront.step.succeeded
            x-event-type: com.veryfront.step.succeeded
            x-envelope-required:
              - runid
            x-semantics: >-
              Exact producer-owned step occurrence scoped to the envelope runid.
              Outcome belongs to the owning step transition; ended does not
              assert a classified outcome.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          StepFailed:
            type: object
            properties:
              stepId:
                type: string
                minLength: 1
              name:
                type: string
                minLength: 1
              error:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ErrorInfo
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - stepId
            additionalProperties: false
            title: com.veryfront.step.failed
            x-event-type: com.veryfront.step.failed
            x-envelope-required:
              - runid
            x-semantics: >-
              Exact producer-owned step occurrence scoped to the envelope runid.
              Outcome belongs to the owning step transition; ended does not
              assert a classified outcome.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          StepCancelled:
            type: object
            properties:
              stepId:
                type: string
                minLength: 1
              name:
                type: string
                minLength: 1
              reason:
                type: string
                minLength: 1
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - stepId
            additionalProperties: false
            title: com.veryfront.step.cancelled
            x-event-type: com.veryfront.step.cancelled
            x-envelope-required:
              - runid
            x-semantics: >-
              Exact producer-owned step occurrence scoped to the envelope runid.
              Outcome belongs to the owning step transition; ended does not
              assert a classified outcome.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          StepEnded:
            type: object
            properties:
              stepId:
                type: string
                minLength: 1
              name:
                type: string
                minLength: 1
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - stepId
            additionalProperties: false
            title: com.veryfront.step.ended
            x-event-type: com.veryfront.step.ended
            x-envelope-required:
              - runid
            x-semantics: >-
              Exact producer-owned step occurrence scoped to the envelope runid.
              Outcome belongs to the owning step transition; ended does not
              assert a classified outcome.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          ToolCallStarted:
            type: object
            properties:
              toolCallId:
                type: string
                minLength: 1
              messageId:
                type: string
                minLength: 1
              input:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonValue
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
              toolName:
                type: string
                minLength: 1
            required:
              - toolCallId
              - toolName
            additionalProperties: false
            title: com.veryfront.tool-call.started
            x-event-type: com.veryfront.tool-call.started
            x-envelope-required: []
            x-semantics: >-
              Introduces an exact public tool-call occurrence. Introduction and
              input assembly do not prove tool execution.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          ToolCallArgumentsDeltaEmitted:
            type: object
            properties:
              toolCallId:
                type: string
                minLength: 1
              delta:
                type: string
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - toolCallId
              - delta
            additionalProperties: false
            title: com.veryfront.tool-call.arguments.delta.emitted
            x-event-type: com.veryfront.tool-call.arguments.delta.emitted
            x-envelope-required: []
            x-semantics: >-
              Argument string fragment for the same public toolCallId. It is not
              a tool output or execution outcome.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          ToolCallArgumentsEnded:
            type: object
            properties:
              toolCallId:
                type: string
                minLength: 1
              input:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonValue
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - toolCallId
            additionalProperties: false
            title: com.veryfront.tool-call.arguments.ended
            x-event-type: com.veryfront.tool-call.arguments.ended
            x-envelope-required: []
            x-semantics: >-
              Argument assembly ended. Optional input is included only when the
              completed value is known; no execution completion is inferred.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          ToolCallRefused:
            type: object
            properties:
              toolCallId:
                type: string
                minLength: 1
              reason:
                anyOf:
                  - enum:
                      - missing_integration_connection
                      - permission_denied
                      - budget_exhausted
                      - invalid_input
                  - type: string
                    minLength: 1
                    format: uri
                description: >-
                  Reported classified refusal code. Common codes or an absolute
                  URI identifying a producer-defined code; arbitrary error text
                  is not a code.
              integration:
                type: string
                minLength: 1
              message:
                type: string
                minLength: 1
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
              toolName:
                type: string
                minLength: 1
            required:
              - toolCallId
              - reason
            additionalProperties: false
            title: com.veryfront.tool-call.refused
            x-event-type: com.veryfront.tool-call.refused
            x-envelope-required: []
            x-semantics: >-
              Owning executor refused this exact call for the reported
              classified reason. It does not prove a provider attempt, a generic
              call end or run failure.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          ToolCallStatusReported:
            type: object
            properties:
              toolCallId:
                type: string
                minLength: 1
              status:
                enum:
                  - introduced
                  - argumentsReady
                  - queued
                  - running
                  - waiting
                  - succeeded
                  - failed
                  - cancelled
                  - refused
                  - unknown
              message:
                type: string
                minLength: 1
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - toolCallId
              - status
            additionalProperties: false
            title: com.veryfront.tool-call.status.reported
            x-event-type: com.veryfront.tool-call.status.reported
            x-envelope-required: []
            x-semantics: >-
              Explicit reported status for the exact call. Terminal execution
              statuses require owning execution evidence; unknown is never a
              default for missing/unrecognized source text.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          ToolCallResultRecorded:
            type: object
            properties:
              toolCallId:
                type: string
                minLength: 1
              output:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonValue
              outputRedacted:
                const: true
              isError:
                type: boolean
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - toolCallId
            additionalProperties: false
            title: com.veryfront.tool-call.result.recorded
            x-event-type: com.veryfront.tool-call.result.recorded
            x-envelope-required: []
            x-semantics: >-
              Exact call result recorded. Result recording/submission is not
              proof of execution success or receiver delivery. isError is
              included only when explicitly reported; unknown is omitted.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
            oneOf:
              - required:
                  - output
                not:
                  required:
                    - outputRedacted
              - required:
                  - outputRedacted
                not:
                  required:
                    - output
          ToolCallResultSubmitted:
            type: object
            properties:
              toolCallId:
                type: string
                minLength: 1
              output:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/JsonValue
              outputRedacted:
                const: true
              isError:
                type: boolean
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - toolCallId
            additionalProperties: false
            title: com.veryfront.tool-call.result.submitted
            x-event-type: com.veryfront.tool-call.result.submitted
            x-envelope-required: []
            x-semantics: >-
              Exact call result submitted. Result recording/submission is not
              proof of execution success or receiver delivery. isError is
              included only when explicitly reported; unknown is omitted.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
            oneOf:
              - required:
                  - output
                not:
                  required:
                    - outputRedacted
              - required:
                  - outputRedacted
                not:
                  required:
                    - output
          ToolCallResultDeliveryFailed:
            type: object
            properties:
              toolCallId:
                type: string
                minLength: 1
              error:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ErrorInfo
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - toolCallId
            additionalProperties: false
            title: com.veryfront.tool-call.result.delivery.failed
            x-event-type: com.veryfront.tool-call.result.delivery.failed
            x-envelope-required: []
            x-semantics: >-
              The result delivery failed for this exact call; transport/receiver
              delivery failure does not establish tool execution failure or run
              failure.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          ModelCallInputCaptured:
            type: object
            properties:
              model:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ModelDescriptor
              input:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ModelInput
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - model
              - input
            additionalProperties: false
            title: com.veryfront.model-call.input.captured
            x-event-type: com.veryfront.model-call.input.captured
            x-envelope-required:
              - modelcallid
            x-semantics: >-
              Captured model input linked by envelope modelcallid; attemptid is
              included only if the exact provider attempt is known.
              Provider-native input JSON is intentional data, not an AG-UI or
              Veryfront wrapper.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          ModelCallUsageRecorded:
            type: object
            properties:
              model:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/ModelDescriptor
              tokens:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/TokenUsage
              durationMs:
                type: number
                minimum: 0
                description: >-
                  Measured wall time for the stated scope: attempt dispatch to
                  final response/error, or first call dispatch to final
                  completion including retries and waits. Excludes preparation;
                  omit when boundaries were not measured.
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
              scope:
                enum:
                  - attempt
                  - call
                description: >-
                  Accounting scope. attempt requires exact envelope attemptid;
                  call is an actual call aggregate and omits attemptid. Missing
                  identity never selects a scope.
            required:
              - model
              - tokens
              - scope
            additionalProperties: false
            title: com.veryfront.model-call.usage.recorded
            x-event-type: com.veryfront.model-call.usage.recorded
            x-envelope-required:
              - modelcallid
            x-semantics: >-
              Reported token usage for an actual known attempt or call
              accounting bucket, selected by scope and linked by envelope
              modelcallid. Attempt scope additionally requires exact attemptid.
              Call aggregates and their constituent attempts are alternative
              accounting views and must not be added together. Unknown bucket or
              required counters prevents canonical publication; no provider
              attempt, call aggregate, total or billing value is invented.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
            x-attempt-scope-envelope-required:
              - attemptid
          InputRequestCreated:
            type: object
            properties:
              inputRequest:
                oneOf:
                  - $ref: >-
                      #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/InputRequestSnapshot
                  - $ref: >-
                      #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/InputRequestReference
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - inputRequest
            additionalProperties: false
            title: com.veryfront.input-request.created
            x-event-type: com.veryfront.input-request.created
            x-envelope-required: []
            x-semantics: >-
              Typed authorized snapshot or resolvable reference. Created
              snapshots show open initial state. Updated snapshots show
              authoritative after-state; updated references require a nonempty
              typed change set. Optional details may be absent/redacted, but ID
              and typed state/reference remain meaningful.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
            allOf:
              - if:
                  properties:
                    inputRequest:
                      required:
                        - status
                  required:
                    - inputRequest
                then:
                  properties:
                    inputRequest:
                      properties:
                        status:
                          const: open
          InputRequestUpdated:
            type: object
            properties:
              inputRequest:
                oneOf:
                  - $ref: >-
                      #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/InputRequestSnapshot
                  - $ref: >-
                      #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/InputRequestReference
              changes:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/InputRequestChanges
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - inputRequest
            additionalProperties: false
            title: com.veryfront.input-request.updated
            x-event-type: com.veryfront.input-request.updated
            x-envelope-required: []
            x-semantics: >-
              Typed authorized snapshot or resolvable reference. Updated
              snapshots are the whole authoritative after-state and prohibit
              changes. Updated references require a nonempty typed change set.
              Optional details may be absent/redacted, but ID and typed
              state/reference remain meaningful.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
            allOf:
              - if:
                  properties:
                    inputRequest:
                      required:
                        - uri
                  required:
                    - inputRequest
                then:
                  required:
                    - changes
                else:
                  not:
                    required:
                      - changes
          MessageTextStarted:
            type: object
            properties:
              messageId:
                type: string
                minLength: 1
              contentId:
                type: string
                minLength: 1
              role:
                enum:
                  - assistant
                  - user
                  - system
                  - developer
                  - tool
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - messageId
              - contentId
            additionalProperties: false
            title: com.veryfront.message.text.started
            x-event-type: com.veryfront.message.text.started
            x-envelope-required: []
            x-semantics: >-
              Exact message/content segment identity. Reasoning content is only
              explicitly publishable text; provider-native signed/redacted
              replay material is not rendered or reclassified. Redacted deltas
              retain identity without inventing text.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          MessageTextDeltaEmitted:
            type: object
            properties:
              messageId:
                type: string
                minLength: 1
              contentId:
                type: string
                minLength: 1
              delta:
                type: string
              contentRedacted:
                const: true
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - messageId
              - contentId
            additionalProperties: false
            title: com.veryfront.message.text.delta.emitted
            x-event-type: com.veryfront.message.text.delta.emitted
            x-envelope-required: []
            x-semantics: >-
              Exact message/content segment identity. Reasoning content is only
              explicitly publishable text; provider-native signed/redacted
              replay material is not rendered or reclassified. Redacted deltas
              retain identity without inventing text.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
            oneOf:
              - required:
                  - delta
                not:
                  required:
                    - contentRedacted
              - required:
                  - contentRedacted
                not:
                  required:
                    - delta
          MessageTextEnded:
            type: object
            properties:
              messageId:
                type: string
                minLength: 1
              contentId:
                type: string
                minLength: 1
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - messageId
              - contentId
            additionalProperties: false
            title: com.veryfront.message.text.ended
            x-event-type: com.veryfront.message.text.ended
            x-envelope-required: []
            x-semantics: >-
              Exact message/content segment identity. Reasoning content is only
              explicitly publishable text; provider-native signed/redacted
              replay material is not rendered or reclassified. Redacted deltas
              retain identity without inventing text.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          MessageReasoningStarted:
            type: object
            properties:
              messageId:
                type: string
                minLength: 1
              contentId:
                type: string
                minLength: 1
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - messageId
              - contentId
            additionalProperties: false
            title: com.veryfront.message.reasoning.started
            x-event-type: com.veryfront.message.reasoning.started
            x-envelope-required: []
            x-semantics: >-
              Exact message/content segment identity. Reasoning content is only
              explicitly publishable text; provider-native signed/redacted
              replay material is not rendered or reclassified. Redacted deltas
              retain identity without inventing text.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          MessageReasoningDeltaEmitted:
            type: object
            properties:
              messageId:
                type: string
                minLength: 1
              contentId:
                type: string
                minLength: 1
              delta:
                type: string
              contentRedacted:
                const: true
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - messageId
              - contentId
            additionalProperties: false
            title: com.veryfront.message.reasoning.delta.emitted
            x-event-type: com.veryfront.message.reasoning.delta.emitted
            x-envelope-required: []
            x-semantics: >-
              Exact message/content segment identity. Reasoning content is only
              explicitly publishable text; provider-native signed/redacted
              replay material is not rendered or reclassified. Redacted deltas
              retain identity without inventing text.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
            oneOf:
              - required:
                  - delta
                not:
                  required:
                    - contentRedacted
              - required:
                  - contentRedacted
                not:
                  required:
                    - delta
          MessageReasoningEnded:
            type: object
            properties:
              messageId:
                type: string
                minLength: 1
              contentId:
                type: string
                minLength: 1
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - messageId
              - contentId
            additionalProperties: false
            title: com.veryfront.message.reasoning.ended
            x-event-type: com.veryfront.message.reasoning.ended
            x-envelope-required: []
            x-semantics: >-
              Exact message/content segment identity. Reasoning content is only
              explicitly publishable text; provider-native signed/redacted
              replay material is not rendered or reclassified. Redacted deltas
              retain identity without inventing text.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          MessageUrlReferenced:
            type: object
            properties:
              messageId:
                type: string
                minLength: 1
              contentId:
                type: string
                minLength: 1
              sourceId:
                type: string
                minLength: 1
              url:
                type: string
                format: uri
              title:
                type: string
                minLength: 1
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - messageId
              - sourceId
              - url
            additionalProperties: false
            title: com.veryfront.message.url.referenced
            x-event-type: com.veryfront.message.url.referenced
            x-envelope-required: []
            x-semantics: >-
              Reference belongs to this exact message. Optional contentId scopes
              the segment; sourceId/URL cannot substitute for message ownership.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          MessageDocumentReferenced:
            type: object
            properties:
              messageId:
                type: string
                minLength: 1
              contentId:
                type: string
                minLength: 1
              sourceId:
                type: string
                minLength: 1
              mediaType:
                type: string
                minLength: 1
              title:
                type: string
                minLength: 1
              filename:
                type: string
                minLength: 1
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - messageId
              - sourceId
              - mediaType
            additionalProperties: false
            title: com.veryfront.message.document.referenced
            x-event-type: com.veryfront.message.document.referenced
            x-envelope-required: []
            x-semantics: >-
              Document reference belongs to this exact message. Optional
              contentId scopes the segment; source identity is separate from
              message identity.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          MessageFileAttached:
            type: object
            properties:
              messageId:
                type: string
                minLength: 1
              contentId:
                type: string
                minLength: 1
              mediaType:
                type: string
                minLength: 1
              url:
                type: string
                format: uri
              filename:
                type: string
                minLength: 1
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - messageId
              - mediaType
            additionalProperties: false
            title: com.veryfront.message.file.attached
            x-event-type: com.veryfront.message.file.attached
            x-envelope-required: []
            x-semantics: >-
              Attachment descriptor belongs to this exact message. Optional
              contentId scopes the segment. Omitted URL/filename may reflect
              authorized descriptor-only disclosure; no missing locator is
              fabricated.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          StreamHeartbeatEmitted:
            type: object
            properties:
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required: []
            additionalProperties: false
            title: com.veryfront.stream.heartbeat.emitted
            x-event-type: com.veryfront.stream.heartbeat.emitted
            x-envelope-required: []
            x-semantics: >-
              Optional liveness notification. It carries no execution
              transition, durable cursor, provider attempt or completion
              acknowledgement.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
          StreamClosed:
            type: object
            properties:
              reason:
                anyOf:
                  - type: string
                    pattern: ^[a-z][a-z0-9]*(?:_[a-z0-9]+)*$
                  - type: string
                    minLength: 1
                    format: uri
                description: >-
                  Nonempty closure reason code. integration_auth_required is
                  valid only when that actual stream closure is observed;
                  waiting alone does not establish closure.
              extensions:
                $ref: >-
                  #/components/schemas/TargetRunEvent/x-agent-event-payload-schemas/$defs/Extensions
            required:
              - reason
            additionalProperties: false
            title: com.veryfront.stream.closed
            x-event-type: com.veryfront.stream.closed
            x-envelope-required: []
            x-semantics: >-
              Optional delivery notification that this stream was observed to
              close for the reported reason. It establishes no paused,
              cancelled, succeeded or failed execution outcome. Legacy
              run.paused or RUN_PARKED alone is insufficient source evidence.
            x-data-omission: >-
              Only declared optional fields may be omitted. Unknown required
              evidence is not defaulted; redaction alternatives, where present,
              are explicit. This is not a type-only fallback for malformed
              source data.
        x-source-schema-id: urn:veryfront:run-events:target:payloads:1
    TargetRunProblem:
      type: object
      properties:
        type:
          type: string
          description: Problem type URI reference.
        title:
          type: string
        status:
          type: integer
          minimum: 400
          maximum: 599
          format: int64
        code:
          type: string
          minLength: 1
          maxLength: 128
        cause:
          type: string
          enum:
            - schedule_concurrency_forbidden
            - schedule_fire_in_progress
            - schedule_run_limit_reached
          description: Schedule admission refusal.
        detail:
          type: string
        instance:
          type: string
        errors:
          type: array
          items:
            type: object
            properties:
              field:
                type: string
              message:
                type: string
            required:
              - field
              - message
      required:
        - type
        - title
        - status
        - code
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT or API Key
      description: >-
        Use a JWT bearer token or a Veryfront API key in the `Authorization`
        header.
    apiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: Alternative API key header for `vf_<prefix>_<secret>` tokens.
    runExecutionAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Server-issued credential bound to project, run, registered runtime,
        execution generation, audience, expiry, and explicitly allowed
        operations; user/API-key editor access is insufficient.

````

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