Vertesia · Schema

AgentRun

AgentRun — the client-facing stable identity for a running or completed agent. All operations use `id` as the sole identifier. Temporal workflow internals are never exposed to clients.

CompanyDigital ExperiencePerformance MonitoringAnalyticsContent Delivery

Properties

Name Type Description
interaction string Interaction ID or code (e.g. "sys:generic_question").
data object Input parameters, typed per interaction
config object Execution configuration (environment, model, model_options, etc.)
interactive boolean Whether the agent accepts user input
tool_approval_mode object How side-effecting tool actions are approved for interactive runs.
tool_names array Tools configured for this run (+/- syntax supported)
initial_skills array Builtin system skills activated before the first model turn.
initial_tool_calls array Ordered, bounded hydration/read calls executed before the first model turn.
excluded_tools array Hard denylist of tool names: never exposed to the model, refused at execution time.
collection_id string Scoped collection (if any)
disabled_mcp_collections array Denylist of MCP tool-collection ids deactivated for this run. `undefined`/empty means all installed/connected MCP collections are active (back-compat, and new servers stay active by default). Listed c
content_type object Content type linked to this run — defines the schema for `properties`
visibility object Conversation/process visibility
tags array User-defined or system tags for categorization
categories array Categories for organizing runs
properties object Business metadata — typed by the linked content_type schema
source object How the run was started
schedule_id string Schedule ID — set when this run was triggered by a Temporal schedule
source_type object Replacement for legacy AgentRun.type
type object Deprecated: Use source_type for creation source and run_type for runtime mode.
id string The stable identifier used by all client code
run_kind string Internal discriminator key
parent_run_id string Process run this agent belongs to — set when a process agent node recorded this run. Its conversation lives on the parent run under `workstream_id`.
workstream_id string Workstream this run occupies inside its parent run (the process node id).
run_type string Public-facing runtime mode
account string Account ID
project string Project ID
workflow_id string Temporal workflow ID (stable across continueAsNew)
first_workflow_run_id string First Temporal workflow run ID (used for Redis channel and artifact resolution)
artifacts_path string Artifact storage path for this run
status object Current status of the agent run
activity_state object Whether the agent is currently working or idle (waiting for user input)
started_by string User or service that initiated the run
started_at string When the run started
completed_at string When the run completed (or failed/cancelled)
title string Conversation title (short, human-readable)
event_subscription_id string Event subscription ID — set when this run was triggered by the event bus.
event_ref object Event reference — set when this run was triggered by the event bus.
archive_state object Archive lifecycle state
created_at string Timestamp when the document was created
updated_at string Timestamp when the document was last updated
interaction_name string Human-readable interaction name
interactionRef object
environmentRef object Resolved environment reference (name resolved from `config.environment` id). Populated by the list endpoint; may be absent on other endpoints or when the id cannot be resolved, in which case consumers
topic string Conversation topic (longer description from topic analysis)
generate_topic boolean Whether automatic conversation title/topic generation is enabled for this run.
generate_lessons boolean Whether automatic lessons generation is enabled for this run.
lessons_learned array Lessons learned from the conversation (extracted at completion)
evaluate boolean Request LLM evaluation when the project evaluation policy is opt_in. Defaults to false. Cannot override disabled or opt out of always_on.
evaluation object Evaluation summary of the run.
feedback array Retained user ratings on the run.
archived_at string When the last successful archive completed
archive_version number Archive format version (for forward compatibility)
last_archive_error string Last archive error message (when archive_state === 'failed')
forked_from string Source agent run ID when this run was forked (enables message history chaining)
View JSON Schema on GitHub

JSON Schema

