ApiSchemas
ToolCallDecisionEvent
One shape from the contract, as it appears on the wire.
Used by sessions.annotate, sessions.events, sessions.send
JSON Schema
{
"type": "object",
"properties": {
"seq": {
"$ref": "#/components/schemas/EventSeq"
},
"sessionId": {
"$ref": "#/components/schemas/SessionId"
},
"at": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"tool.call.decision"
]
},
"toolCallId": {
"$ref": "#/components/schemas/ToolCallId"
},
"decision": {
"type": "string",
"enum": [
"allow",
"deny"
]
},
"message": {
"type": "string"
},
"input": {},
"decidedBy": {
"type": "string",
"enum": [
"api",
"expiry",
"superseded",
"identity_changed"
]
},
"actor": {
"type": "string"
}
},
"required": [
"seq",
"sessionId",
"at",
"type",
"toolCallId",
"decision",
"decidedBy"
],
"additionalProperties": false
}