generated: '2026-07-15' method: generated source: openapi/sinch-brands-openapi.yml, openapi/sinch-conversation-openapi.yml, openapi/sinch-elastic-sip-trunking-openapi.yml, openapi/sinch-fax-openapi.yml, openapi/sinch-numbers-openapi.yml, openapi/sinch-provisioning-openapi.yml, openapi/sinch-registration-openapi.yml, openapi/sinch-sms-openapi.yml, openapi/sinch-verification-openapi.yml, openapi/sinch-voice-openapi.yml 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: 133 by_action_class: connected: 59 acting: 74 by_consequence: read: 59 write: 59 physical: 11 safety-critical: 4 human_in_the_loop_required: 4 operations: - path: /v1/projects/{project_id}/brands method: get operationId: listBrands x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/brands method: post operationId: createBrand 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: /v1/projects/{project_id}/brands:submit method: post operationId: createAndSubmitBrand 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: /v1/projects/{project_id}/brands/{brand_id} method: get operationId: getBrand x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/brands/{brand_id} method: put operationId: updateBrand 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: /v1/projects/{project_id}/brands/{brand_id} method: delete operationId: deleteBrand 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: /v1/projects/{project_id}/brands/{brand_id}:submit method: post operationId: submitBrand 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: /v1/projects/{project_id}/brand-metadata method: get operationId: getBrandMetadata x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/messages:send method: post operationId: sendMessage 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: /v1/projects/{project_id}/messages method: get operationId: listMessages x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/messages/{message_id} method: get operationId: getMessage x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/messages/{message_id} method: delete operationId: deleteMessage 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: /v1/projects/{project_id}/contacts method: post operationId: createContact 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: /v1/projects/{project_id}/contacts method: get operationId: listContacts x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/contacts/{contact_id} method: get operationId: getContact x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/contacts/{contact_id} method: patch operationId: updateContact 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: /v1/projects/{project_id}/contacts/{contact_id} method: delete operationId: deleteContact 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: /v1/projects/{project_id}/contacts:merge method: post operationId: mergeContacts 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: /v1/projects/{project_id}/conversations method: get operationId: listConversations x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/conversations method: post operationId: createConversation 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: /v1/projects/{project_id}/conversations/{conversation_id} method: get operationId: getConversation x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/conversations/{conversation_id} method: patch operationId: updateConversation 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: /v1/projects/{project_id}/conversations/{conversation_id} method: delete operationId: deleteConversation 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: /v1/projects/{project_id}/conversations/{conversation_id}:stop method: post operationId: stopConversation 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: /v1/projects/{project_id}/apps method: get operationId: listApps x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/apps method: post operationId: createApp 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: /v1/projects/{project_id}/apps/{app_id} method: get operationId: getApp x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/apps/{app_id} method: patch operationId: updateApp 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: /v1/projects/{project_id}/apps/{app_id} method: delete operationId: deleteApp 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: /v1/projects/{project_id}/apps/{app_id}/webhooks method: get operationId: listWebhooks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/apps/{app_id}/webhooks method: post operationId: createWebhook 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: /v1/projects/{project_id}/webhooks/{webhook_id} method: get operationId: getWebhook x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/webhooks/{webhook_id} method: patch operationId: updateWebhook 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: /v1/projects/{project_id}/webhooks/{webhook_id} method: delete operationId: deleteWebhook 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: /v1/projects/{project_id}/events:send method: post operationId: sendEvent 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: /v1/projects/{project_id}/messages:transcode method: post operationId: transcodeMessage 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: /v1/projects/{project_id}/capability:query method: post operationId: queryCapability 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: /v1/projects/{project_id}/trunks method: get operationId: listTrunks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/trunks method: post operationId: createTrunk 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: /v1/projects/{project_id}/trunks/{trunk_id} method: get operationId: getTrunk x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/trunks/{trunk_id} method: patch operationId: updateTrunk 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: /v1/projects/{project_id}/trunks/{trunk_id} method: delete operationId: deleteTrunk 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: /v1/projects/{project_id}/trunks/{trunk_id}/sipEndpoints method: get operationId: listSipEndpoints x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/trunks/{trunk_id}/sipEndpoints method: post operationId: createSipEndpoint 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: /v1/projects/{project_id}/trunks/{trunk_id}/sipEndpoints/{endpoint_id} method: get operationId: getSipEndpoint x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/trunks/{trunk_id}/sipEndpoints/{endpoint_id} method: patch operationId: updateSipEndpoint 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: /v1/projects/{project_id}/trunks/{trunk_id}/sipEndpoints/{endpoint_id} method: delete operationId: deleteSipEndpoint 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: /v1/projects/{project_id}/trunks/{trunk_id}/phoneNumbers method: get operationId: listTrunkPhoneNumbers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/trunks/{trunk_id}/phoneNumbers method: post operationId: addPhoneNumberToTrunk 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: /v1/projects/{project_id}/trunks/{trunk_id}/phoneNumbers/{phone_number} method: delete operationId: removePhoneNumberFromTrunk 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: /v1/projects/{project_id}/trunks/{trunk_id}/accessControlLists method: get operationId: listAccessControlLists x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/trunks/{trunk_id}/accessControlLists method: post operationId: createAccessControlList 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: /v1/projects/{project_id}/trunks/{trunk_id}/accessControlLists/{acl_id} method: get operationId: getAccessControlList x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/trunks/{trunk_id}/accessControlLists/{acl_id} method: patch operationId: updateAccessControlList 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: /v1/projects/{project_id}/trunks/{trunk_id}/accessControlLists/{acl_id} method: delete operationId: deleteAccessControlList 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: /v3/projects/{project_id}/faxes method: post operationId: sendFax 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: /v3/projects/{project_id}/faxes method: get operationId: listFaxes x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v3/projects/{project_id}/faxes/{fax_id} method: get operationId: getFax x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v3/projects/{project_id}/faxes/{fax_id} method: delete operationId: deleteFaxContent 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: /v3/projects/{project_id}/faxes/{fax_id}/file method: get operationId: downloadFaxContent x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v3/projects/{project_id}/services method: post operationId: createService 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: /v3/projects/{project_id}/services method: get operationId: listServices x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v3/projects/{project_id}/services/{service_id} method: get operationId: getService x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v3/projects/{project_id}/services/{service_id} method: patch operationId: updateService 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: /v3/projects/{project_id}/services/{service_id} method: delete operationId: deleteService 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: /v3/projects/{project_id}/services/{service_id}/numbers method: get operationId: listServiceNumbers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v3/projects/{project_id}/services/{service_id}/emails method: post operationId: createFaxToEmail 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: /v3/projects/{project_id}/services/{service_id}/emails method: get operationId: listFaxToEmails x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v3/projects/{project_id}/services/{service_id}/emails/{email} method: delete operationId: deleteFaxToEmail 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: /v1/projects/{project_id}/availableNumbers method: get operationId: listAvailableNumbers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/availableNumbers/{phone_number} method: get operationId: getAvailableNumber x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/availableNumbers/{phone_number}:rent method: post operationId: rentNumber 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: /v1/projects/{project_id}/activeNumbers method: get operationId: listActiveNumbers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/activeNumbers/{phone_number} method: get operationId: getActiveNumber x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/activeNumbers/{phone_number} method: patch operationId: updateActiveNumber 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: /v1/projects/{project_id}/activeNumbers/{phone_number}:release method: post operationId: releaseNumber 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: /v1/projects/{project_id}/availableRegions method: get operationId: listAvailableRegions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/rcs/senders method: get operationId: listRcsSenders x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/rcs/senders method: post operationId: createRcsSender 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: /v1/projects/{project_id}/rcs/senders/{sender_id} method: get operationId: getRcsSender x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/rcs/senders/{sender_id} method: patch operationId: updateRcsSender 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: /v1/projects/{project_id}/rcs/senders/{sender_id} method: delete operationId: deleteRcsSender 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: /v1/projects/{project_id}/rcs/senders/{sender_id}/launch method: post operationId: launchRcsSender 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: /v1/projects/{project_id}/kakaoTalk/senders method: get operationId: listKakaoTalkSenders x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/kakaoTalk/senders method: post operationId: createKakaoTalkSender 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: /v1/projects/{project_id}/line/senders method: get operationId: listLineSenders x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/line/senders method: post operationId: createLineSender 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: /v1/projects/{project_id}/telegram/senders method: get operationId: listTelegramSenders x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/telegram/senders method: post operationId: createTelegramSender 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: /v1/projects/{project_id}/registrations method: get operationId: listRegistrations x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/registrations method: post operationId: createRegistration 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: /v1/projects/{project_id}/registrations/{registration_id} method: get operationId: getRegistration x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/registrations/{registration_id} method: patch operationId: updateRegistration 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: /v1/projects/{project_id}/registrations/{registration_id} method: delete operationId: deleteRegistration 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: /v1/projects/{project_id}/registrations/{registration_id}:submit method: post operationId: submitRegistration 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: /v1/projects/{project_id}/markets method: get operationId: listMarkets x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/projects/{project_id}/markets/{market_id} method: get operationId: getMarket x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /xms/v1/{service_plan_id}/batches method: post operationId: sendBatch 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: /xms/v1/{service_plan_id}/batches method: get operationId: listBatches x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /xms/v1/{service_plan_id}/batches/{batch_id} method: get operationId: getBatch x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /xms/v1/{service_plan_id}/batches/{batch_id} method: post operationId: updateBatch 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: /xms/v1/{service_plan_id}/batches/{batch_id}/cancel method: put operationId: cancelBatch 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: /xms/v1/{service_plan_id}/batches/{batch_id}/dry_run method: post operationId: dryRunBatch 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: /xms/v1/{service_plan_id}/batches/{batch_id}/delivery_report method: get operationId: getBatchDeliveryReport x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /xms/v1/{service_plan_id}/batches/{batch_id}/delivery_report/{recipient_msisdn} method: get operationId: getRecipientDeliveryReport x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /xms/v1/{service_plan_id}/delivery_reports method: get operationId: listDeliveryReports x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /xms/v1/{service_plan_id}/groups method: post operationId: createGroup 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: /xms/v1/{service_plan_id}/groups method: get operationId: listGroups x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /xms/v1/{service_plan_id}/groups/{group_id} method: get operationId: getGroup x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /xms/v1/{service_plan_id}/groups/{group_id} method: post operationId: updateGroup 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: /xms/v1/{service_plan_id}/groups/{group_id} method: delete operationId: deleteGroup 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: /xms/v1/{service_plan_id}/groups/{group_id}/members method: get operationId: getGroupMembers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /xms/v1/{service_plan_id}/inbounds method: get operationId: listInboundMessages x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /xms/v1/{service_plan_id}/inbounds/{inbound_id} method: get operationId: getInboundMessage x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /verification/v1/verifications method: post operationId: startVerification 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: /verification/v1/verifications/{type}/{endpoint} method: put operationId: reportVerification 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: /verification/v1/verifications/id/{id} method: put operationId: reportVerificationById 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: /verification/v1/verifications/{type}/{endpoint}/status method: get operationId: getVerificationStatusByIdentity x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /verification/v1/verifications/id/{id}/status method: get operationId: getVerificationStatusById x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /verification/v1/verifications/reference/{reference}/status method: get operationId: getVerificationStatusByReference x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /calling/v1/callouts method: post operationId: createCallout 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: /calling/v1/calls/id/{call_id} method: get operationId: getCall x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /calling/v1/calls/id/{call_id} method: patch operationId: updateCall 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: /calling/v1/conferences/id/{conference_id} method: get operationId: getConference x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /calling/v1/conferences/id/{conference_id} method: delete operationId: kickAllFromConference 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: /calling/v1/conferences/id/{conference_id}/{call_id} method: patch operationId: manageConferenceParticipant 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: /calling/v1/conferences/id/{conference_id}/{call_id} method: delete operationId: kickParticipantFromConference 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: /calling/v1/configuration/numbers method: get operationId: getNumbers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /calling/v1/configuration/callbacks/applications/{application_key} method: get operationId: getApplicationCallbacks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /calling/v1/configuration/callbacks/applications/{application_key} method: post operationId: updateApplicationCallbacks 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: /calling/v1/configuration/numbers/{number} method: get operationId: getNumberConfiguration x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /calling/v1/configuration/numbers/{number} method: post operationId: updateNumberConfiguration 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: /calling/v1/configuration/numbers/{number} method: delete operationId: unassignNumber 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