OutRival Agentic Access
OutRival exposes 100 API operations that an AI agent could call, of which 52 are state-changing ‘acting’ operations. This is a recommended x-agentic-access execution contract — the scope, audience, consequence tier, short-lived token constraints, and escalation each action should carry before it is handed to an autonomous agent.
By consequence: 48 read and 52 safety-critical.
52 operations are classed safety-critical and should require human-in-the-loop approval at runtime.
Contracts are classified heuristically from the provider’s OpenAPI and refresh on every APIs.io network build; audience is bound per deployment. The model follows Curity’s Access Intelligence (apidays Munich 2026). Browse every provider’s agent contracts at agentic-access.apis.io.
By consequence
Highest-consequence actions
The physical and safety-critical operations an agent could invoke — the ones that most warrant scoped tokens, tight TTLs, and escalation. Full per-operation contracts are in the source below.
| Method | Path | Consequence | Human-in-loop |
|---|---|---|---|
| POST | /rest/v1/ai-chats/messages | safety-critical | required |
| POST | /rest/v1/assistants | safety-critical | required |
| POST | /rest/v1/assistants/duplicate/{id} | safety-critical | required |
| PATCH | /rest/v1/assistants/{assistantId}/chat | safety-critical | required |
| PATCH | /rest/v1/assistants/{assistantId}/sms | safety-critical | required |
| PATCH | /rest/v1/assistants/{assistantId}/theme | safety-critical | required |
| PATCH | /rest/v1/assistants/{assistantId}/voice | safety-critical | required |
| PATCH | /rest/v1/assistants/{id} | safety-critical | required |
| DELETE | /rest/v1/assistants/{id} | safety-critical | required |
| POST | /rest/v1/call/phone | safety-critical | required |
| POST | /rest/v1/files/upload | safety-critical | required |
| DELETE | /rest/v1/files/{id} | safety-critical | required |
| POST | /rest/v1/organization/keys | safety-critical | required |
| POST | /rest/v1/organization/keys | safety-critical | required |
| PATCH | /rest/v1/organization/keys/{keyId} | safety-critical | required |
| DELETE | /rest/v1/organization/keys/{keyId} | safety-critical | required |
| PATCH | /rest/v1/organization/keys/{keyId} | safety-critical | required |
| DELETE | /rest/v1/organization/keys/{keyId} | safety-critical | required |
| POST | /rest/v1/organization/token | safety-critical | required |
| POST | /rest/v1/organization/token | safety-critical | required |
| POST | /rest/v1/settings | safety-critical | required |
| PATCH | /rest/v1/settings/{id} | safety-critical | required |
| DELETE | /rest/v1/settings/{id} | safety-critical | required |
| POST | /rest/v1/webhooks/vapi/custom-llm/chat/completions | safety-critical | required |
| POST | /rest/v1/webhooks/vapi/server-messages | safety-critical | required |
Source
Agentic Access
generated: '2026-07-20'
method: generated
source: openapi/outrival-v1-openapi-original.json, openapi/outrival-v2-openapi-original.json
description: Recommended x-agentic-access execution contracts, classified heuristically from
the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind
audience per deployment. See research/curity/agentic-governance/.
summary:
operations: 100
by_action_class:
acting: 52
connected: 48
by_consequence:
safety-critical: 52
read: 48
human_in_the_loop_required: 52
operations:
- path: /rest/v1/assistants
method: post
operationId: AssistantsController_create
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/assistants
method: get
operationId: AssistantsController_findAll
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/assistants/templates
method: get
operationId: AssistantsController_findAllTemplates
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/assistants/{id}
method: get
operationId: AssistantsController_findOne
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/assistants/{id}
method: patch
operationId: AssistantsController_update
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/assistants/{id}
method: delete
operationId: AssistantsController_remove
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/assistants/duplicate/{id}
method: post
operationId: AssistantsController_duplicate
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/assistants/{assistantId}/voice
method: patch
operationId: VoiceController_create
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/assistants/{assistantId}/voice
method: get
operationId: VoiceController_config
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/assistants/{assistantId}/sms
method: patch
operationId: SmsController_create
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/assistants/{assistantId}/sms
method: get
operationId: SmsController_config
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/assistants/{assistantId}/chat
method: patch
operationId: ChatController_create
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/assistants/{assistantId}/chat
method: get
operationId: ChatController_config
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/assistants/{assistantId}/theme
method: patch
operationId: ThemeController_create
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/assistants/{assistantId}/theme
method: get
operationId: ThemeController_config
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/assistants/{assistantId}/logs
method: get
operationId: AssistantLogsController_logs
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/assistants/{assistantId}/log/{logId}
method: get
operationId: AssistantLogsController_log
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/settings/secret
method: get
operationId: SettingsController_generateWebhookSecret
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/settings
method: get
operationId: SettingsController_getSettings
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/settings
method: post
operationId: SettingsController_create
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/settings/{id}
method: patch
operationId: SettingsController_update
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/settings/{id}
method: delete
operationId: SettingsController_delete
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/organization
method: get
operationId: OrganizationController_getOrganization
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/organization/token
method: post
operationId: OrganizationController_generateOrganizationToken
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/organization/keys
method: get
operationId: OrganizationKeysController_getOrganizationKeys
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/organization/keys
method: post
operationId: OrganizationKeysController_create
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/organization/keys/public
method: get
operationId: OrganizationKeysController_getOrganizationPublicKey
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/organization/keys/{keyId}
method: get
operationId: OrganizationKeysController_getOrganizationKey
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/organization/keys/{keyId}
method: patch
operationId: OrganizationKeysController_update
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/organization/keys/{keyId}
method: delete
operationId: OrganizationKeysController_remove
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/ai-chats/messages
method: post
operationId: MessagesController_create
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/files/upload
method: post
operationId: FilesController_upload
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/files
method: get
operationId: FilesController_findAll
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/files/{id}/download
method: get
operationId: FilesController_getDownloadLink
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/files/{id}
method: delete
operationId: FilesController_deleteFile
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/webhooks/vapi/server-messages
method: post
operationId: VapiWebhooksController_onServerMessage
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/webhooks/vapi/custom-llm/chat/completions
method: post
operationId: VapiWebhooksController_onOpenAICustomLLMCall
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/call/phone
method: post
operationId: VapiController_phoneCallInitiate
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/projects
method: get
operationId: WorkflowProjectController_findAll
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/projects
method: post
operationId: WorkflowProjectController_createProject
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/projects/{id}
method: get
operationId: WorkflowProjectController_findOne
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/projects/{id}
method: patch
operationId: WorkflowProjectController_updateProject
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/projects/{id}
method: delete
operationId: WorkflowProjectController_deleteProject
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/projects/{id}/workflows
method: get
operationId: WorkflowProjectController_projectWorkflows
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/projects/{id}/deployments
method: get
operationId: WorkflowProjectController_projectWorkflowDeployments
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/projects/{projectId}/variables
method: get
operationId: VariableController_getAllVariables
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/projects/{projectId}/variables
method: post
operationId: VariableController_createVariable
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/projects/{projectId}/variables/{variableId}
method: patch
operationId: VariableController_updateVariable
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/projects/{projectId}/variables/{variableId}
method: delete
operationId: VariableController_deleteVariable
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/workflows
method: get
operationId: WorkflowController_findAll
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/workflows
method: post
operationId: WorkflowController_createWorkflow
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/workflows/{id}
method: get
operationId: WorkflowController_findOne
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/workflows/{id}
method: patch
operationId: WorkflowController_updateWorkflow
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/workflows/{id}
method: delete
operationId: WorkflowController_deleteWorkflow
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/workflows/{id}/nodes
method: get
operationId: WorkflowController_nodes
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/workflows/{id}/nodes
method: post
operationId: WorkflowController_addNode
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/workflows/{id}/nodes/config
method: get
operationId: WorkflowController_nodesWithConfig
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/workflows/{id}/edges
method: get
operationId: WorkflowController_edges
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/edges
method: get
operationId: EdgeController_findAll
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/edges
method: post
operationId: EdgeController_createEdge
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/edges/{id}
method: get
operationId: EdgeController_findOne
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/edges/{id}
method: patch
operationId: EdgeController_updateEdge
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/edges/{id}
method: delete
operationId: EdgeController_deleteEdge
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/nodes
method: get
operationId: NodeController_findAll
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/nodes/{id}
method: get
operationId: NodeController_findOne
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/nodes/{id}
method: patch
operationId: NodeController_update
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/nodes/{id}
method: delete
operationId: NodeController_remove
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/nodes/duplicate/{id}
method: post
operationId: NodeController_duplicate
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/nodes/{id}/config
method: get
operationId: NodeController_nodeWithConfig
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/nodes/{nodeId}/voice
method: patch
operationId: VoiceConfigController_create
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/nodes/{nodeId}/voice
method: get
operationId: VoiceConfigController_config
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/nodes/{nodeId}/sms
method: patch
operationId: SmsConfigController_create
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/nodes/{nodeId}/sms
method: get
operationId: SmsConfigController_config
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/nodes/{nodeId}/chat
method: patch
operationId: ChatConfigController_create
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/nodes/{nodeId}/chat
method: get
operationId: ChatConfigController_config
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/deployments/{id}
method: get
operationId: WorkflowDeploymentController_projectWorkflowDeployment
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/deployments/{id}
method: delete
operationId: WorkflowDeploymentController_deleteWorkflowDeployment
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/deployments/{id}
method: post
operationId: WorkflowDeploymentController_updateWorkflowDeployment
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/deployments
method: post
operationId: WorkflowDeploymentController_createWorkflowDeployment
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/deployments/{workflowDeploymentId}/theme
method: patch
operationId: ThemeController_create
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/deployments/{workflowDeploymentId}/theme
method: get
operationId: ThemeController_config
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/organization
method: get
operationId: OrganizationController_getOrganization
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/organization/token
method: post
operationId: OrganizationController_generateOrganizationToken
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/organization/keys
method: get
operationId: OrganizationKeysController_getOrganizationKeys
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/organization/keys
method: post
operationId: OrganizationKeysController_create
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/organization/keys/public
method: get
operationId: OrganizationKeysController_getOrganizationPublicKey
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/organization/keys/{keyId}
method: get
operationId: OrganizationKeysController_getOrganizationKey
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v1/organization/keys/{keyId}
method: patch
operationId: OrganizationKeysController_update
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v1/organization/keys/{keyId}
method: delete
operationId: OrganizationKeysController_remove
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/ai-chats/messages
method: post
operationId: MessagesController_create
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/ai-chats/{aiChatId}/sessions
method: get
operationId: SessionsController_getByChatId
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/ai-chats/project/{projectId}/sessions
method: get
operationId: SessionsController_getByProjectId
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/ai-chats/sessions/{sessionId}/logs
method: get
operationId: SessionsController_getBySession
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/ai-chats/{AiChatId}/logs
method: get
operationId: SessionsController_getByAiChat
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/ai-chats/user/{userId}/logs
method: get
operationId: SessionsController_getByUserId
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/ai-chats/workflow/{workflowId}/logs
method: get
operationId: SessionsController_getByWorkflowId
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/call/phone
method: post
operationId: VapiController_phoneCallInitiate
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/call/phone-numbers
method: get
operationId: VapiController_getActivePhoneNumbers
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /rest/v2/webhooks/vapi/server-messages
method: post
operationId: VapiWebhooksController_onServerMessage
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /rest/v2/webhooks/vapi/custom-llm/chat/completions
method: post
operationId: VapiWebhooksController_onOpenAICustomLLMCall
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
aud
# --- truncated at 32 KB (32 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/outrival/refs/heads/main/agentic-access/outrival-agentic-access.yml