Nfon Agentic Access
Nfon exposes 496 API operations that an AI agent could call, of which 226 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: 270 read, 206 write, and 20 safety-critical.
20 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 | /tenants/{participantExternalIdentifier}/devices/{uniqueIdentifier}/reset-authentication | safety-critical | required |
| POST | /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/skills | safety-critical | required |
| PUT | /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/skills/login-status | safety-critical | required |
| POST | /tenants/{participantExternalIdentifier}/targets/skill-services | safety-critical | required |
| PUT | /tenants/{participantExternalIdentifier}/targets/skill-services/{serviceNumber} | safety-critical | required |
| DELETE | /tenants/{participantExternalIdentifier}/targets/skill-services/{serviceNumber} | safety-critical | required |
| PUT | /tenants/{participantExternalIdentifier}/targets/skill-services/{serviceNumber}/destination-on-rejection | safety-critical | required |
| POST | /tenants/{participantExternalIdentifier}/targets/skill-services/{serviceNumber}/inbound-trunk-numbers | safety-critical | required |
| DELETE | /tenants/{participantExternalIdentifier}/targets/skill-services/{serviceNumber}/inbound-trunk-numbers/{didNumber} | safety-critical | required |
| POST | /tenants/{participantExternalIdentifier}/targets/skill-services/{serviceNumber}/members | safety-critical | required |
| PUT | /tenants/{participantExternalIdentifier}/targets/skill-services/{serviceNumber}/members/{extensionNumber} | safety-critical | required |
| DELETE | /tenants/{participantExternalIdentifier}/targets/skill-services/{serviceNumber}/members/{extensionNumber} | safety-critical | required |
| PUT | /tenants/{participantExternalIdentifier}/targets/skill-services/{serviceNumber}/timeout | safety-critical | required |
| DELETE | /tenants/{participantExternalIdentifier}/targets/skill-services/{serviceNumber}/timeout | safety-critical | required |
| POST | /tenants/{participantExternalIdentifier}/targets/time-control-services | safety-critical | required |
| PUT | /tenants/{participantExternalIdentifier}/targets/time-control-services/{serviceNumber} | safety-critical | required |
| DELETE | /tenants/{participantExternalIdentifier}/targets/time-control-services/{serviceNumber} | safety-critical | required |
| POST | /tenants/{participantExternalIdentifier}/targets/time-control-services/{serviceNumber}/inbound-trunk-numbers | safety-critical | required |
| DELETE | /tenants/{participantExternalIdentifier}/targets/time-control-services/{serviceNumber}/inbound-trunk-numbers/{didNumber} | safety-critical | required |
| PUT | /tenants/{tenant}/stop-trial-period | safety-critical | required |
Source
Agentic Access
generated: '2026-07-20'
method: generated
source: openapi/nfon-call-history-api-openapi.yml, openapi/nfon-cti-api-openapi.yml, openapi/nfon-pbx-configuration-api-openapi.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: 496
by_action_class:
connected: 270
acting: 226
by_consequence:
read: 270
write: 206
safety-critical: 20
human_in_the_loop_required: 20
operations:
- path: /records
method: get
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /records
method: delete
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: /records/{uuid}
method: get
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /records/{uuid}
method: delete
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: /login
method: post
operationId: createToken
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: /login
method: put
operationId: refreshAccessToken
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: /.well-known/jwks.json
method: get
operationId: publicKeyWellKnown
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /extensions/phone/data
method: get
operationId: getPhoneExtensionData
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /extensions/phone/states
method: get
operationId: getState
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /extensions/phone/calls
method: post
operationId: originate
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: /extensions/phone/calls
method: get
operationId: stream
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /extensions/phone/calls/{uuid}
method: delete
operationId: cancel
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: /accounts/{accountSalesForceId}/sites/{siteSalesforceId}
method: get
operationId: get_2
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
token:
max-ttl: 3600
audit: none
- path: /accounts/{accountSalesForceId}/sites/{siteSalesforceId}
method: put
operationId: put
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /contract-types
method: get
operationId: get_3
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
token:
max-ttl: 3600
audit: none
- path: /contract-types/{contractType}
method: get
operationId: get_4
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
token:
max-ttl: 3600
audit: none
- path: /sites/{oldID}/replace/{newID}
method: put
operationId: replaceSite
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- bss.license-manage
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{tenant}/virtual-fax-extensions/bulk
method: get
operationId: bulkExportVirtualFaxExtensions
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{tenant}/virtual-fax-extensions/bulk
method: post
operationId: bulkImportVirtualFaxExtensions
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /sites/{siteId}
method: delete
operationId: deleteSite
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- bss.license-manage
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{tenant}
method: patch
operationId: updateTenant
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- bss.license-manage
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{tenant}/billing-extensions
method: post
operationId: createBillingExtensions
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- bss.license-manage
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /directcall-numbers/{number}
method: get
operationId: get_202
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /tenants/{tenant}/clip-screened-prefixes
method: post
operationId: createClipScreenedPrefix
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- bss.license-manage
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /integration-types
method: get
operationId: get_203
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /integration-types
method: post
operationId: post_54
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /integration-types/{integrationId}
method: put
operationId: put_56
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /integration-types/{integrationId}
method: delete
operationId: delete_56
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /integration-types/{integrationId}
method: get
operationId: get_204
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/contracts
method: get
operationId: get_31
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/contracts
method: post
operationId: post_5
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/voice-recording-profiles/{voiceRecordingProfileId}
method: get
operationId: get_194
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /operators/{operatorId}
method: get
operationId: get_206
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
token:
max-ttl: 3600
audit: none
- path: /operators/{operatorId}
method: put
operationId: put_57
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/targets/group-services/available-destinations-on-timeout
method: get
operationId: get_176
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/frontdesk-services/{serviceNumber}/target/{targetServiceNumber}
method: put
operationId: updateTargetByTargetId
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/targets/frontdesk-services/{serviceNumber}/target/{targetServiceNumber}
method: delete
operationId: deleteTarget
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/targets/frontdesk-services/{serviceNumber}/target/{targetServiceNumber}
method: get
operationId: getTargetByTargetId
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions
method: get
operationId: get_66
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions
method: post
operationId: post_15
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/codec-profiles
method: get
operationId: get_26
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/default-system-integrator
method: get
operationId: get_11
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/default-system-integrator
method: put
operationId: put_1
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.operator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/targets/skill-services
method: get
operationId: get_138
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/skill-services
method: post
operationId: post_44
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /tenants/{participantExternalIdentifier}/targets/ivr-services/available-general-announcements
method: get
operationId: get_112
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /operators/{operatorId}/pbx-groups/{pbxGroupName}
method: get
operationId: get_211
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.operator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/devices/{deviceType}/{baseId}/license-keys
method: get
operationId: get_40
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/devices/{deviceType}/{baseId}/license-keys
method: post
operationId: post_11
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/available-internal-outgoings
method: get
operationId: get_64
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/call-forwards
method: get
operationId: get_78
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/call-forwards
method: put
operationId: put_24
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/devices/{deviceType}/{deviceId}
method: put
operationId: put_16
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/devices/{deviceType}/{deviceId}
method: delete
operationId: delete_12
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/devices/{deviceType}/{deviceId}
method: get
operationId: get_47
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}
method: get
operationId: get_13
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/devices/{deviceType}/{deviceId}/site-options
method: put
operationId: put_13
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/devices/{deviceType}/{deviceId}/site-options
method: delete
operationId: delete_8
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/devices/{deviceType}/{deviceId}/site-options
method: get
operationId: get_44
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /operators/{operatorId}/rating-profiles
method: get
operationId: get_213
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.operator
token:
max-ttl: 3600
audit: none
- path: /operators/{operatorId}/rating-profiles
method: post
operationId: post_55
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/callforward-globals
method: get
operationId: get_70
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/callforward-globals
method: put
operationId: put_18
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/announcements/{id}
method: put
operationId: simplePut
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/announcements/{id}
method: delete
operationId: delete
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/announcements/{id}
method: get
operationId: getContent
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/callforward-globals/{type}
method: get
operationId: get_71
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/callforward-globals/{type}
method: put
operationId: put_19
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/callforward-globals/{type}/available
method: get
operationId: getAvailable_1
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /devices
method: get
operationId: get_200
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
token:
max-ttl: 3600
audit: none
- path: /operators/{operatorId}/rating-profiles/available
method: get
operationId: get_212
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/callforward-profiles/{profileNumber}/rules
method: get
operationId: get_74
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/callforward-profiles/{profileNumber}/rules
method: post
operationId: post_18
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /operators/{operatorId}/rating-profiles/{ratingProfileName}
method: delete
operationId: delete_57
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /operators/{operatorId}/rating-profiles/{ratingProfileName}
method: get
operationId: get_214
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.operator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/callforward-profiles/{profileNumber}/rules/{sourceId}/{type}/available
method: get
operationId: getAvailable_2
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/devices
method: get
operationId: get_60
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/devices
method: post
operationId: post_13
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /operators/{operatorId}/tenants
method: get
operationId: get_209
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.operator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/function-keys/available-targets
method: get
operationId: get_80
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/function-keys/{keyNumber}
method: put
operationId: put_25
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/function-keys/{keyNumber}
method: delete
operationId: delete_19
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/function-keys/{keyNumber}
method: get
operationId: get_82
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/inbound-trunk-numbers
method: get
operationId: get_68
x-agentic-access:
action-class: connected
consequence: read
subject: optional
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
token:
max-ttl: 3600
audit: none
- path: /tenants/{participantExternalIdentifier}/targets/phone-extensions/{extensionNumber}/inbound-trunk-numbers
method: post
operationId: post_16
x-agentic-access:
action-class: acting
consequence: write
subject: required
scope:
- tenant.admin
- tenant.manager
- tenant.operator
- tenant.system-integrator
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /tenants/{participantExternalIdentifier}
# --- truncated at 32 KB (197 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/nfon/refs/heads/main/agentic-access/nfon-agentic-access.yml