OpenAI · Schema

SessionEvent

An event emitted by a Managed Agents session.

LLMOpenAIArtificial IntelligenceGenerative AIChatbotsFoundation ModelsT1
View JSON Schema on GitHub

JSON Schema

openai-session-event-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/openai/main/json-schema/openai-session-event-schema.json",
  "title": "SessionEvent",
  "description": "An event emitted by a Managed Agents session.",
  "x-generated": "2026-09-23",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/openai-agents-api-openapi.yml#/components/schemas/SessionEvent",
  "oneOf": [
    {
      "$ref": "#/$defs/SessionEventError"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionEnvironmentReady"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionEnvironmentReset"
    },
    {
      "$ref": "#/$defs/SessionEventAgentOutputCommandExecutionOutputDelta"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionCreated"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnCreated"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnInProgress"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnCompleted"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnFailed"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnCancelled"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnItemAdded"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionIdle"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionInProgress"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionRequiresAction"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionFailed"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionEnvironmentPending"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionEnvironmentConnected"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionEnvironmentDisconnected"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionEnvironmentFailed"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionSubagentCreated"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionSubagentActive"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionSubagentClosed"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnItemDone"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnContentPartAdded"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnContentPartDone"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnOutputTextDelta"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnOutputTextDone"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnReasoningSummaryPartAdded"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnReasoningSummaryPartDone"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnReasoningSummaryTextDelta"
    },
    {
      "$ref": "#/$defs/SessionEventAgentSessionTurnReasoningSummaryTextDone"
    }
  ],
  "x-oai-discriminator-values": [
    "error",
    "agent.session.environment.ready",
    "agent.session.environment.reset",
    "agent.output.command_execution_output.delta",
    "agent.session.created",
    "agent.session.turn.created",
    "agent.session.turn.in_progress",
    "agent.session.turn.completed",
    "agent.session.turn.failed",
    "agent.session.turn.cancelled",
    "agent.session.turn.item.added",
    "agent.session.idle",
    "agent.session.in_progress",
    "agent.session.requires_action",
    "agent.session.failed",
    "agent.session.environment.pending",
    "agent.session.environment.connected",
    "agent.session.environment.disconnected",
    "agent.session.environment.failed",
    "agent.session.subagent.created",
    "agent.session.subagent.active",
    "agent.session.subagent.closed",
    "agent.session.turn.item.done",
    "agent.session.turn.content_part.added",
    "agent.session.turn.content_part.done",
    "agent.session.turn.output_text.delta",
    "agent.session.turn.output_text.done",
    "agent.session.turn.reasoning_summary_part.added",
    "agent.session.turn.reasoning_summary_part.done",
    "agent.session.turn.reasoning_summary_text.delta",
    "agent.session.turn.reasoning_summary_text.done"
  ],
  "$defs": {
    "AgentContentResource": {
      "oneOf": [
        {
          "$ref": "#/$defs/OutputTextResource"
        },
        {
          "$ref": "#/$defs/EncryptedContentResource"
        }
      ],
      "x-oai-discriminator-values": [
        "output_text",
        "encrypted_content"
      ],
      "description": "A plaintext or encrypted content part exchanged between agents."
    },
    "AgentMessageItemResource": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the message."
        },
        "turn_id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the turn that contains this item."
        },
        "type": {
          "type": "string",
          "enum": [
            "agent_message"
          ],
          "default": "agent_message",
          "x-stainless-const": true,
          "description": "The item type. Always `agent_message`."
        },
        "sender_agent_id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID or name of the sending agent."
        },
        "recipient_agent_id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID or name of the receiving agent."
        },
        "content": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/AgentContentResource"
          },
          "minItems": 0,
          "maxItems": 2000,
          "description": "The content exchanged between the agents."
        }
      },
      "required": [
        "id",
        "turn_id",
        "type",
        "sender_agent_id",
        "recipient_agent_id",
        "content"
      ],
      "additionalProperties": false,
      "description": "A message exchanged between agent threads."
    },
    "AgentOutputItemResource": {
      "oneOf": [
        {
          "$ref": "#/$defs/AssistantMessageItemResource"
        },
        {
          "$ref": "#/$defs/ReasoningItemResource"
        },
        {
          "$ref": "#/$defs/FunctionCallItemResource"
        },
        {
          "$ref": "#/$defs/McpCallItemResource"
        },
        {
          "$ref": "#/$defs/WebSearchCallItemResource"
        },
        {
          "$ref": "#/$defs/CommandExecutionItemResource"
        },
        {
          "$ref": "#/$defs/CreateSubagentCallItemResource"
        },
        {
          "$ref": "#/$defs/SendSubagentInputCallItemResource"
        },
        {
          "$ref": "#/$defs/ResumeSubagentCallItemResource"
        },
        {
          "$ref": "#/$defs/WaitForSubagentsCallItemResource"
        },
        {
          "$ref": "#/$defs/InterruptSubagentCallItemResource"
        },
        {
          "$ref": "#/$defs/CloseSubagentCallItemResource"
        }
      ],
      "x-oai-discriminator-values": [
        "message",
        "reasoning",
        "function_call",
        "mcp_call",
        "web_search_call",
        "command_execution",
        "create_subagent_call",
        "send_subagent_input_call",
        "resume_subagent_call",
        "wait_for_subagents_call",
        "interrupt_subagent_call",
        "close_subagent_call"
      ],
      "description": "An output item produced by an agent."
    },
    "AgentToolResource": {
      "oneOf": [
        {
          "$ref": "#/$defs/AgentToolResourceFunction"
        },
        {
          "$ref": "#/$defs/AgentToolResourceProgrammaticToolCalling"
        },
        {
          "$ref": "#/$defs/AgentToolResourceMcp"
        },
        {
          "$ref": "#/$defs/AgentToolResourceWebSearch"
        }
      ],
      "x-oai-discriminator-values": [
        "function",
        "programmatic_tool_calling",
        "mcp",
        "web_search"
      ],
      "description": "A tool available to the agent."
    },
    "AgentToolResourceFunction": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "function"
          ],
          "default": "function",
          "x-stainless-const": true,
          "description": "The type of the object. Always `function`."
        },
        "name": {
          "type": "string",
          "minLength": 0,
          "description": "The name of the function."
        },
        "description": {
          "type": "string",
          "minLength": 0,
          "description": "A description of what the function does."
        },
        "parameters": {
          "type": "object",
          "additionalProperties": {},
          "propertyNames": {
            "type": "string",
            "minLength": 0
          },
          "minProperties": 0,
          "description": "A JSON Schema object describing the function's arguments."
        },
        "defer_loading": {
          "type": "boolean",
          "description": "Whether the function is deferred and discovered through tool search."
        }
      },
      "required": [
        "type",
        "name",
        "description",
        "parameters",
        "defer_loading"
      ],
      "additionalProperties": false,
      "description": "A function defined by the application."
    },
    "AgentToolResourceMcp": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "mcp"
          ],
          "default": "mcp",
          "x-stainless-const": true,
          "description": "The type of the object. Always `mcp`."
        },
        "server_label": {
          "type": "string",
          "minLength": 0,
          "description": "A label used to identify the MCP server in tool calls."
        },
        "credential_id": {
          "type": [
            "string",
            "null"
          ],
          "minLength": 0,
          "description": "The attached vault credential selected for this MCP server, if any. Optional when exactly one attached credential matches the server URL."
        },
        "transport": {
          "$ref": "#/$defs/McpTransportResource",
          "description": "The transport used to connect to the MCP server."
        },
        "request_metadata": {
          "type": "object",
          "additionalProperties": {},
          "propertyNames": {
            "type": "string",
            "minLength": 0
          },
          "minProperties": 0,
          "description": "Metadata included with requests to this MCP server."
        },
        "allowed_tools": {
          "type": [
            "array",
            "null"
          ],
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "maxItems": 2000,
          "description": "The MCP tools the agent may call."
        },
        "required": {
          "type": "boolean",
          "description": "Whether this MCP server must initialize before the first turn."
        },
        "connection_origin": {
          "$ref": "#/$defs/McpConnectionOriginResource",
          "description": "Where outbound MCP HTTP connections originate."
        }
      },
      "required": [
        "type",
        "server_label",
        "credential_id",
        "transport",
        "request_metadata",
        "allowed_tools",
        "required",
        "connection_origin"
      ],
      "additionalProperties": false,
      "description": "Tools provided by a remote MCP server."
    },
    "AgentToolResourceProgrammaticToolCalling": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "programmatic_tool_calling"
          ],
          "default": "programmatic_tool_calling",
          "x-stainless-const": true,
          "description": "The type of the object. Always `programmatic_tool_calling`."
        },
        "enabled": {
          "type": "boolean",
          "description": "Whether tools can be called from model-generated code."
        }
      },
      "required": [
        "type",
        "enabled"
      ],
      "additionalProperties": false,
      "description": "Enables calling tools from model-generated code."
    },
    "AgentToolResourceWebSearch": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "web_search"
          ],
          "default": "web_search",
          "x-stainless-const": true,
          "description": "The type of the object. Always `web_search`."
        },
        "mode": {
          "$ref": "#/$defs/WebSearchModeResource",
          "description": "The source used for web search results."
        },
        "context_size": {
          "$ref": "#/$defs/WebSearchContextSizeResource",
          "description": "The amount of search context made available to the model. Defaults to `medium`."
        },
        "allowed_domains": {
          "type": [
            "array",
            "null"
          ],
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "maxItems": 2000,
          "description": "Allowed search domains, or `null` when the search is unrestricted."
        },
        "location": {
          "anyOf": [
            {
              "$ref": "#/$defs/WebSearchLocationResource"
            },
            {
              "type": "null"
            }
          ],
          "description": "Approximate location used to localize search results, if provided."
        }
      },
      "required": [
        "type",
        "mode",
        "context_size",
        "allowed_domains",
        "location"
      ],
      "additionalProperties": false,
      "description": "Web search."
    },
    "AssistantMessageItemResource": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "message"
          ],
          "default": "message",
          "x-stainless-const": true,
          "description": "The item type. Always `message`."
        },
        "id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the message."
        },
        "turn_id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the turn that contains this item."
        },
        "role": {
          "type": "string",
          "enum": [
            "assistant"
          ],
          "default": "assistant",
          "x-stainless-const": true,
          "description": "The role of the message author. Always `assistant`."
        },
        "status": {
          "$ref": "#/$defs/OutputItemStatusResource",
          "description": "The status of the message."
        },
        "content": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/OutputTextResource"
          },
          "minItems": 0,
          "maxItems": 2000,
          "description": "The content of the message."
        },
        "phase": {
          "anyOf": [
            {
              "$ref": "#/$defs/MessagePhaseResource"
            },
            {
              "type": "null"
            }
          ],
          "description": "The phase of the assistant message."
        }
      },
      "required": [
        "type",
        "id",
        "turn_id",
        "role",
        "status",
        "content",
        "phase"
      ],
      "additionalProperties": false,
      "description": "An assistant message produced by the agent."
    },
    "CloseSubagentCallItemResource": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "close_subagent_call"
          ],
          "default": "close_subagent_call",
          "x-stainless-const": true,
          "x-enumDescriptions": [
            "The current public item type."
          ],
          "description": "The item type. Always `close_subagent_call`."
        },
        "id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the tool call item."
        },
        "turn_id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the turn that contains this item."
        },
        "status": {
          "$ref": "#/$defs/FunctionCallStatusResource",
          "description": "The status of the tool call."
        },
        "sender_agent_id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the agent requesting the close."
        },
        "recipient_agent_id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the agent to close."
        }
      },
      "required": [
        "type",
        "id",
        "turn_id",
        "status",
        "sender_agent_id",
        "recipient_agent_id"
      ],
      "additionalProperties": false,
      "description": "A request to close a subagent."
    },
    "CommandExecutionItemResource": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "command_execution"
          ],
          "default": "command_execution",
          "x-stainless-const": true,
          "description": "The item type. Always `command_execution`."
        },
        "id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the command execution item."
        },
        "turn_id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the turn that contains this item."
        },
        "command": {
          "type": "string",
          "minLength": 0,
          "description": "The command that was executed."
        },
        "cwd": {
          "type": [
            "string",
            "null"
          ],
          "minLength": 0,
          "description": "The working directory used to execute the command."
        },
        "status": {
          "$ref": "#/$defs/FunctionCallStatusResource",
          "description": "The status of the command execution."
        },
        "output": {
          "type": [
            "string",
            "null"
          ],
          "minLength": 0,
          "description": "The command output, if available."
        },
        "exit_code": {
          "type": [
            "integer",
            "null"
          ],
          "format": "int64",
          "description": "The process exit code, if the command completed."
        },
        "duration_ms": {
          "type": [
            "integer",
            "null"
          ],
          "format": "int64",
          "description": "The command duration in milliseconds."
        }
      },
      "required": [
        "type",
        "id",
        "turn_id",
        "command",
        "cwd",
        "status",
        "output",
        "exit_code",
        "duration_ms"
      ],
      "additionalProperties": false,
      "description": "A command execution produced by the agent."
    },
    "CreateSubagentCallItemResource": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "create_subagent_call"
          ],
          "default": "create_subagent_call",
          "x-stainless-const": true,
          "x-enumDescriptions": [
            "The current public item type."
          ],
          "description": "The item type. Always `create_subagent_call`."
        },
        "id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the tool call item."
        },
        "turn_id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the turn that contains this item."
        },
        "status": {
          "$ref": "#/$defs/FunctionCallStatusResource",
          "description": "The status of the tool call."
        },
        "agent_id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the agent that requested the subagent."
        },
        "content": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/AgentContentResource"
          },
          "minItems": 0,
          "maxItems": 2000,
          "description": "The task given to the spawned agent."
        },
        "model": {
          "type": [
            "string",
            "null"
          ],
          "minLength": 0,
          "description": "The model requested for the spawned agent."
        },
        "reasoning_effort": {
          "type": [
            "string",
            "null"
          ],
          "minLength": 0,
          "description": "The reasoning effort requested for the spawned agent."
        }
      },
      "required": [
        "type",
        "id",
        "turn_id",
        "status",
        "agent_id",
        "content",
        "model",
        "reasoning_effort"
      ],
      "additionalProperties": false,
      "description": "A request to spawn a subagent."
    },
    "EncryptedContentResource": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "encrypted_content"
          ],
          "default": "encrypted_content",
          "x-stainless-const": true,
          "description": "The content type. Always `encrypted_content`."
        },
        "encrypted_content": {
          "type": "string",
          "minLength": 0,
          "description": "The encrypted content payload."
        }
      },
      "required": [
        "type",
        "encrypted_content"
      ],
      "additionalProperties": false,
      "description": "Encrypted content exchanged between agents."
    },
    "EnvironmentPackagesResource": {
      "type": "object",
      "properties": {
        "python": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0,
            "maxLength": 1048576
          },
          "minItems": 0,
          "maxItems": 16384,
          "description": "Python packages installed in the environment."
        },
        "system": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0,
            "maxLength": 1048576
          },
          "minItems": 0,
          "maxItems": 16384,
          "description": "System packages installed in the environment."
        },
        "npm": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0,
            "maxLength": 1048576
          },
          "minItems": 0,
          "maxItems": 16384,
          "description": "npm packages installed globally in the environment."
        }
      },
      "required": [
        "python",
        "system",
        "npm"
      ],
      "additionalProperties": false,
      "description": "Packages installed in an OpenAI-hosted environment."
    },
    "EnvironmentResource": {
      "oneOf": [
        {
          "$ref": "#/$defs/EnvironmentResourceNone"
        },
        {
          "$ref": "#/$defs/EnvironmentResourceOpenaiHosted"
        },
        {
          "$ref": "#/$defs/EnvironmentResourceSelfHosted"
        }
      ],
      "x-oai-discriminator-values": [
        "none",
        "openai_hosted",
        "self_hosted"
      ],
      "description": "The execution environment for a session."
    },
    "EnvironmentResourceNone": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "none"
          ],
          "default": "none",
          "x-stainless-const": true,
          "description": "The type of the object. Always `none`."
        }
      },
      "required": [
        "type"
      ],
      "additionalProperties": false,
      "description": "The session talks to CCA without selecting or provisioning an execution environment."
    },
    "EnvironmentResourceOpenaiHosted": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "openai_hosted"
          ],
          "default": "openai_hosted",
          "x-stainless-const": true,
          "description": "The type of the object. Always `openai_hosted`."
        },
        "id": {
          "type": "string",
          "minLength": 0,
          "description": "The public ID of the environment."
        },
        "packages": {
          "$ref": "#/$defs/EnvironmentPackagesResource",
          "description": "Packages installed in the environment."
        },
        "network": {
          "$ref": "#/$defs/NetworkPolicyResource",
          "description": "The effective network access policy for the environment."
        },
        "capability_directories": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "maxItems": 2000,
          "description": "Directories that contain capabilities exposed to the agent."
        },
        "skills": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/HostedSkillResource"
          },
          "minItems": 0,
          "maxItems": 2000,
          "description": "Skills installed in the environment, excluding their archive contents."
        },
        "plugins": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/HostedPluginResource"
          },
          "minItems": 0,
          "maxItems": 2000,
          "description": "Plugins installed in the environment, excluding their archive contents."
        },
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/HostedEnvironmentFileResource"
          },
          "minItems": 0,
          "maxItems": 50,
          "description": "Files available in the environment, excluding their contents."
        }
      },
      "required": [
        "type",
        "id",
        "packages",
        "network",
        "capability_directories",
        "skills",
        "plugins",
        "files"
      ],
      "additionalProperties": false,
      "description": "An environment hosted by OpenAI."
    },
    "EnvironmentResourceSelfHosted": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "self_hosted"
          ],
          "default": "self_hosted",
          "x-stainless-const": true,
          "description": "The type of the object. Always `self_hosted`."
        },
        "remote_url": {
          "type": "string",
          "minLength": 0,
          "description": "Pass this URL unchanged to `codex exec-server --remote` when connecting this environment."
        },
        "id": {
          "type": "string",
          "minLength": 0,
          "description": "The public ID of the environment."
        },
        "workspace_directory": {
          "type": "string",
          "minLength": 0,
          "description": "The absolute project directory inside the environment. Defaults to `/workspace`."
        },
        "capability_directories": {
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "maxItems": 2000,
          "description": "Directories that contain capabilities exposed to the agent."
        }
      },
      "required": [
        "type",
        "remote_url",
        "id",
        "workspace_directory",
        "capability_directories"
      ],
      "additionalProperties": false,
      "description": "An environment hosted by the application."
    },
    "FunctionCallItemResource": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "function_call"
          ],
          "default": "function_call",
          "x-stainless-const": true,
          "description": "The item type. Always `function_call`."
        },
        "id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the function call item."
        },
        "turn_id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the turn that contains this item."
        },
        "call_id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID used to submit the function result."
        },
        "name": {
          "type": "string",
          "minLength": 0,
          "description": "The name of the function to call."
        },
        "arguments": {
          "description": "The arguments to pass to the function."
        },
        "status": {
          "$ref": "#/$defs/FunctionCallStatusResource",
          "description": "The status of the function call."
        }
      },
      "required": [
        "type",
        "id",
        "turn_id",
        "call_id",
        "name",
        "arguments",
        "status"
      ],
      "additionalProperties": false,
      "description": "A function call produced by the agent."
    },
    "FunctionCallOutputItemResource": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the function call output item."
        },
        "turn_id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the turn that contains this item."
        },
        "type": {
          "type": "string",
          "enum": [
            "function_call_output"
          ],
          "default": "function_call_output",
          "x-stainless-const": true,
          "description": "The item type. Always `function_call_output`."
        },
        "call_id": {
          "type": "string",
          "minLength": 0,
          "description": "The ID of the function call that produced this output."
        },
        "status": {
          "$ref": "#/$defs/FunctionCallStatusResource",
          "description": "The status of the function call."
        },
        "output": {
          "anyOf": [
            {
              "$ref": "#/$defs/FunctionCallOutputResource"
            },
            {
              "type": "null"
            }
          ],
          "description": "The function result, if the call succeeded."
        },
        "error": {
          "type": [
            "string",
            "null"
          ],
          "minLength": 0,
          "description": "The error message, if the call failed."
        }
      },
      "required": [
        "id",
        "turn_id",
        "type",
        "call_id",
        "status",
        "output",
        "error"
      ],
      "additionalProperties": false,
      "description": "The result supplied for a function call."
    },
    "FunctionCallOutputResource": {
      "oneOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "type": "array",
          "items": {
            "$ref": "#/$defs/InputContentResource"
          },
          "minItems": 0,
          "maxItems": 2000
        }
      ],
      "description": "The text or model-input content supplied as a function result."
    },
    "FunctionCallStatusResource": {
      "type": "string",
      "enum": [
        "in_progress",
        "completed",
        "failed",
        "incomplete"
      ],
      "x-enumDescriptions": [
        "The call is in progress.",
        "The call completed successfully.",
        "The call failed.",
        "The call stopped before completing."
      ],
      "description": "The status of a tool call."
    },
    "HostedEnvironmentFileResource": {
      "oneOf": [
        {
          "$ref": "#/$defs/HostedEnvironmentFileResourceFileId"
        },
        {
          "$ref": "#/$defs/HostedEnvironmentFileResourceInline"
        }
      ],
      "x-oai-discriminator-values": [
        "file_id",
        "inline"
      ],
      "description": "Metadata for a file materialized in an OpenAI-hosted execution environment."
    },
    "HostedEnvironmentFileResourceFileId": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "file_id"
          ],
          "default": "file_id",
          "x-stainless-const": true,
          "description": "The type of the object. Always `file_id`."
        },
        "id": {
      

# --- truncated at 32 KB (137 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/openai/refs/heads/main/json-schema/openai-session-event-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/openai-session-event"
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.