openapi: 3.1.0 info: title: Adobe Campaign Classic API description: >- SOAP-based API for Adobe Campaign Classic v7 and v8, documented as HTTP POST operations. All operations target the single SOAP router endpoint at /nl/jsp/soaprouter.jsp and are differentiated by the SOAPAction header. Provides programmatic access to session management, data querying, record persistence, delivery management, workflow control, subscription management, and real-time transactional event ingestion. version: 8.0.0 contact: name: Adobe Developer Support url: https://developer.adobe.com/ license: name: Proprietary url: https://www.adobe.com/legal/terms.html x-logo: url: https://www.adobe.com/content/dam/cc/icons/adobe-campaign.svg externalDocs: description: Campaign Classic SOAP Web Services Documentation url: >- https://experienceleague.adobe.com/docs/campaign-classic/using/configuring-campaign-classic/api/web-service-calls.html servers: - url: https://{instance}.campaign.adobe.com description: Campaign Classic Instance variables: instance: description: Your Campaign Classic instance name default: YOUR_INSTANCE tags: - name: Data Management description: >- Write, update, and delete data records using the xtk:session#Write method. Supports insert, insertOrUpdate, update, and delete operations via the _operation attribute. - name: Delivery description: >- Prepare and submit message deliveries including email, SMS, and push notifications. - name: Query Definition description: >- Execute queries against Campaign schemas using the xtk:queryDef interface. Supports get, getIfExists, select, and count operations with XPath field expressions, WHERE conditions, and pagination. - name: Real-Time Events description: >- Push real-time transactional events for immediate or batched processing by the Message Center execution instances. - name: Session Management description: >- Authenticate and manage server sessions. Logon returns session and security tokens required for all subsequent API calls. - name: Subscription description: >- Subscribe and unsubscribe recipients to and from information services. - name: Workflow description: >- Start, stop, and signal workflows. PostEvent sends asynchronous signals to trigger workflow transitions. paths: /nl/jsp/soaprouter.jsp/xtk-session/Logon: post: operationId: sessionLogon summary: Adobe Campaign Authenticate and Create a Session description: >- Authenticates with username and password credentials and returns session and security tokens. These tokens must be passed as cookie (__sessiontoken) and header (X-Security-Token) on all subsequent requests. SOAP Action: xtk:session#Logon tags: - Session Management parameters: - name: SOAPAction in: header required: true schema: type: string const: 'xtk:session#Logon' example: example_value requestBody: required: true content: text/xml: schema: $ref: '#/components/schemas/SessionLogonRequest' responses: '200': description: Authentication successful. Returns session and security tokens. content: text/xml: schema: $ref: '#/components/schemas/SessionLogonResponse' '500': $ref: '#/components/responses/SOAPFault' x-microcks-operation: delay: 0 dispatcher: FALLBACK /nl/jsp/soaprouter.jsp/xtk-session/Logout: post: operationId: sessionLogout summary: Adobe Campaign Terminate a Session description: >- Invalidates the current session and security tokens. SOAP Action: xtk:session#Logout tags: - Session Management parameters: - name: SOAPAction in: header required: true schema: type: string const: 'xtk:session#Logout' example: example_value security: - SessionToken: [] responses: '200': description: Session terminated successfully. '500': $ref: '#/components/responses/SOAPFault' x-microcks-operation: delay: 0 dispatcher: FALLBACK /nl/jsp/soaprouter.jsp/xtk-queryDef/ExecuteQuery: post: operationId: executeQuery summary: Adobe Campaign Execute a Query description: >- Executes a query against a Campaign schema using the xtk:queryDef interface. Supports operations: get (single record, error if missing), getIfExists (single record, null if missing), select (multiple records with pagination), and count (record count). Uses XPath expressions for field selection and WHERE conditions. SOAP Action: xtk:queryDef#ExecuteQuery tags: - Query Definition parameters: - name: SOAPAction in: header required: true schema: type: string const: 'xtk:queryDef#ExecuteQuery' example: example_value security: - SessionToken: [] requestBody: required: true content: text/xml: schema: $ref: '#/components/schemas/QueryDefinition' responses: '200': description: Query executed successfully. content: text/xml: schema: $ref: '#/components/schemas/QueryResult' '500': $ref: '#/components/responses/SOAPFault' x-microcks-operation: delay: 0 dispatcher: FALLBACK /nl/jsp/soaprouter.jsp/xtk-session/Write: post: operationId: sessionWrite summary: Adobe Campaign Write Data Records description: >- Writes data records to a Campaign schema. The _operation attribute on the entity element controls the behavior: insert (create new), insertOrUpdate (create or update if exists), update (modify existing), delete (remove record). SOAP Action: xtk:session#Write tags: - Data Management parameters: - name: SOAPAction in: header required: true schema: type: string const: 'xtk:session#Write' example: example_value security: - SessionToken: [] requestBody: required: true content: text/xml: schema: $ref: '#/components/schemas/WriteRequest' responses: '200': description: Data written successfully. content: text/xml: schema: $ref: '#/components/schemas/WriteResponse' '500': $ref: '#/components/responses/SOAPFault' x-microcks-operation: delay: 0 dispatcher: FALLBACK /nl/jsp/soaprouter.jsp/xtk-session/WriteCollection: post: operationId: sessionWriteCollection summary: Adobe Campaign Write Multiple Data Records description: >- Writes a collection of data records to a Campaign schema in a single call. Each entity element in the collection can have its own _operation attribute. SOAP Action: xtk:session#WriteCollection tags: - Data Management parameters: - name: SOAPAction in: header required: true schema: type: string const: 'xtk:session#WriteCollection' example: example_value security: - SessionToken: [] requestBody: required: true content: text/xml: schema: $ref: '#/components/schemas/WriteCollectionRequest' responses: '200': description: Data collection written successfully. '500': $ref: '#/components/responses/SOAPFault' x-microcks-operation: delay: 0 dispatcher: FALLBACK /nl/jsp/soaprouter.jsp/nms-delivery/PrepareAndStart: post: operationId: deliveryPrepareAndStart summary: Adobe Campaign Prepare and Start a Delivery description: >- Prepares and immediately starts sending a delivery. Combines the preparation (target calculation, personalization) and sending steps. SOAP Action: nms:delivery#PrepareAndStart tags: - Delivery parameters: - name: SOAPAction in: header required: true schema: type: string const: 'nms:delivery#PrepareAndStart' example: example_value security: - SessionToken: [] requestBody: required: true content: text/xml: schema: $ref: '#/components/schemas/DeliveryRequest' responses: '200': description: Delivery preparation and sending started. '500': $ref: '#/components/responses/SOAPFault' x-microcks-operation: delay: 0 dispatcher: FALLBACK /nl/jsp/soaprouter.jsp/nms-delivery/SubmitDelivery: post: operationId: submitDelivery summary: Adobe Campaign Submit a Delivery description: >- Submits a delivery for processing. The delivery must be in a valid state for submission. SOAP Action: nms:delivery#SubmitDelivery tags: - Delivery parameters: - name: SOAPAction in: header required: true schema: type: string const: 'nms:delivery#SubmitDelivery' example: example_value security: - SessionToken: [] requestBody: required: true content: text/xml: schema: $ref: '#/components/schemas/DeliveryRequest' responses: '200': description: Delivery submitted successfully. '500': $ref: '#/components/responses/SOAPFault' x-microcks-operation: delay: 0 dispatcher: FALLBACK /nl/jsp/soaprouter.jsp/xtk-workflow/Start: post: operationId: workflowStart summary: Adobe Campaign Start a Workflow description: >- Starts a workflow by its internal ID. The workflow must be in a stopped state. SOAP Action: xtk:workflow#Start tags: - Workflow parameters: - name: SOAPAction in: header required: true schema: type: string const: 'xtk:workflow#Start' example: example_value security: - SessionToken: [] requestBody: required: true content: text/xml: schema: $ref: '#/components/schemas/WorkflowRequest' responses: '200': description: Workflow started successfully. '500': $ref: '#/components/responses/SOAPFault' x-microcks-operation: delay: 0 dispatcher: FALLBACK /nl/jsp/soaprouter.jsp/xtk-workflow/Stop: post: operationId: workflowStop summary: Adobe Campaign Stop a Workflow description: >- Stops a running workflow by its internal ID. SOAP Action: xtk:workflow#Stop tags: - Workflow parameters: - name: SOAPAction in: header required: true schema: type: string const: 'xtk:workflow#Stop' example: example_value security: - SessionToken: [] requestBody: required: true content: text/xml: schema: $ref: '#/components/schemas/WorkflowRequest' responses: '200': description: Workflow stopped successfully. '500': $ref: '#/components/responses/SOAPFault' x-microcks-operation: delay: 0 dispatcher: FALLBACK /nl/jsp/soaprouter.jsp/xtk-workflow/PostEvent: post: operationId: workflowPostEvent summary: Adobe Campaign Post an Event Signal to a Workflow description: >- Sends an asynchronous signal event to a workflow, triggering a transition from an external signal activity. Can include parameters passed as XML variables. SOAP Action: xtk:workflow#PostEvent tags: - Workflow parameters: - name: SOAPAction in: header required: true schema: type: string const: 'xtk:workflow#PostEvent' example: example_value security: - SessionToken: [] requestBody: required: true content: text/xml: schema: $ref: '#/components/schemas/WorkflowPostEventRequest' responses: '200': description: Event signal posted to workflow. '500': $ref: '#/components/responses/SOAPFault' x-microcks-operation: delay: 0 dispatcher: FALLBACK /nl/jsp/soaprouter.jsp/nms-subscription/Subscribe: post: operationId: subscribe summary: Adobe Campaign Subscribe a Recipient to a Service description: >- Subscribes a recipient to an information service. Requires the service name and a recipient DOM element. SOAP Action: nms:subscription#Subscribe tags: - Subscription parameters: - name: SOAPAction in: header required: true schema: type: string const: 'nms:subscription#Subscribe' example: example_value security: - SessionToken: [] requestBody: required: true content: text/xml: schema: $ref: '#/components/schemas/SubscriptionRequest' responses: '200': description: Recipient subscribed successfully. '500': $ref: '#/components/responses/SOAPFault' x-microcks-operation: delay: 0 dispatcher: FALLBACK /nl/jsp/soaprouter.jsp/nms-subscription/Unsubscribe: post: operationId: unsubscribe summary: Adobe Campaign Unsubscribe a Recipient from a Service description: >- Unsubscribes a recipient from an information service. SOAP Action: nms:subscription#Unsubscribe tags: - Subscription parameters: - name: SOAPAction in: header required: true schema: type: string const: 'nms:subscription#Unsubscribe' example: example_value security: - SessionToken: [] requestBody: required: true content: text/xml: schema: $ref: '#/components/schemas/SubscriptionRequest' responses: '200': description: Recipient unsubscribed successfully. '500': $ref: '#/components/responses/SOAPFault' x-microcks-operation: delay: 0 dispatcher: FALLBACK /nl/jsp/soaprouter.jsp/nms-rtEvent/PushEvent: post: operationId: pushEvent summary: Adobe Campaign Push a Real-time Transactional Event description: >- Pushes a single real-time event to the Message Center execution instance for transactional message processing. The event must include the event type and recipient context data. Supports email, SMS, and push notification channels. SOAP Action: nms:rtEvent#PushEvent tags: - Real-Time Events parameters: - name: SOAPAction in: header required: true schema: type: string const: 'nms:rtEvent#PushEvent' example: example_value security: - SessionToken: [] requestBody: required: true content: text/xml: schema: $ref: '#/components/schemas/PushEventRequest' responses: '200': description: Event accepted for processing. Returns the event ID. content: text/xml: schema: $ref: '#/components/schemas/PushEventResponse' '500': $ref: '#/components/responses/SOAPFault' x-microcks-operation: delay: 0 dispatcher: FALLBACK /nl/jsp/soaprouter.jsp/nms-batchEvent/PushEvents: post: operationId: pushEvents summary: Adobe Campaign Push Batch Real-time Events description: >- Pushes a batch of real-time events to the Message Center execution instance for transactional message processing. More efficient than individual PushEvent calls when sending multiple events. SOAP Action: nms:batchEvent#PushEvents tags: - Real-Time Events parameters: - name: SOAPAction in: header required: true schema: type: string const: 'nms:batchEvent#PushEvents' example: example_value security: - SessionToken: [] requestBody: required: true content: text/xml: schema: $ref: '#/components/schemas/PushEventsRequest' responses: '200': description: Batch of events accepted for processing. '500': $ref: '#/components/responses/SOAPFault' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: securitySchemes: SessionToken: type: apiKey in: header name: X-Security-Token description: >- Security token obtained from xtk:session#Logon. Must be passed alongside the session token cookie (__sessiontoken) on all authenticated requests. Tokens have a 24-hour lifecycle. schemas: SessionLogonRequest: type: object xml: name: Envelope prefix: soapenv namespace: http://schemas.xmlsoap.org/soap/envelope/ description: >- SOAP envelope containing login credentials for session authentication. properties: strLogin: type: string description: Username for authentication. example: example_value strPassword: type: string description: Password for authentication. example: example_value SessionLogonResponse: type: object description: >- SOAP response containing session and security tokens. properties: sessionToken: type: string description: >- Session token to be passed as __sessiontoken cookie on subsequent requests. example: example_value securityToken: type: string description: >- Security token to be passed as X-Security-Token header on subsequent requests. example: example_value sessionInfo: type: object description: Information about the authenticated session. properties: serverInfo: type: string timezone: type: string QueryDefinition: type: object description: >- SOAP envelope containing a query definition with schema, operation, selected fields, conditions, and pagination parameters. properties: queryDef: type: object properties: schema: type: string description: >- Target schema name (e.g., nms:recipient, nms:delivery). operation: type: string enum: - get - getIfExists - select - count description: >- Query operation type. get returns single record (error if missing), getIfExists returns single or null, select returns multiple records, count returns record count. lineCount: type: integer description: Maximum number of records to return. startLine: type: integer description: Starting offset for pagination. select: type: object description: >- Field selection using XPath node elements. where: type: object description: >- WHERE conditions using condition elements with expr attributes. orderBy: type: object description: >- ORDER BY clause with sortNode elements. QueryResult: type: object description: >- SOAP response containing query result set as XML elements matching the target schema structure. properties: resultSet: type: object description: >- Collection of result records matching the query criteria. WriteRequest: type: object description: >- SOAP envelope containing an entity element for the target schema with attribute values and an _operation attribute controlling the write behavior. properties: entity: type: object properties: _operation: type: string enum: - insert - insertOrUpdate - update - delete description: >- The write operation to perform. insert creates a new record, insertOrUpdate creates or updates, update modifies existing, delete removes. _schema: type: string description: Target schema name. WriteResponse: type: object description: >- SOAP response confirming the write operation. Returns the primary key of the affected record for insert operations. properties: primaryKey: type: string description: Primary key of the created or modified record. example: example_value WriteCollectionRequest: type: object description: >- SOAP envelope containing a collection of entity elements for batch write operations. Each entity can specify its own _operation. properties: collection: type: object properties: _schema: type: string description: Target schema name for all entities. entities: type: array description: Array of entity elements to write. items: type: object DeliveryRequest: type: object description: >- SOAP envelope containing the delivery internal name or ID for preparation and sending operations. properties: deliveryId: type: integer description: Internal ID of the delivery. example: 42 deliveryName: type: string description: Internal name of the delivery. example: Example Campaign WorkflowRequest: type: object description: >- SOAP envelope containing the workflow internal ID for start/stop operations. properties: workflowId: type: integer description: Internal ID of the workflow. example: 42 WorkflowPostEventRequest: type: object description: >- SOAP envelope containing a signal event to post to a workflow, including the workflow ID, signal activity name, and optional XML variables. properties: workflowId: type: integer description: Internal ID of the target workflow. example: 42 activity: type: string description: Name of the external signal activity in the workflow. example: example_value variables: type: object description: >- XML element containing variable parameters to pass to the workflow transition. additionalProperties: true SubscriptionRequest: type: object description: >- SOAP envelope containing the service name and recipient DOM element for subscribe/unsubscribe operations. properties: serviceName: type: string description: Internal name of the information service. example: Example Campaign recipient: type: object description: >- Recipient DOM element identifying the subscriber. properties: email: type: string description: Email address of the recipient. id: type: integer description: Internal ID of the recipient. create: type: boolean description: >- Whether to create the recipient if not found (subscribe only). example: true PushEventRequest: type: object description: >- SOAP envelope containing a real-time event for transactional message processing. The rtEvent element includes mandatory attributes for event type and recipient contact, plus a ctx child element for message personalization data. properties: rtEvent: type: object properties: type: type: string description: >- Event type name matching the Message Center event configuration. email: type: string format: email description: Recipient email address. origin: type: string description: >- Origin identifier for tracking the event source. wishedChannel: type: integer description: >- Preferred delivery channel. 0 = email, 1 = mobile (SMS), 2 = phone, 3 = push notification. externalId: type: string description: External identifier for deduplication. mobilePhone: type: string description: Recipient mobile phone number (for SMS channel). scheduled: type: string format: date-time description: Optional scheduled processing time. ctx: type: object description: >- Context data XML element containing personalization variables for the transactional message template. additionalProperties: true PushEventResponse: type: object description: >- SOAP response containing the assigned event ID for tracking. properties: eventId: type: integer description: Unique identifier assigned to the ingested event. example: 42 PushEventsRequest: type: object description: >- SOAP envelope containing a batch of real-time events for bulk transactional message processing. properties: events: type: array description: Array of rtEvent elements. items: $ref: '#/components/schemas/PushEventRequest/properties/rtEvent' SOAPFault: type: object description: >- SOAP fault response indicating an error during operation processing. properties: faultcode: type: string description: Fault code identifying the error category. example: example_value faultstring: type: string description: Human-readable description of the error. example: example_value detail: type: string description: Additional error details. example: example_value responses: SOAPFault: description: SOAP fault indicating an error during operation processing. content: text/xml: schema: $ref: '#/components/schemas/SOAPFault'