Adobe Campaign Agentic Access
Adobe Campaign exposes 35 API operations that an AI agent could call, of which 25 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: 10 read, 22 write, and 3 safety-critical.
3 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 | /nl/jsp/soaprouter.jsp/xtk-session/Logout | safety-critical | required |
| POST | /nl/jsp/soaprouter.jsp/xtk-workflow/Stop | safety-critical | required |
| POST | /workflow/execution/{workflowID}/commands | safety-critical | required |
Source
Agentic Access
generated: '2026-07-15'
method: generated
source: openapi/adobe-campaign-classic-openapi-original.yml, openapi/adobe-campaign-standard-openapi-original.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: 35
by_action_class:
acting: 25
connected: 10
by_consequence:
write: 22
safety-critical: 3
read: 10
human_in_the_loop_required: 3
operations:
- path: /nl/jsp/soaprouter.jsp/xtk-session/Logon
method: post
operationId: sessionLogon
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: /nl/jsp/soaprouter.jsp/xtk-session/Logout
method: post
operationId: sessionLogout
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: /nl/jsp/soaprouter.jsp/xtk-queryDef/ExecuteQuery
method: post
operationId: executeQuery
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: /nl/jsp/soaprouter.jsp/xtk-session/Write
method: post
operationId: sessionWrite
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: /nl/jsp/soaprouter.jsp/xtk-session/WriteCollection
method: post
operationId: sessionWriteCollection
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: /nl/jsp/soaprouter.jsp/nms-delivery/PrepareAndStart
method: post
operationId: deliveryPrepareAndStart
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: /nl/jsp/soaprouter.jsp/nms-delivery/SubmitDelivery
method: post
operationId: submitDelivery
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: /nl/jsp/soaprouter.jsp/xtk-workflow/Start
method: post
operationId: workflowStart
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: /nl/jsp/soaprouter.jsp/xtk-workflow/Stop
method: post
operationId: workflowStop
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: /nl/jsp/soaprouter.jsp/xtk-workflow/PostEvent
method: post
operationId: workflowPostEvent
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: /nl/jsp/soaprouter.jsp/nms-subscription/Subscribe
method: post
operationId: subscribe
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: /nl/jsp/soaprouter.jsp/nms-subscription/Unsubscribe
method: post
operationId: unsubscribe
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: /nl/jsp/soaprouter.jsp/nms-rtEvent/PushEvent
method: post
operationId: pushEvent
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: /nl/jsp/soaprouter.jsp/nms-batchEvent/PushEvents
method: post
operationId: pushEvents
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: /profileAndServices/profile
method: get
operationId: listProfiles
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /profileAndServices/profile
method: post
operationId: createProfile
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: /profileAndServices/profile/{PKEY}
method: get
operationId: getProfile
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /profileAndServices/profile/{PKEY}
method: patch
operationId: updateProfile
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: /profileAndServices/profile/{PKEY}
method: delete
operationId: deleteProfile
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: /profileAndServices/service
method: get
operationId: listServices
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /profileAndServices/service
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: /profileAndServices/service/{PKEY}
method: get
operationId: getService
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /profileAndServices/service/{PKEY}
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: /profileAndServices/service/{PKEY}
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: /profileAndServices/profile/{PKEY}/subscriptions
method: post
operationId: subscribeProfile
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: /profileAndServices/service/{servicePKEY}/subscriptions/{profilePKEY}
method: delete
operationId: unsubscribeProfile
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: /workflow/execution/{workflowID}/commands
method: post
operationId: controlWorkflow
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: /{transactionalAPI}/{eventID}
method: post
operationId: triggerTransactionalEvent
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: /{transactionalAPI}/{eventID}
method: get
operationId: getTransactionalEventStatus
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /privacy/privacyTool
method: post
operationId: createPrivacyRequest
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: /profileAndServices/history/{PKEY}
method: get
operationId: getMarketingHistory
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /profileAndServicesExt/orgUnitBase
method: get
operationId: listOrgUnits
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /profileAndServicesExt/{cusResourceName}
method: get
operationId: listProfileLinkedCustomResources
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /customResources/{cusResourceName}
method: get
operationId: listCustomResources
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /profileAndServices/resourceType/{resourceName}
method: get
operationId: getResourceMetadata
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none