DestinationsMarketingAdobe Campaign

Adobe Campaign

Sync customer profiles and trigger transactional messages in Adobe Campaign Standard. SignalSmith creates and updates CRM profiles via the Campaign REST API and fires triggered transactional messages for real-time communications like order confirmations, password resets, and welcome emails.

Prerequisites

  • An Adobe Campaign Standard instance with API access enabled
  • An Adobe Developer Console project with Server-to-Server OAuth credentials
  • The Campaign Standard API added to your Developer Console project with campaign_read and campaign_write scopes

Authentication

Adobe Campaign Standard uses OAuth 2.0 Server-to-Server (client credentials) authentication.

  1. Go to the Adobe Developer Console
  2. Create a new project (or use an existing one)
  3. Click Add API and select Adobe Campaign Standard API
  4. Choose OAuth Server-to-Server as the credential type
  5. Ensure the credential includes the following scopes:
    • campaign_read — read access to profiles, services, and transactional message configurations
    • campaign_write — write access to create and update profiles and trigger messages
  6. Copy the Client ID and Client Secret
  7. Enter them in SignalSmith when creating the destination

Configuration

FieldTypeRequiredDescription
Organization SlugTextYesYour IMS organization slug used in the Campaign API URL. This is the organization identifier portion of your Campaign API endpoint (e.g., mycompany in https://mc.adobe.io/mycompany/campaign/).
API GatewayTextYesThe Campaign API gateway URL. Default: https://mc.adobe.io. Typically does not need to be changed.

Target Settings

FieldTypeRequiredDescription
Object TypeSelectYesThe type of Campaign object to sync to: Profile (CRM profile records) or Triggered Send (transactional messages).
Transactional API NameTextConditionalThe API name of the transactional message template (required for Triggered Send). Found in Campaign > Transactional Messages > Event configuration.
Event IDTextConditionalThe event type identifier that triggers the transactional message (required for Triggered Send). Found in the transactional message event configuration.

Supported Operations

Sync Modes

ModeSupported
UpsertYes
InsertYes
UpdateYes
Mirror

Audience Sync Modes

ModeSupported
AddYes
RemoveYes
MirrorYes
UpsertYes

Features

  • Field Mapping: Yes
  • Schema Introspection: No

Required Mapping Fields

Object TypeRequired Fields
Profileemail (primary key for profile lookup and deduplication)
Triggered Sendemail (recipient address for message delivery)

Default Destination Fields

Profile

email, firstName, lastName, phone, mobilePhone, company, title, address.city, address.stateCode, address.zipCode, address.countryCode, birthDate, gender, optIn

Triggered Send

email, firstName, lastName, subject, eventData (JSON payload passed to the transactional message template)

Note: Triggered Send fields depend on the parameters defined in your transactional message event configuration. The default fields above represent common parameters — your template may require additional or different fields.

How It Works

Profile Mode

SignalSmith creates and updates CRM profiles in Adobe Campaign Standard using the Profile REST API:

  1. For each record, SignalSmith sends a POST request to the Campaign Profiles API endpoint
  2. If a profile with the same email already exists, Campaign returns a conflict response
  3. SignalSmith automatically performs a lookup by email and issues a PATCH request to update the existing profile
  4. New profiles are created immediately; existing profiles are updated with the mapped field values
  5. Profile changes are reflected in Campaign audiences and segmentation in real time

Triggered Send Mode

SignalSmith fires transactional messages for each record in the sync:

  1. For each row, SignalSmith sends a POST request to the Transactional Messages API
  2. The request includes the recipient email, event parameters, and any custom data mapped from your model
  3. Campaign processes the event and delivers the message (email, SMS, or push) according to the transactional message template configuration
  4. Delivery status is tracked within Adobe Campaign

Important: The transactional message template must be published and active in Campaign before triggering. Ensure the Event ID and Transactional API Name match the published configuration.

Rate Limits

  • API throughput: ~25 requests per second across all Campaign Standard API endpoints
  • Profile operations: Each profile create or update consumes one API call; upserts may require two calls (POST + PATCH on conflict)
  • SignalSmith handles rate limiting and automatic retries with exponential backoff

Troubleshooting

Authentication failed

Verify your Client ID and Client Secret in the Adobe Developer Console. Ensure the OAuth Server-to-Server credential is active, and that the Campaign Standard API is added to your project with both campaign_read and campaign_write scopes.

Permission denied

The authenticated credential must have the necessary access rights within Campaign. Verify the product profile assigned in the Developer Console includes Campaign Standard permissions. Contact your Adobe administrator to confirm API access is enabled for your organization.

Profile conflict on create

When a profile with the same email already exists, SignalSmith automatically falls back to an update (PATCH). If you see persistent conflict errors, check for duplicate profiles in Campaign with the same email address. De-duplicate within Campaign or use the Update sync mode instead of Insert.

Transactional message not sending

  • Verify the transactional message template is published and active in Campaign
  • Confirm the Transactional API Name and Event ID match the published event configuration exactly (case-sensitive)
  • Check that the required event parameters are mapped — missing required fields cause silent failures
  • Review delivery logs in Campaign > Transactional Messages > Deliveries for error details

Organization slug incorrect

The Organization Slug must match the identifier used in your Campaign API URL. If you receive 404 errors, verify the slug by checking your Campaign instance URL or contacting your Adobe administrator. The slug is typically your organization’s IMS identifier without the @AdobeOrg suffix.