8x8 Agentic Access
8x8 exposes 312 API operations that an AI agent could call, of which 147 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: 165 read, 119 write, 27 physical, and 1 safety-critical.
1 operation 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 |
|---|---|---|---|
| PATCH | /{campaign-id} | safety-critical | required |
| POST | /api/chat/v1/messages/ | physical | conditional |
| POST | /api/v1/subaccounts/{subAccountId}/callflows | physical | conditional |
| POST | /api/v1/subaccounts/{subAccountId}/events | physical | conditional |
| POST | /api/v1/subaccounts/{subAccountId}/lon | physical | conditional |
| POST | /api/v1/subaccounts/{subAccountId}/lon/batch | physical | conditional |
| POST | /api/v1/subaccounts/{subAccountId}/messages | physical | conditional |
| POST | /api/v1/subaccounts/{subAccountId}/messages | physical | conditional |
| POST | /api/v1/subaccounts/{subAccountId}/messages/batch | physical | conditional |
| POST | /api/v1/subaccounts/{subAccountId}/messages/batch | physical | conditional |
| DELETE | /api/v1/subaccounts/{subAccountId}/messages/batch/{batchId} | physical | conditional |
| DELETE | /api/v1/subaccounts/{subAccountId}/messages/batch/{batchId} | physical | conditional |
| DELETE | /api/v1/subaccounts/{subAccountId}/messages/{umid} | physical | conditional |
| DELETE | /api/v1/subaccounts/{subAccountId}/messages/{umid} | physical | conditional |
| POST | /api/v1/subaccounts/{subAccountId}/messages/{umid}/feedback | physical | conditional |
| POST | /api/v1/subaccounts/{subAccountId}/messages/{umid}/read | physical | conditional |
| POST | /api/v1/subaccounts/{subAccountId}/surveys/{surveyId}/messages | physical | conditional |
| POST | /api/v1/subaccounts/{subAccountId}/surveys/{surveyId}/messages/batch | physical | conditional |
| PUT | /api/v1/tenant/{tenantId}/conversations/{conversationId}/cards/{cardId}/action-execute | physical | conditional |
| PUT | /api/v1/tenant/{tenantId}/conversations/{conversationId}/cards/{cardId}/action-submit | physical | conditional |
| POST | /api/v1/whatsapp/subaccounts/{subAccountId}/channels/{channelId}/directSend/sample | physical | conditional |
| POST | /chat-gateway/v1/conversations/{conversationId}/messages | physical | conditional |
| POST | /chat-gateway/v1/conversations/{conversationId}/read-receipt | physical | conditional |
| POST | /chat-gateway/v1/conversations/{conversationId}/thinking | physical | conditional |
| POST | /chat-gateway/v1/conversations/{conversationId}/typing | physical | conditional |
Source
Agentic Access
generated: '2026-07-25'
method: generated
source: openapi/8x8-actions-events-8x8-contact-center-chat-api-v2.json, openapi/8x8-actions-events-8x8-contact-center-dynamic-campaigns.json,
openapi/8x8-actions-events-8x8-contact-center-new-campaigns.json, openapi/8x8-actions-events-chapi---chat-api.json,
openapi/8x8-actions-events-contact-center-agent-status-api.json, openapi/8x8-actions-events-contact-center-call-api.json,
openapi/8x8-actions-events-contact-center-chat-gateway-v1.yml, openapi/8x8-administration-address-api-v1.yaml,
openapi/8x8-administration-operation-api-v1.yaml, openapi/8x8-administration-phonenumber-api-v1.yaml,
openapi/8x8-administration-ringgroup-api-v1.yaml, openapi/8x8-administration-site-api-v1.yaml,
openapi/8x8-administration-user-api-v1.yaml, openapi/8x8-analytics-8x8-analytics-for-contact-center-historical-metrics-api.json,
openapi/8x8-analytics-8x8-analytics-for-contact-center-real-time-metrics-api.json, openapi/8x8-analytics-audit-records-api.json,
openapi/8x8-analytics-cloud-storage-service-public-api.json, openapi/8x8-analytics-customer-360-public-api.json,
openapi/8x8-analytics-quality-management-and-speech-analytics-api.json, openapi/8x8-analytics-work-analytics-customer-data.json,
openapi/8x8-analytics-work-analytics-historical.json, openapi/8x8-analytics-work-analytics.json,
openapi/8x8-connect-automation-api.json, openapi/8x8-connect-business-messaging-api.json,
openapi/8x8-connect-common-models.json, openapi/8x8-connect-configuration-api.json, openapi/8x8-connect-contacts-api.json,
openapi/8x8-connect-number-lookup-api.json, openapi/8x8-connect-number-masking-api.json, openapi/8x8-connect-sms-api.json,
openapi/8x8-connect-verification-api.json, openapi/8x8-connect-video-interaction-api.json,
openapi/8x8-connect-voice-v1-api.json, openapi/8x8-contactcenter-8x8-contact-center-chat-api.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: 312
by_action_class:
acting: 147
connected: 165
by_consequence:
write: 119
read: 165
physical: 27
safety-critical: 1
human_in_the_loop_required: 1
operations:
- path: /oauth/v2/token
method: post
operationId: createaccesstoken
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- basic
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/web-hooks
method: get
operationId: getwebhooks
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- vcc-chat.webhooks.read
token:
max-ttl: 3600
audit: none
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/web-hooks
method: post
operationId: createwebhook
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- vcc-chat.webhooks.write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/web-hooks/{web-hook-id}
method: get
operationId: getwebhookbyid
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- vcc-chat.webhooks.read
token:
max-ttl: 3600
audit: none
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/web-hooks/{web-hook-id}
method: put
operationId: updatewebhook
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- vcc-chat.webhooks.write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/web-hooks/{web-hook-id}
method: delete
operationId: deletewebhookbyid
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- vcc-chat.webhooks.write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/web-hooks/verify
method: post
operationId: verifywebhook
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- vcc-chat.webhooks.read
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /vcc/{region}/chat/v2/jwk/{jwk-id}/public
method: get
operationId: getjwkpublickey
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/channels
method: get
operationId: getchatapichannels
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- vcc-chat.channels.read
token:
max-ttl: 3600
audit: none
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/channels
method: post
operationId: createchatapichannel
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- vcc-chat.channels.write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/channels/{channel-id}
method: get
operationId: getchatapichannel
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- vcc-chat.channels.read
token:
max-ttl: 3600
audit: none
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/channels/{channel-id}
method: put
operationId: updatechatapichannel
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- vcc-chat.channels.write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/channels/{channel-id}
method: delete
operationId: deletechatapichannelbyid
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- vcc-chat.channels.write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/conversations
method: get
operationId: getcctransactions
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- vcc-chat.conversations.read
token:
max-ttl: 3600
audit: none
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/conversations
method: post
operationId: createcctransaction
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- vcc-chat.conversations.write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/conversations/{conversation-id}
method: get
operationId: getcctransaction
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- vcc-chat.conversations.read
token:
max-ttl: 3600
audit: none
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/conversations/{conversation-id}/participants
method: get
operationId: getparticipantsforcctransaction
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- vcc-chat.conversations.read
token:
max-ttl: 3600
audit: none
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/conversations/{conversation-id}/participants/customer
method: delete
operationId: customerparticipantleavecctransaction
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- vcc-chat.conversations.write
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/conversations/{conversation-id}/messages
method: get
operationId: getmessagesforcctransaction
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- vcc-chat.conversations.read
token:
max-ttl: 3600
audit: none
- path: /vcc/{region}/chat/v2/tenant/{tenant-id}/conversations/{conversation-id}/messages
method: post
operationId: sendmessagetocctransaction
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- vcc-chat.conversations.write
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /{campaign-id}
method: patch
operationId: changecampaignstatus
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: /{campaign-id}/customers
method: post
operationId: addcustomer
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /{campaign-id}/customers/{customer-id}
method: delete
operationId: deletecustomer
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /{campaignId}/records
method: post
operationId: addRecords
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /{campaignId}
method: patch
operationId: modifyCampaign
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /api/chat/v1/messages/
method: post
operationId: sendmessageusingpost
x-agentic-access:
action-class: acting
consequence: physical
subject: required
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /api/chat/v1/messages
method: get
operationId: getmessagesusingget_1
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /tenants/{tenantId}/agentstatus/agents
method: get
operationId: getagentsstatus
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /tenants/{tenantId}/agentstatus/agents/bulk
method: post
operationId: setagentsstatuses
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{tenantId}/agentstatus/agents/{agentId}
method: get
operationId: getagentstatus
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /tenants/{tenantId}/agentstatus/agents/{agentId}
method: put
operationId: setagentstatus
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{tenantId}/calls
method: post
operationId: placePhoneCall
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{tenantId}/calls/{interactionId}/agent/{agentId}/transaction-codes
method: put
operationId: addTransactionCodes
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{tenantId}/calls/{interactionId}
method: delete
operationId: deletePhoneInteraction
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{tenantId}/calls/{interactionId}/agent/{agentId}
method: delete
operationId: hangupAgentHandlingInteraction
x-agentic-access:
action-class: acting
consequence: physical
subject: required
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{tenantId}/agents/{agentId}/calls
method: delete
operationId: hangupAgentLines
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{tenantId}/agents/{agentId}/calls/line/{lineNo}
method: delete
operationId: hangupAgentLine
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/webhooks
method: get
operationId: getwebhooks-1
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- Contact Center Chat Gateway
token:
max-ttl: 3600
audit: none
- path: /chat-gateway/v1/webhooks
method: post
operationId: createwebhook-1
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/webhooks/{webhookId}
method: get
operationId: getwebhookbyid-1
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- Contact Center Chat Gateway
token:
max-ttl: 3600
audit: none
- path: /chat-gateway/v1/webhooks/{webhookId}
method: put
operationId: updatewebhook-1
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/webhooks/{webhookId}
method: delete
operationId: deletewebhookbyid-1
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/webhooks/verify
method: post
operationId: verifywebhook-1
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/jwk/{jwkId}/public
method: get
operationId: getjwkpublickey-1
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /chat-gateway/v1/channels
method: get
operationId: getchatapichannels-1
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- Contact Center Chat Gateway
token:
max-ttl: 3600
audit: none
- path: /chat-gateway/v1/channels
method: post
operationId: createchatapichannel-1
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/channels/{channelId}
method: get
operationId: getchatapichannel-1
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- Contact Center Chat Gateway
token:
max-ttl: 3600
audit: none
- path: /chat-gateway/v1/channels/{channelId}
method: put
operationId: updatechatapichannel-1
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/channels/{channelId}
method: delete
operationId: deletechatapichannelbyid-1
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/conversations
method: get
operationId: getcctransactions-1
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- Contact Center Chat Gateway
token:
max-ttl: 3600
audit: none
- path: /chat-gateway/v1/conversations
method: post
operationId: createcctransaction-1
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/conversations/{conversationId}
method: put
operationId: putcctransaction
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/conversations/{conversationId}
method: patch
operationId: patchcctransaction
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/conversations/{conversationId}
method: get
operationId: getcctransaction-1
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- Contact Center Chat Gateway
token:
max-ttl: 3600
audit: none
- path: /chat-gateway/v1/conversations/{conversationId}/interactions
method: get
operationId: getccinteractions
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- Contact Center Chat Gateway
token:
max-ttl: 3600
audit: none
- path: /chat-gateway/v1/conversations/{conversationId}/post-agent-assignment
method: post
operationId: createpostagentassignment
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/conversations/{conversationId}/typing
method: post
operationId: sendtypingindicator
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/conversations/{conversationId}/thinking
method: post
operationId: sendthinkingindicator
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/conversations/{conversationId}/read-receipt
method: post
operationId: sendreadreceipt
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/conversations/{conversationId}/participants
method: get
operationId: getparticipantsforcctransaction-1
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- Contact Center Chat Gateway
token:
max-ttl: 3600
audit: none
- path: /chat-gateway/v1/conversations/{conversationId}/participants/user
method: patch
operationId: userparticipantleavecctransaction
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/conversations/{conversationId}/messages
method: get
operationId: getmessagesforcctransaction-1
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- Contact Center Chat Gateway
token:
max-ttl: 3600
audit: none
- path: /chat-gateway/v1/conversations/{conversationId}/messages
method: post
operationId: sendmessagetocctransaction-1
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/conversations/{conversationId}/messages/{messageId}
method: get
operationId: getmessagebyidforcctransaction
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- Contact Center Chat Gateway
token:
max-ttl: 3600
audit: none
- path: /chat-gateway/v1/conversations/{conversationId}/attachments
method: get
operationId: getconversationattachments
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- Contact Center Chat Gateway
token:
max-ttl: 3600
audit: none
- path: /chat-gateway/v1/conversations/{conversationId}/attachments
method: post
operationId: addconversationattachments
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /chat-gateway/v1/conversations/{conversationId}/attachments/{attachmentId}
method: get
operationId: getconversationattachment
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- Contact Center Chat Gateway
token:
max-ttl: 3600
audit: none
- path: /chat-gateway/v1/conversations/{conversationId}/attachments/{attachmentId}/content
method: get
operationId: downloadattachmentforchatapiconversation
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- Contact Center Chat Gateway
token:
max-ttl: 3600
audit: none
- path: /chat-gateway/v1/conversations/{conversationId}/messages/{messageId}/cards
method: get
operationId: getcardsforcctransaction
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- Contact Center Chat Gateway
token:
max-ttl: 3600
audit: none
- path: /api/v1/tenant/{tenantId}/conversations/{conversationId}/cards/{cardId}/action-submit
method: put
operationId: updatecardactionsubmit
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /api/v1/tenant/{tenantId}/conversations/{conversationId}/cards/{cardId}/action-execute
method: put
operationId: updatecardactionexecute
x-agentic-access:
action-class: acting
consequence: physical
subject: required
scope:
- Contact Center Chat Gateway
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /addresses
method: get
operationId: listAddresses
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /addresses
method: post
operationId: createAddress
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /addresses/{addressId}
method: get
operationId: getAddress
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /addresses/{addressId}
method: delete
operationId: deleteAddress
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /operations/{operationId}
method: get
operationId: getOperation
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /phone-numbers
method: get
operationId: listPhoneNumbers
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /phone-numbers/{phoneNumber}
method: get
operationId: getPhoneNumber
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /ring-groups
method: get
operationId: listRingGroups
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /ring-groups
method: post
operationId: createRingGroup
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /ring-groups/{ringGroupId}
method: get
operationId: getRingGroup
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /ring-groups/{ringGroupId}
method: put
operationId: updateRingGroup
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /ring-groups/{ringGroupId}
method: delete
operationId: deleteRingGroup
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /ring-groups/{ringGroupId}/update-members
method: post
operationId: updateRingGroupMembers
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /sites
method: post
operationId: createSite
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /sites
method: get
operationId: listSites
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /sites/{siteId}
method: get
operationId: getSite
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /sites/{siteId}
method: put
operationId: updateSite
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
# --- truncated at 32 KB (97 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/8x8/refs/heads/main/agentic-access/8x8-agentic-access.yml