vertesiahq-agent-run-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/vertesiahq/main/json-schema/vertesiahq-agent-run-schema.json",
  "title": "AgentRun",
  "description": "AgentRun — the client-facing stable identity for a running or completed agent.\n\nAll operations use `id` as the sole identifier. Temporal workflow internals are never exposed to clients.",
  "x-generated": "2026-10-22",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/vertesia-openapi.json#/components/schemas/AgentRun",
  "type": "object",
  "properties": {
    "interaction": {
      "type": "string",
      "description": "Interaction ID or code (e.g. \"sys:generic_question\")."
    },
    "data": {
      "type": "object",
      "additionalProperties": true,
      "description": "Input parameters, typed per interaction"
    },
    "config": {
      "$ref": "#/$defs/InteractionExecutionConfiguration",
      "description": "Execution configuration (environment, model, model_options, etc.)"
    },
    "interactive": {
      "type": "boolean",
      "description": "Whether the agent accepts user input"
    },
    "tool_approval_mode": {
      "$ref": "#/$defs/AgentToolApprovalMode",
      "description": "How side-effecting tool actions are approved for interactive runs."
    },
    "tool_names": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Tools configured for this run (+/- syntax supported)"
    },
    "initial_skills": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Builtin system skills activated before the first model turn."
    },
    "initial_tool_calls": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/InitialToolCall"
      },
      "description": "Ordered, bounded hydration/read calls executed before the first model turn."
    },
    "excluded_tools": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Hard denylist of tool names: never exposed to the model, refused at execution time."
    },
    "collection_id": {
      "type": "string",
      "description": "Scoped collection (if any)"
    },
    "disabled_mcp_collections": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Denylist of MCP tool-collection ids deactivated for this run. `undefined`/empty means all installed/connected MCP collections are active (back-compat, and new servers stay active by default). Listed collections are excluded even if connected."
    },
    "content_type": {
      "$ref": "#/$defs/ContentObjectTypeRef",
      "description": "Content type linked to this run — defines the schema for `properties`"
    },
    "visibility": {
      "$ref": "#/$defs/ConversationVisibility",
      "description": "Conversation/process visibility"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "User-defined or system tags for categorization"
    },
    "categories": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Categories for organizing runs"
    },
    "properties": {
      "type": "object",
      "additionalProperties": true,
      "description": "Business metadata — typed by the linked content_type schema"
    },
    "source": {
      "$ref": "#/$defs/RunSource",
      "description": "How the run was started"
    },
    "schedule_id": {
      "type": "string",
      "description": "Schedule ID — set when this run was triggered by a Temporal schedule"
    },
    "source_type": {
      "$ref": "#/$defs/AgentRunType",
      "description": "Replacement for legacy AgentRun.type"
    },
    "type": {
      "deprecated": true,
      "x-deprecated-message": "Use source_type for creation source and run_type for runtime mode.",
      "$ref": "#/$defs/AgentRunType",
      "description": "Deprecated: Use source_type for creation source and run_type for runtime mode."
    },
    "id": {
      "type": "string",
      "description": "The stable identifier used by all client code"
    },
    "run_kind": {
      "type": "string",
      "const": "agent",
      "description": "Internal discriminator key"
    },
    "parent_run_id": {
      "type": "string",
      "description": "Process run this agent belongs to — set when a process agent node recorded this run. Its conversation lives on the parent run under `workstream_id`."
    },
    "workstream_id": {
      "type": "string",
      "description": "Workstream this run occupies inside its parent run (the process node id)."
    },
    "run_type": {
      "type": "string",
      "const": "autonomous",
      "description": "Public-facing runtime mode"
    },
    "account": {
      "type": "string",
      "description": "Account ID"
    },
    "project": {
      "type": "string",
      "description": "Project ID"
    },
    "workflow_id": {
      "type": "string",
      "description": "Temporal workflow ID (stable across continueAsNew)"
    },
    "first_workflow_run_id": {
      "type": "string",
      "description": "First Temporal workflow run ID (used for Redis channel and artifact resolution)"
    },
    "artifacts_path": {
      "type": "string",
      "description": "Artifact storage path for this run"
    },
    "status": {
      "$ref": "#/$defs/AgentRunStatus",
      "description": "Current status of the agent run"
    },
    "activity_state": {
      "$ref": "#/$defs/ConversationActivityState",
      "description": "Whether the agent is currently working or idle (waiting for user input)"
    },
    "started_by": {
      "type": "string",
      "description": "User or service that initiated the run"
    },
    "started_at": {
      "type": "string",
      "format": "date-time",
      "description": "When the run started"
    },
    "completed_at": {
      "type": "string",
      "format": "date-time",
      "description": "When the run completed (or failed/cancelled)"
    },
    "title": {
      "type": "string",
      "description": "Conversation title (short, human-readable)"
    },
    "event_subscription_id": {
      "type": "string",
      "description": "Event subscription ID — set when this run was triggered by the event bus."
    },
    "event_ref": {
      "$ref": "#/$defs/EventRef",
      "description": "Event reference — set when this run was triggered by the event bus."
    },
    "archive_state": {
      "$ref": "#/$defs/AgentRunArchiveState",
      "description": "Archive lifecycle state"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp when the document was created"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp when the document was last updated"
    },
    "interaction_name": {
      "type": "string",
      "description": "Human-readable interaction name"
    },
    "interactionRef": {
      "$ref": "#/$defs/InteractionRef"
    },
    "environmentRef": {
      "$ref": "#/$defs/ResourceRef",
      "description": "Resolved environment reference (name resolved from `config.environment` id). Populated by the list endpoint; may be absent on other endpoints or when the id cannot be resolved, in which case consumers should fall back to `config.environment`."
    },
    "topic": {
      "type": "string",
      "description": "Conversation topic (longer description from topic analysis)"
    },
    "generate_topic": {
      "type": "boolean",
      "description": "Whether automatic conversation title/topic generation is enabled for this run."
    },
    "generate_lessons": {
      "type": "boolean",
      "description": "Whether automatic lessons generation is enabled for this run."
    },
    "lessons_learned": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Lessons learned from the conversation (extracted at completion)"
    },
    "evaluate": {
      "type": "boolean",
      "description": "Request LLM evaluation when the project evaluation policy is opt_in. Defaults to false. Cannot override disabled or opt out of always_on."
    },
    "evaluation": {
      "$ref": "#/$defs/AgentRunEvaluation",
      "description": "Evaluation summary of the run."
    },
    "feedback": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/AgentRunFeedbackEntry"
      },
      "description": "Retained user ratings on the run."
    },
    "archived_at": {
      "type": "string",
      "format": "date-time",
      "description": "When the last successful archive completed"
    },
    "archive_version": {
      "type": "number",
      "description": "Archive format version (for forward compatibility)"
    },
    "last_archive_error": {
      "type": "string",
      "description": "Last archive error message (when archive_state === 'failed')"
    },
    "forked_from": {
      "type": "string",
      "description": "Source agent run ID when this run was forked (enables message history chaining)"
    }
  },
  "required": [
    "interaction",
    "id",
    "run_kind",
    "run_type",
    "account",
    "project",
    "status",
    "started_by",
    "started_at",
    "created_at",
    "updated_at",
    "interactionRef"
  ],
  "additionalProperties": false,
  "$defs": {
    "AgentBudgetConfiguration": {
      "type": "object",
      "properties": {
        "mode": {
          "type": "string",
          "enum": [
            "token",
            "dollar"
          ],
          "description": "Run budget mode. An omitted mode preserves weighted-token budgeting."
        },
        "limit_usd": {
          "type": "number",
          "exclusiveMinimum": 0,
          "maximum": 9007199.25474099,
          "description": "Soft USD allowance for priced model calls; dollar mode also requires limit_tokens for unpriced calls."
        },
        "reminder_at_remaining_fractions": {
          "type": "array",
          "items": {
            "type": "number",
            "exclusiveMinimum": 0,
            "exclusiveMaximum": 1
          }
        },
        "limit_tokens": {
          "type": "number",
          "description": "Weighted token budget shared by the run and every subagent workstream it launches. When the run and its workstreams together use this many weighted tokens, the agent gets one final turn without tools to summarize its work, and the run ends. This is a soft limit, not a spending cap: workstreams running concurrently and the final summary turns can go over it. Unset or <=0 means no budget."
        },
        "reminder_at_remaining_tokens": {
          "type": "array",
          "items": {
            "type": "number"
          },
          "description": "Remaining-budget thresholds, in weighted tokens, at which the agent is told how much budget is left. Each threshold is delivered once per context window (again after a checkpoint). Values outside (0, limit_tokens) are ignored. Unset means reminders at 25% and 10% remaining."
        },
        "output_token_weight": {
          "type": "number",
          "minimum": 0,
          "description": "Weight applied to output tokens, reasoning included, when charging the budget. Default 5."
        },
        "input_token_weight": {
          "type": "number",
          "minimum": 0,
          "description": "Weight applied to input tokens not read from the prompt cache. Default 1."
        },
        "cached_input_token_weight": {
          "type": "number",
          "minimum": 0,
          "description": "Weight applied to input tokens read from the prompt cache. Default 0.1, so a long conversation that mostly re-reads cached context is charged a tenth of the uncached rate for it."
        }
      },
      "additionalProperties": false,
      "description": "Weighted token budget for an agent run and its subagent workstreams. A call is charged output × output_token_weight + uncached input × input_token_weight + cached input × cached_input_token_weight."
    },
    "AgentCheckpointConfiguration": {
      "type": "object",
      "properties": {
        "context_threshold": {
          "type": "number",
          "description": "Fraction of the model's context window to use before the conversation is summarized and compacted (0-1, e.g. 0.95). Model-independent: applies to whatever model each run uses. Setting it replaces the default hard cap — a project asking for 0.95 of a 1M-window model checkpoints at 950k. Clamped at runtime to 0.95 so the prompt still fits."
        },
        "max_tokens": {
          "type": "number",
          "description": "Absolute hard cap in tokens, regardless of the window fraction. Alone it acts as the threshold; combined with context_threshold the lower of the two wins. Clamped at runtime to 95% of the model's window. Unset means the default cap (500k), or no cap beyond the 95% clamp when context_threshold is set."
        }
      },
      "additionalProperties": false
    },
    "AgentRunArchiveState": {
      "type": "string",
      "enum": [
        "none",
        "pending",
        "archiving",
        "complete",
        "failed"
      ],
      "description": "Archive lifecycle state for an agent run.\n\n- `none`:      No archive exists (default)\n- `pending`:   Terminal status recorded; archive workflow triggered\n- `archiving`: Archive workflow is running\n- `complete`:  Archive stored in GCS successfully\n- `failed`:    Archive attempt failed (see `last_archive_error`)"
    },
    "AgentRunContradictionReason": {
      "type": "string",
      "enum": [
        "feedback_down_on_clean_run",
        "evaluation_failure_on_clean_run"
      ]
    },
    "AgentRunEvaluation": {
      "type": "object",
      "properties": {
        "rev": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991,
          "description": "Bumped on every change to any part of the summary."
        },
        "rollup": {
          "$ref": "#/$defs/AgentRunEvaluationRollup"
        },
        "feedback_counts": {
          "$ref": "#/$defs/AgentRunFeedbackCounts"
        },
        "llm_evaluation": {
          "$ref": "#/$defs/AgentRunLlmEvaluationResult"
        },
        "severity": {
          "$ref": "#/$defs/EvaluationSeverity"
        },
        "flags": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/TurnEvaluationFlag"
          }
        },
        "contradicted": {
          "type": "boolean"
        },
        "contradiction_reasons": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/AgentRunContradictionReason"
          }
        },
        "deployment_env": {
          "type": "string"
        },
        "updated_at": {
          "type": "string",
          "format": "date-time"
        }
      },
      "required": [
        "rev",
        "severity",
        "flags",
        "contradicted",
        "updated_at"
      ],
      "additionalProperties": false,
      "description": "Evaluation summary of an agent run."
    },
    "AgentRunEvaluationRollup": {
      "type": "object",
      "properties": {
        "seq": {
          "type": "integer",
          "minimum": 1,
          "maximum": 9007199254740991,
          "description": "Monotonic per run; the server ignores a rollup older than the one it holds."
        },
        "detector_version": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "turns": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "severity": {
          "$ref": "#/$defs/EvaluationSeverity"
        },
        "flags": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/TurnEvaluationFlag"
          }
        },
        "worst_turn_seq": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "last_terminal_type": {
          "$ref": "#/$defs/TurnTerminalType"
        },
        "terminal_error_class": {
          "type": "string"
        },
        "partial": {
          "type": "boolean"
        },
        "totals": {
          "type": "object",
          "properties": {
            "tool_calls": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "error_tool_results": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "unrecovered_tools": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "llm_calls": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "prompt_tokens": {
              "type": "number"
            },
            "completion_tokens": {
              "type": "number"
            },
            "cached_tokens": {
              "type": "number"
            },
            "retry_completion_tokens": {
              "type": "number"
            },
            "active_ms": {
              "type": "number"
            },
            "ask_user_wait_ms": {
              "type": "number"
            },
            "approval_wait_ms": {
              "type": "number"
            },
            "followups": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "approvals_requested": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "approvals_denied": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "stop_requests": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "stall_trips": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            }
          },
          "required": [
            "tool_calls",
            "error_tool_results",
            "unrecovered_tools",
            "llm_calls",
            "prompt_tokens",
            "completion_tokens",
            "cached_tokens",
            "retry_completion_tokens",
            "active_ms",
            "ask_user_wait_ms",
            "approval_wait_ms",
            "followups",
            "approvals_requested",
            "approvals_denied",
            "stop_requests"
          ],
          "additionalProperties": false
        },
        "updated_at": {
          "type": "string",
          "format": "date-time"
        }
      },
      "required": [
        "seq",
        "detector_version",
        "turns",
        "severity",
        "flags",
        "totals",
        "updated_at"
      ],
      "additionalProperties": false,
      "description": "Fold of the turn evaluations of a run."
    },
    "AgentRunFeedbackCounts": {
      "type": "object",
      "properties": {
        "up": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "down": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "last_rating": {
          "$ref": "#/$defs/AgentRunFeedbackRating"
        },
        "last_reason_code": {
          "$ref": "#/$defs/AgentRunFeedbackReasonCode"
        }
      },
      "required": [
        "up",
        "down"
      ],
      "additionalProperties": false,
      "description": "Ratings over the retained feedback entries, one vote per rater: a user who rated the run and one of its answers counts once, by their latest rating."
    },
    "AgentRunFeedbackEntry": {
      "type": "object",
      "properties": {
        "feedback_id": {
          "type": "string"
        },
        "rating": {
          "$ref": "#/$defs/AgentRunFeedbackRating"
        },
        "reason_code": {
          "$ref": "#/$defs/AgentRunFeedbackReasonCode"
        },
        "comment": {
          "type": "string"
        },
        "message_id": {
          "type": "string"
        },
        "message_seq": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "message_scoped": {
          "type": "boolean"
        },
        "user_id": {
          "type": "string"
        },
        "rated_at": {
          "type": "string",
          "format": "date-time"
        },
        "replaced_at": {
          "type": "string",
          "format": "date-time"
        }
      },
      "required": [
        "feedback_id",
        "rating",
        "message_scoped",
        "user_id",
        "rated_at"
      ],
      "additionalProperties": false,
      "description": "One recorded rating on an agent run."
    },
    "AgentRunFeedbackRating": {
      "type": "string",
      "enum": [
        "up",
        "down"
      ],
      "description": "Thumbs up or thumbs down on an agent run."
    },
    "AgentRunFeedbackReasonCode": {
      "type": "string",
      "enum": [
        "accurate",
        "helpful",
        "fast",
        "well_explained",
        "wrong_result",
        "incomplete",
        "misunderstood_request",
        "too_slow",
        "tool_failure",
        "unsafe_action",
        "other"
      ],
      "description": "Why the run was rated the way it was."
    },
    "AgentRunLlmEvaluationResult": {
      "type": "object",
      "properties": {
        "rev": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "gate": {
          "$ref": "#/$defs/EvaluationGateReason"
        },
        "sample_rate": {
          "type": "number"
        },
        "selected_probability": {
          "type": "number"
        },
        "outcome": {
          "$ref": "#/$defs/EvaluationOutcome"
        },
        "verdict": {
          "$ref": "#/$defs/EvaluationVerdict"
        },
        "score": {
          "type": "number"
        },
        "model": {
          "type": "string"
        },
        "prompt_version": {
          "type": "string"
        },
        "turns_evaluated": {
          "type": "array",
          "items": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          }
        },
        "evaluated_at": {
          "type": "string",
          "format": "date-time"
        }
      },
      "required": [
        "rev",
        "gate",
        "sample_rate",
        "selected_probability",
        "outcome",
        "prompt_version",
        "evaluated_at"
      ],
      "additionalProperties": false,
      "description": "Latest LLM evaluation result for a run."
    },
    "AgentRunStatus": {
      "type": "string",
      "enum": [
        "created",
        "running",
        "completed",
        "failed",
        "cancelled"
      ],
      "description": "Status of an agent run through its lifecycle."
    },
    "AgentRunType": {
      "type": "string",
      "enum": [
        "api",
        "schedule",
        "event_subscription"
      ],
      "description": "How the agent run was created."
    },
    "AgentRunnerOptions": {
      "type": "object",
      "properties": {
        "is_agent": {
          "type": "boolean",
          "description": "Whether this interaction is an agent (executable in Agent Runner)."
        },
        "is_tool": {
          "type": "boolean",
          "description": "Whether this interaction is available as a tool (sub-agent)."
        },
        "is_skill": {
          "type": "boolean",
          "description": "Whether this interaction is a skill (provides instructions without execution). Skills are injected into the agent's context based on context_triggers."
        },
        "context_triggers": {
          "$ref": "#/$defs/SkillContextTriggers",
          "description": "Context triggers for auto-injection of this skill. Only used when is_skill is true."
        },
        "skill_priority": {
          "type": "number",
          "description": "Injection priority for skills (higher = more likely to be selected when multiple match). Only used when is_skill is true."
        },
        "tool_names": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Array of default tool names available to this agent. For interactions: defines default tools. For execution payloads: you can use + and - to add or remove from default, if no sign, then list replaces default."
        },
        "search_scope": {
          "$ref": "#/$defs/AgentSearchScope",
          "description": "On which scope should the search be applied by the search_tool. Only supports 'collection' scope or undefined for now."
        },
        "collection_id": {
          "type": "string",
          "description": "The ID of the collection to restrict agent operations to. When specified, the agent's search and retrieval operations are limited to documents within this collection'."
        },
        "request_template": {
          "type": "string",
          "description": "Optional user-facing template for rendering run input as the first conversation entry. Supports {{field_name}}, {{nested.field}}, {{items.0.name}}, and {{json}} placeholders resolved from the run data."
        },
        "checkpoint": {
          "$ref": "#/$defs/AgentCheckpointConfiguration",
          "description": "Per-agent context checkpoint configuration. Field-wise it overrides the project's `configuration.agent.checkpoint`; a per-run `checkpoint_tokens` override still wins over both."
        },
        "budget": {
          "$ref": "#/$defs/AgentBudgetConfiguration",
          "description": "Per-agent token budget. Field-wise it overrides the project's `configuration.agent.budget`; the per-run `budget` wins over both."
        }
      },
      "additionalProperties": false,
      "description": "Configuration options for Agent Runner functionality. These options control how interactions are exposed and executed in the Agent Runner."
    },
    "AgentSearchScope": {
      "type": "string",
      "const": "collection",
      "description": "Defines the scope for agent search operations."
    },
    "AgentToolApprovalMode": {
      "type": "string",
      "enum": [
        "ask",
        "auto_review",
        "full_control"
      ]
    },
    "AnthropicClaudeOptions": {
      "type": "object",
      "properties": {
        "_option_id": {
          "type": "string",
          "const": "anthropic-claude"
        },
        "max_tokens": {
          "type": "number"
        },
        "temperature": {
          "type": "number"
        },
        "top_p": {
          "type": "number"
        },
        "top_k": {
          "type": "number"
        },
        "stop_sequence": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "effort": {
          "type": "string",
          "enum": [
            "low",
            "medium",
            "high",
            "xhigh",
            "max"
          ]
        },
        "thinking_mode": {
          "type": "string",
          "enum": [
            "adaptive",
            "between_tools"
          ],
          "description": "Thinking mode override. Sonnet 5.5 supports between_tools at low, medium, or high effort. It omits display and budget fields; keep effort fixed during the conversation. When unset, existing model-specific thinking behavior is preserved."
        },
        "thinking_budget_tokens": {
          "type": "number"
        },
        "include_thoughts": {
          "type": "boolean"
        },
        "cache_enabled": {
          "type": "boolean"
        },
        "cache_ttl": {
          "type": "string",
          "enum": [
            "5m",
            "1h"
          ]
        },
        "speed": {
          "type": "string",
          "enum": [
            "standard",
            "fast"
          ]
        }
      },
      "additionalProperties": false
    },
    "AzureFoundryChatOptions": {
      "type": "object",
      "properties": {
        "_option_id": {
          "type": "string",
          "const": "azure-foundry-chat"
        },
        "max_tokens": {
          "type": "number"
        },
        "temperature": {
          "type": "number"
        },
        "top_p": {
          "type": "number"
        },
        "presence_penalty": {
          "type": "number"
        },
        "frequency_penalty": {
          "type": "number"
        },
        "stop_sequence": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "seed": {
          "type": "number"
        },
        "image_detail": {
          "type": "string",
          "enum": [
            "low",
            "high",
            "auto"
          ]
        },
        "include_thoughts": {
          "type": "boolean"
        }
      },
      "additionalProperties": false
    },
    "BedrockAI21Options": {
      "type": "object",
      "properties": {
        "_option_id": {
          "type": "string",
          "const": "bedrock-ai21"
        },
        "max_tokens": {
          "type": "number"
        },
        "temperature": {
          "type": "number"
        },
        "top_p": {
          "type": "number"
        },
        "presence_penalty": {
          "type": "number"
        },
        "frequency_penalty": {
          "type": "number"
        },
        "stop_sequence": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "include_thoughts": {
          "type": "boolean"
        },
        "service_tier": {
          "type": "string",
          "minLength": 1,
          "description": "Provider-defined processing tier. Unknown non-empty values are preserved for forward compatibility."
        }
      },
      "additionalProperties": false
    },
    "BedrockClaudeOptions": {
      "type": "object",
      "properties": {
        "_option_id": {
          "type": "string",
          "const": "bedrock-claude"
        },
        "max_tokens": {
          "type": "number"
        },
        "temperature": {
          "type": "number"
        },
        "top_p": {
          "type": "number"
        },
        "stop_sequence": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "top_k": {
          "type": "number"
        },
        "thinking_mode": {
          "type": "string",
          "enum": [
            "adaptive",
            "between_tools"
          ],
          "description": "Thinking mode override. Sonnet 5.5 supports between_tools at low, medium, or high effort. It omits display and budget fields; keep effort fixed during the conversation. When unset, existing model-specific thinking behavior is preserved."
        },
        "thinking_budget_tokens": {
          "type": "number"
        },
        "include_thoughts": {
          "type": "boolean"
        },
        "effort": {
          "type": "string",
          "enum": [
            "low",
            "medium",
            "high",
            "xhigh",
            "max"
          ]
        },
        "cache_enabled": {
          "type": "boolean"
        },
        "cache_ttl": {
          "type": "string",
          "enum": [
            "5m",
            "1h"
          ]
        },
        "service_tier": {
          "type": "string",
          "minLength": 1,
          "description": "Provider-defined processing tier. Unknown non-empty values are preserved for forward compatibility."
        }
      },
      "additionalProperties": false
    },
    "BedrockCohereCommandOptions": {
      "type": "object",
      "properties": {
        "_option_id": {
          "type": "string",
          "const": "bedrock-cohere-command"
        },
        "max_tokens": {
          "type": "number"
        },
        "temperature": {
          "type": "number"
        },
        "top_p": {
          "type": "number"
        },
        "top_k": {
          "type": "number"
        },
        "presence_penalty": {

# --- truncated at 32 KB (87 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vertesiahq/refs/heads/main/json-schema/vertesiahq-agent-run-schema.json

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/vertesiahq-agent-run"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.