Skip to main content
Unlisted page
This page is unlisted. Search engines will not index it, and only users having a direct link can access it.

Salesforce Marketing Cloud

This documentation for the Salesforce Marketing Cloud integration describes the technical capabilities of this integration, including authorization, scopes/permissions, and utilized endpoints. For more information on how to integrate Salesforce Marketing Cloud, visit our connection instructions.

Version

This integration utilizes the Salesforce Marketing Cloud REST API v1 and v2.

Base URL

The base URL used for all Salesforce Marketing Cloud API endpoints contains the Subdomain and REST or SOAP API:
https://subdomain.api.marketingcloudapis.com

Authentication & Authorization

The DataGrail Salesforce Marketing Cloud integration connects using OAuth 2.0 with the following credentials: Client ID and Client Secret.

Sensitive Credentials
Publicly exposing your API credentials can allow unauthorized access to Salesforce Marketing Cloud API endpoints by a third party. DataGrail stores your API credentials encrypted and protected.

Scopes

The Salesforce Marketing Cloud integration requires specific scopes that must be granted in order to function for a given capability.

ScopeBaseAccessDeletion
offline
users_read
list_and_subscribers_read
list_and_subscribers_write
Base Scopes
All base scopes must be granted in order to connect the integration with DataGrail. The remaining scopes are only required if enabling those capabilities

Endpoints Utilized

DataGrail uses the following endpoints to authorize and test the connection:


Limits

Limits in Salesforce Marketing Cloud are calculated using the leaky bucket algorithm. All requests that are made after rate limits have been exceeded are throttled and an HTTP 429 Too Many Requests error is returned. Requests succeed again after enough requests have emptied out of the bucket.

  • DataGrail supports requests throttling to stay within 70-80% of specified service rate limits.
  • DataGrail processes API responses with HTTP 429 status to interrupt requests, waiting and retrying (using an exponential backoff strategy).

Capabilities

Access

DataGrail's Salesforce Marketing Cloud integration provides Synchronous Access capabilities for the following supported identifier category: Email.

Data Interactions

For Access requests, DataGrail will take the following actions:

  1. Search AccountUser by the configured identifiers.
  2. Retrieve the contact keys for email channel addresses.
  3. Retrieve contact preferences from contact records by the contact key.

Endpoints Utilized


Deletion

DataGrail's Salesforce Marketing Cloud integration provides Asynchronous (Whole Record) Deletion capabilities for the following supported identifier category: Email.

Data Interactions

For Deletion requests, DataGrail will take the following actions:

  1. Retrieve the contact keys for email channel addresses.
  2. Delete a subscriber using configured identifiers.
  3. Delete contacts using the contact keys.
  4. Continuously check the status until the deletion is complete.

Endpoints Utilized

MethodEndpointPurposeDocs
POST/Service.asmxDelete a subscriber
POST/contacts/v1/addresses/email/searchRetrieve the contact key
POST/contacts/v1/contacts/actions/deleteDelete contacts
GET/contacts/v1/contacts/actions/delete/statusRetrieves status of contact deletion
GET/contacts/v1/contacts/key:contact_key/PreferencesRetrieve the contact preferences

 

Need help?
If you have any questions, please reach out to your dedicated Account Manager or contact us at support@datagrail.io.

Disclaimer: The information contained in this message does not constitute as legal advice. We would advise seeking professional counsel before acting on or interpreting any material.