After signing in, you can create credentials that can be used to call the Platform APIs.
Download OpenAPI specification:Download
Adobe Experience Platform Destination SDK (also referred to as the Destination Authoring API) is a suite of configuration APIs that allow you to configure destination integration patterns for Experience Platform to deliver audience and profile data to your endpoint, based on data and authentication formats of your choice.
Related documentation:
Visualize API calls with Postman (a free, third-party software):
API paths:
Required headers:
Authorization
, x-gw-ims-org-id
, and x-api-key
. For more information on how to obtain these values, see the authentication tutorial.x-sandbox-name
whose value is the all-lowercase name of the sandbox the operation will take place in (for example, "prod"). See the sandboxes overview for more information.Content-Type
with a value of application/json
.API error handling:
You can now interact with the Experience Platform API endpoints directly from this API reference page. Get your authentication credentials and use the Try it functionality in the right rail. Note that by using this functionality, you are making real API calls. Keep this in mind when you interact with production sandboxes.
Destination configurations contain essential metadata for individual destinations, including their name, category, description, and more. The settings in this configuration also determine how Experience Platform users authenticate to your destination, how it appears in the Experience Platform user interface, and the identities that can be exported to your destination.
For a description of the functionality supported by this endpoint and an example configuration, see the overview on destination configurations in the Destination SDK documentation.
You can retrieve a list of all destination configurations for your IMS Organization by making a GET request to the /destinations
endpoint.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Destination configurations retrieved successfully
Unauthorized access
Access forbidden
[- {
- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "name": "Moviestar configuration",
- "description": "Moviestar is a fictional destination, used for this example.",
- "status": "TEST",
- "customerAuthenticationConfigurations": [
- {
- "authType": "BEARER",
- "options": {
- "property1": null,
- "property2": null
}
}
], - "customerDataFields": [
- {
- "name": "endpointsInstance",
- "type": "string",
- "title": "Select endpoint",
- "description": "Moviestar manages several instances across the globe for REST endpoints that our customers are provisioned for. Select your endpoint in the dropdown list.",
- "isRequired": true,
- "default": { },
- "enum": [
- "US",
- "EU",
- "APAC",
- "NZ"
], - "pattern": "^[A-Za-z]+$",
- "format": "password"
}
], - "uiAttributes": {
- "category": "mobile",
- "connectionType": "Server-to-server",
- "frequency": "Streaming"
}, - "identityNamespaces": {
- "property1": {
- "acceptsAttributes": "true",
- "acceptsCustomNamespaces": "true",
- "transformation": "string",
- "acceptedGlobalNamespaces": {
- "Email": { },
- "IDFA": { }
}
}, - "property2": {
- "acceptsAttributes": "true",
- "acceptsCustomNamespaces": "true",
- "transformation": "string",
- "acceptedGlobalNamespaces": {
- "Email": { },
- "IDFA": { }
}
}
}, - "destinationDelivery": [
- {
- "authenticationRule": "CUSTOMER_AUTHENTICATION",
- "authenticationId": "string",
- "destinationServerId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67"
}
], - "schemaConfig": {
- "profileFields": [
- {
- "name": "endpointsInstance",
- "type": "string",
- "title": "Select endpoint",
- "description": "Moviestar manages several instances across the globe for REST endpoints that our customers are provisioned for. Select your endpoint in the dropdown list.",
- "isRequired": true,
- "default": { },
- "enum": [
- "US",
- "EU",
- "APAC",
- "NZ"
], - "pattern": "^[A-Za-z]+$",
- "format": "password"
}
], - "profileRequired": true,
- "segmentRequired": true,
- "identityRequired": true
}, - "aggregation": {
- "aggregationType": "CONFIGURABLE_AGGREGATION",
- "bestEffortAggregation": {
- "maxUsersPerRequest": "10",
- "splitUserById": false
}, - "configurableAggregation": {
- "splitUserById": false,
- "maxBatchAgeInSecs": 3000,
- "maxNumEventsInBatch": 5000,
- "aggregationKey": {
- "includeSegmentId": true,
- "includeSegmentStatus": true,
- "includeIdentity": true,
- "oneIdentityPerGroup": false,
- "groups": [
- [
- {
- "namespaces": [
- "IDFA",
- "GAID"
]
}, - {
- "namespaces": [
- "EMAIL"
]
}
]
]
}
}
}, - "marketingActions": "EMAIL_TARGETING",
- "duleLabels": "C1",
- "backfillHistoricalProfileData": "true",
- "segmentMappingConfig": {
- "mapUserInput": false,
- "mapExperiencePlatformSegmentId": false,
- "mapExperiencePlatformSegmentName": false,
- "audienceTemplateId": "12a3238f-b509-4a40-b8fb-0a5006e7901d"
}
}
]
You can create a new destination configuration by making a POST request to the /destinations
endpoint.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Destination configuration object for a new destination. Refer to the Destination SDK documentation for an example of a destination configuration for a file-based and a streaming destination.
name | string (Name) Indicates the title of your destination in the Experience Platform catalog. |
description | string (Internal Description) Provide a description that Adobe will use in the Experience Platform destinations catalog for your destination card. Aim for no more than 4-5 sentences. |
status | string (Status) Indicates the lifecycle status of the destination card. Use |
Array of objects (Customer Authentication Configurations) Indicates the configuration used to authenticate Experience Platform customers to your server. See | |
Array of objects (customerDataField) Defines fields that you are requiring the Experience Platform customer to fill in when they set up a connection to your destination. | |
object Provide values for the parameters in this object to set up various UI elements for your destination. | |
object (Identity Namespaces) List of allowed identity namespaces. | |
Array of objects (destinationDeliveryItem) | |
object (Schema Config) The parameters in this object create your partner schema configuration. Read more about schema configuration. | |
object (Aggregation Policy) Indicates the aggregation policy that should be applied when Experience Platform exports data to your destination. Read more about aggregation policies. | |
marketingActions | Array of strings (Marketing Actions) Select if you want your destination to have default marketing actions. Read more about marketing actions in the Data usage policies overview. |
duleLabels | Array of strings (DULE Labels) Select if you want your destination to have default data usage labels. Read more in the Data usage labels glossary. |
backfillHistoricalProfileData | boolean (Historical profile data backfill) Default: true Controls whether historical profile data is exported when segments are activated to the destination. |
object The settings in this object determine how segments from Experience Platform are mapped to corresponding segments or audiences in your destination. |
Destination configuration created
Bad request due to incorrect payload format
Unauthorized access
Access forbidden
{- "name": "Moviestar configuration",
- "description": "Moviestar is a fictional destination, used for this example.",
- "status": "TEST",
- "customerAuthenticationConfigurations": [
- {
- "authType": "BEARER",
- "options": {
- "property1": null,
- "property2": null
}
}
], - "customerDataFields": [
- {
- "name": "endpointsInstance",
- "type": "string",
- "title": "Select endpoint",
- "description": "Moviestar manages several instances across the globe for REST endpoints that our customers are provisioned for. Select your endpoint in the dropdown list.",
- "isRequired": true,
- "default": { },
- "enum": [
- "US",
- "EU",
- "APAC",
- "NZ"
], - "pattern": "^[A-Za-z]+$",
- "format": "password"
}
], - "uiAttributes": {
- "category": "mobile",
- "connectionType": "Server-to-server",
- "frequency": "Streaming"
}, - "identityNamespaces": {
- "property1": {
- "acceptsAttributes": "true",
- "acceptsCustomNamespaces": "true",
- "transformation": "string",
- "acceptedGlobalNamespaces": {
- "Email": { },
- "IDFA": { }
}
}, - "property2": {
- "acceptsAttributes": "true",
- "acceptsCustomNamespaces": "true",
- "transformation": "string",
- "acceptedGlobalNamespaces": {
- "Email": { },
- "IDFA": { }
}
}
}, - "destinationDelivery": [
- {
- "authenticationRule": "CUSTOMER_AUTHENTICATION",
- "authenticationId": "string",
- "destinationServerId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67"
}
], - "schemaConfig": {
- "profileFields": [
- {
- "name": "endpointsInstance",
- "type": "string",
- "title": "Select endpoint",
- "description": "Moviestar manages several instances across the globe for REST endpoints that our customers are provisioned for. Select your endpoint in the dropdown list.",
- "isRequired": true,
- "default": { },
- "enum": [
- "US",
- "EU",
- "APAC",
- "NZ"
], - "pattern": "^[A-Za-z]+$",
- "format": "password"
}
], - "profileRequired": true,
- "segmentRequired": true,
- "identityRequired": true
}, - "aggregation": {
- "aggregationType": "CONFIGURABLE_AGGREGATION",
- "bestEffortAggregation": {
- "maxUsersPerRequest": "10",
- "splitUserById": false
}, - "configurableAggregation": {
- "splitUserById": false,
- "maxBatchAgeInSecs": 3000,
- "maxNumEventsInBatch": 5000,
- "aggregationKey": {
- "includeSegmentId": true,
- "includeSegmentStatus": true,
- "includeIdentity": true,
- "oneIdentityPerGroup": false,
- "groups": [
- [
- {
- "namespaces": [
- "IDFA",
- "GAID"
]
}, - {
- "namespaces": [
- "EMAIL"
]
}
]
]
}
}
}, - "marketingActions": "EMAIL_TARGETING",
- "duleLabels": "C1",
- "backfillHistoricalProfileData": "true",
- "segmentMappingConfig": {
- "mapUserInput": false,
- "mapExperiencePlatformSegmentId": false,
- "mapExperiencePlatformSegmentName": false,
- "audienceTemplateId": "12a3238f-b509-4a40-b8fb-0a5006e7901d"
}
}
{- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "name": "Moviestar configuration",
- "description": "Moviestar is a fictional destination, used for this example.",
- "status": "TEST",
- "customerAuthenticationConfigurations": [
- {
- "authType": "BEARER",
- "options": {
- "property1": null,
- "property2": null
}
}
], - "customerDataFields": [
- {
- "name": "endpointsInstance",
- "type": "string",
- "title": "Select endpoint",
- "description": "Moviestar manages several instances across the globe for REST endpoints that our customers are provisioned for. Select your endpoint in the dropdown list.",
- "isRequired": true,
- "default": { },
- "enum": [
- "US",
- "EU",
- "APAC",
- "NZ"
], - "pattern": "^[A-Za-z]+$",
- "format": "password"
}
], - "uiAttributes": {
- "category": "mobile",
- "connectionType": "Server-to-server",
- "frequency": "Streaming"
}, - "identityNamespaces": {
- "property1": {
- "acceptsAttributes": "true",
- "acceptsCustomNamespaces": "true",
- "transformation": "string",
- "acceptedGlobalNamespaces": {
- "Email": { },
- "IDFA": { }
}
}, - "property2": {
- "acceptsAttributes": "true",
- "acceptsCustomNamespaces": "true",
- "transformation": "string",
- "acceptedGlobalNamespaces": {
- "Email": { },
- "IDFA": { }
}
}
}, - "destinationDelivery": [
- {
- "authenticationRule": "CUSTOMER_AUTHENTICATION",
- "authenticationId": "string",
- "destinationServerId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67"
}
], - "schemaConfig": {
- "profileFields": [
- {
- "name": "endpointsInstance",
- "type": "string",
- "title": "Select endpoint",
- "description": "Moviestar manages several instances across the globe for REST endpoints that our customers are provisioned for. Select your endpoint in the dropdown list.",
- "isRequired": true,
- "default": { },
- "enum": [
- "US",
- "EU",
- "APAC",
- "NZ"
], - "pattern": "^[A-Za-z]+$",
- "format": "password"
}
], - "profileRequired": true,
- "segmentRequired": true,
- "identityRequired": true
}, - "aggregation": {
- "aggregationType": "CONFIGURABLE_AGGREGATION",
- "bestEffortAggregation": {
- "maxUsersPerRequest": "10",
- "splitUserById": false
}, - "configurableAggregation": {
- "splitUserById": false,
- "maxBatchAgeInSecs": 3000,
- "maxNumEventsInBatch": 5000,
- "aggregationKey": {
- "includeSegmentId": true,
- "includeSegmentStatus": true,
- "includeIdentity": true,
- "oneIdentityPerGroup": false,
- "groups": [
- [
- {
- "namespaces": [
- "IDFA",
- "GAID"
]
}, - {
- "namespaces": [
- "EMAIL"
]
}
]
]
}
}
}, - "marketingActions": "EMAIL_TARGETING",
- "duleLabels": "C1",
- "backfillHistoricalProfileData": "true",
- "segmentMappingConfig": {
- "mapUserInput": false,
- "mapExperiencePlatformSegmentId": false,
- "mapExperiencePlatformSegmentName": false,
- "audienceTemplateId": "12a3238f-b509-4a40-b8fb-0a5006e7901d"
}
}
You can retrieve detailed information about a specific destination configuration by making a GET request to the /destinations
endpoint and providing the ID of the destination configuration you want to retrieve.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Destination configuration retrieved
Bad request due to formatting error
Unauthorized access
Access forbidden
Resource not found
{- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "name": "Moviestar configuration",
- "description": "Moviestar is a fictional destination, used for this example.",
- "status": "TEST",
- "customerAuthenticationConfigurations": [
- {
- "authType": "BEARER",
- "options": {
- "property1": null,
- "property2": null
}
}
], - "customerDataFields": [
- {
- "name": "endpointsInstance",
- "type": "string",
- "title": "Select endpoint",
- "description": "Moviestar manages several instances across the globe for REST endpoints that our customers are provisioned for. Select your endpoint in the dropdown list.",
- "isRequired": true,
- "default": { },
- "enum": [
- "US",
- "EU",
- "APAC",
- "NZ"
], - "pattern": "^[A-Za-z]+$",
- "format": "password"
}
], - "uiAttributes": {
- "category": "mobile",
- "connectionType": "Server-to-server",
- "frequency": "Streaming"
}, - "identityNamespaces": {
- "property1": {
- "acceptsAttributes": "true",
- "acceptsCustomNamespaces": "true",
- "transformation": "string",
- "acceptedGlobalNamespaces": {
- "Email": { },
- "IDFA": { }
}
}, - "property2": {
- "acceptsAttributes": "true",
- "acceptsCustomNamespaces": "true",
- "transformation": "string",
- "acceptedGlobalNamespaces": {
- "Email": { },
- "IDFA": { }
}
}
}, - "destinationDelivery": [
- {
- "authenticationRule": "CUSTOMER_AUTHENTICATION",
- "authenticationId": "string",
- "destinationServerId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67"
}
], - "schemaConfig": {
- "profileFields": [
- {
- "name": "endpointsInstance",
- "type": "string",
- "title": "Select endpoint",
- "description": "Moviestar manages several instances across the globe for REST endpoints that our customers are provisioned for. Select your endpoint in the dropdown list.",
- "isRequired": true,
- "default": { },
- "enum": [
- "US",
- "EU",
- "APAC",
- "NZ"
], - "pattern": "^[A-Za-z]+$",
- "format": "password"
}
], - "profileRequired": true,
- "segmentRequired": true,
- "identityRequired": true
}, - "aggregation": {
- "aggregationType": "CONFIGURABLE_AGGREGATION",
- "bestEffortAggregation": {
- "maxUsersPerRequest": "10",
- "splitUserById": false
}, - "configurableAggregation": {
- "splitUserById": false,
- "maxBatchAgeInSecs": 3000,
- "maxNumEventsInBatch": 5000,
- "aggregationKey": {
- "includeSegmentId": true,
- "includeSegmentStatus": true,
- "includeIdentity": true,
- "oneIdentityPerGroup": false,
- "groups": [
- [
- {
- "namespaces": [
- "IDFA",
- "GAID"
]
}, - {
- "namespaces": [
- "EMAIL"
]
}
]
]
}
}
}, - "marketingActions": "EMAIL_TARGETING",
- "duleLabels": "C1",
- "backfillHistoricalProfileData": "true",
- "segmentMappingConfig": {
- "mapUserInput": false,
- "mapExperiencePlatformSegmentId": false,
- "mapExperiencePlatformSegmentName": false,
- "audienceTemplateId": "12a3238f-b509-4a40-b8fb-0a5006e7901d"
}
}
You can update a destination configuration by making a PUT request to the /destinations
endpoint and providing the ID of the destination configuration you want to update. In the body of the call, provide the updated destination configuration.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Destination configuration object to update existing destination. See an example of a destination configuration for a file-based and a streaming destination.
name | string (Name) Indicates the title of your destination in the Experience Platform catalog. |
description | string (Internal Description) Provide a description that Adobe will use in the Experience Platform destinations catalog for your destination card. Aim for no more than 4-5 sentences. |
status | string (Status) Indicates the lifecycle status of the destination card. Use |
Array of objects (Customer Authentication Configurations) Indicates the configuration used to authenticate Experience Platform customers to your server. See | |
Array of objects (customerDataField) Defines fields that you are requiring the Experience Platform customer to fill in when they set up a connection to your destination. | |
object Provide values for the parameters in this object to set up various UI elements for your destination. | |
object (Identity Namespaces) List of allowed identity namespaces. | |
Array of objects (destinationDeliveryItem) | |
object (Schema Config) The parameters in this object create your partner schema configuration. Read more about schema configuration. | |
object (Aggregation Policy) Indicates the aggregation policy that should be applied when Experience Platform exports data to your destination. Read more about aggregation policies. | |
marketingActions | Array of strings (Marketing Actions) Select if you want your destination to have default marketing actions. Read more about marketing actions in the Data usage policies overview. |
duleLabels | Array of strings (DULE Labels) Select if you want your destination to have default data usage labels. Read more in the Data usage labels glossary. |
backfillHistoricalProfileData | boolean (Historical profile data backfill) Default: true Controls whether historical profile data is exported when segments are activated to the destination. |
object The settings in this object determine how segments from Experience Platform are mapped to corresponding segments or audiences in your destination. |
Destination configuration updated
Bad request due to incorrect formatting
Unauthorized access
Access forbidden
Resource not found
{- "name": "Moviestar configuration",
- "description": "Moviestar is a fictional destination, used for this example.",
- "status": "TEST",
- "customerAuthenticationConfigurations": [
- {
- "authType": "BEARER",
- "options": {
- "property1": null,
- "property2": null
}
}
], - "customerDataFields": [
- {
- "name": "endpointsInstance",
- "type": "string",
- "title": "Select endpoint",
- "description": "Moviestar manages several instances across the globe for REST endpoints that our customers are provisioned for. Select your endpoint in the dropdown list.",
- "isRequired": true,
- "default": { },
- "enum": [
- "US",
- "EU",
- "APAC",
- "NZ"
], - "pattern": "^[A-Za-z]+$",
- "format": "password"
}
], - "uiAttributes": {
- "category": "mobile",
- "connectionType": "Server-to-server",
- "frequency": "Streaming"
}, - "identityNamespaces": {
- "property1": {
- "acceptsAttributes": "true",
- "acceptsCustomNamespaces": "true",
- "transformation": "string",
- "acceptedGlobalNamespaces": {
- "Email": { },
- "IDFA": { }
}
}, - "property2": {
- "acceptsAttributes": "true",
- "acceptsCustomNamespaces": "true",
- "transformation": "string",
- "acceptedGlobalNamespaces": {
- "Email": { },
- "IDFA": { }
}
}
}, - "destinationDelivery": [
- {
- "authenticationRule": "CUSTOMER_AUTHENTICATION",
- "authenticationId": "string",
- "destinationServerId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67"
}
], - "schemaConfig": {
- "profileFields": [
- {
- "name": "endpointsInstance",
- "type": "string",
- "title": "Select endpoint",
- "description": "Moviestar manages several instances across the globe for REST endpoints that our customers are provisioned for. Select your endpoint in the dropdown list.",
- "isRequired": true,
- "default": { },
- "enum": [
- "US",
- "EU",
- "APAC",
- "NZ"
], - "pattern": "^[A-Za-z]+$",
- "format": "password"
}
], - "profileRequired": true,
- "segmentRequired": true,
- "identityRequired": true
}, - "aggregation": {
- "aggregationType": "CONFIGURABLE_AGGREGATION",
- "bestEffortAggregation": {
- "maxUsersPerRequest": "10",
- "splitUserById": false
}, - "configurableAggregation": {
- "splitUserById": false,
- "maxBatchAgeInSecs": 3000,
- "maxNumEventsInBatch": 5000,
- "aggregationKey": {
- "includeSegmentId": true,
- "includeSegmentStatus": true,
- "includeIdentity": true,
- "oneIdentityPerGroup": false,
- "groups": [
- [
- {
- "namespaces": [
- "IDFA",
- "GAID"
]
}, - {
- "namespaces": [
- "EMAIL"
]
}
]
]
}
}
}, - "marketingActions": "EMAIL_TARGETING",
- "duleLabels": "C1",
- "backfillHistoricalProfileData": "true",
- "segmentMappingConfig": {
- "mapUserInput": false,
- "mapExperiencePlatformSegmentId": false,
- "mapExperiencePlatformSegmentName": false,
- "audienceTemplateId": "12a3238f-b509-4a40-b8fb-0a5006e7901d"
}
}
{- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "name": "Moviestar configuration",
- "description": "Moviestar is a fictional destination, used for this example.",
- "status": "TEST",
- "customerAuthenticationConfigurations": [
- {
- "authType": "BEARER",
- "options": {
- "property1": null,
- "property2": null
}
}
], - "customerDataFields": [
- {
- "name": "endpointsInstance",
- "type": "string",
- "title": "Select endpoint",
- "description": "Moviestar manages several instances across the globe for REST endpoints that our customers are provisioned for. Select your endpoint in the dropdown list.",
- "isRequired": true,
- "default": { },
- "enum": [
- "US",
- "EU",
- "APAC",
- "NZ"
], - "pattern": "^[A-Za-z]+$",
- "format": "password"
}
], - "uiAttributes": {
- "category": "mobile",
- "connectionType": "Server-to-server",
- "frequency": "Streaming"
}, - "identityNamespaces": {
- "property1": {
- "acceptsAttributes": "true",
- "acceptsCustomNamespaces": "true",
- "transformation": "string",
- "acceptedGlobalNamespaces": {
- "Email": { },
- "IDFA": { }
}
}, - "property2": {
- "acceptsAttributes": "true",
- "acceptsCustomNamespaces": "true",
- "transformation": "string",
- "acceptedGlobalNamespaces": {
- "Email": { },
- "IDFA": { }
}
}
}, - "destinationDelivery": [
- {
- "authenticationRule": "CUSTOMER_AUTHENTICATION",
- "authenticationId": "string",
- "destinationServerId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67"
}
], - "schemaConfig": {
- "profileFields": [
- {
- "name": "endpointsInstance",
- "type": "string",
- "title": "Select endpoint",
- "description": "Moviestar manages several instances across the globe for REST endpoints that our customers are provisioned for. Select your endpoint in the dropdown list.",
- "isRequired": true,
- "default": { },
- "enum": [
- "US",
- "EU",
- "APAC",
- "NZ"
], - "pattern": "^[A-Za-z]+$",
- "format": "password"
}
], - "profileRequired": true,
- "segmentRequired": true,
- "identityRequired": true
}, - "aggregation": {
- "aggregationType": "CONFIGURABLE_AGGREGATION",
- "bestEffortAggregation": {
- "maxUsersPerRequest": "10",
- "splitUserById": false
}, - "configurableAggregation": {
- "splitUserById": false,
- "maxBatchAgeInSecs": 3000,
- "maxNumEventsInBatch": 5000,
- "aggregationKey": {
- "includeSegmentId": true,
- "includeSegmentStatus": true,
- "includeIdentity": true,
- "oneIdentityPerGroup": false,
- "groups": [
- [
- {
- "namespaces": [
- "IDFA",
- "GAID"
]
}, - {
- "namespaces": [
- "EMAIL"
]
}
]
]
}
}
}, - "marketingActions": "EMAIL_TARGETING",
- "duleLabels": "C1",
- "backfillHistoricalProfileData": "true",
- "segmentMappingConfig": {
- "mapUserInput": false,
- "mapExperiencePlatformSegmentId": false,
- "mapExperiencePlatformSegmentName": false,
- "audienceTemplateId": "12a3238f-b509-4a40-b8fb-0a5006e7901d"
}
}
You can delete the specified destination configuration by making a DELETE request to the /destinations
endpoint and providing the ID of the destination configuration you wish to delete in the request path.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Resource deleted successfully
Unauthorized access
Access forbidden
Resource not found
Destination server configurations contain information about the server receiving the messages (the server on your side). Template configurations allow you to configure how to format the exported message to your destination.
For a description of the functionality provided by this endpoint, see the overview on server and template specs in the Destination SDK documentation.
You can retrieve a list of all destination server configurations for your IMS Organization by making a GET request to the /destination-servers
endpoint.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Destination server configurations retrieved
Unauthorized access
Access forbidden
[- {
- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "name": "Your destination server",
- "destinationServerType": "URL_BASED",
- "urlBasedDestination": {
- "url": {
- "templatingStrategy": "PEBBLE_V1",
}
}, - "httpTemplate": {
- "requestBody": {
- "templatingStrategy": "PEBBLE_V1",
- "value": "{ \"attributes\": [ {% for ns in [\"external_id\", \"yourdestination_id\"] %} {% if input.profile.identityMap[ns] is not empty and first_namespace_encountered %} , {% endif %} {% set first_namespace_encountered = true %} {% for identity in input.profile.identityMap[ns]%} { \"{{ ns }}\": \"{{ identity.id }}\" {% if input.profile.segmentMembership.ups is not empty %} , \"AEPSegments\": { \"add\": [ {% for segment in input.profile.segmentMembership.ups %} {% if segment.value.status == \"realized\" or segment.value.status == \"existing\" %} {% if added_segment_found %} , {% endif %} {% set added_segment_found = true %} \"{{ destination.segmentAliases[segment.key] }}\" {% endif %} {% endfor %} ], \"remove\": [ {% for segment in input.profile.segmentMembership.ups %} {% if segment.value.status == \"exited\" %} {% if removed_segment_found %} , {% endif %} {% set removed_segment_found = true %} \"{{ destination.segmentAliases[segment.key] }}\" {% endif %} {% endfor %} ] } {% set removed_segment_found = false %} {% set added_segment_found = false %} {% endif %} {% if input.profile.attributes is not empty %} , {% endif %} {% for attribute in input.profile.attributes %} \"{{ attribute.key }}\": {% if attribute.value is empty %} null {% else %} \"{{ attribute.value.value }}\" {% endif %} {% if not loop.last%} , {% endif %} {% endfor %} } {% if not loop.last %} , {% endif %} {% endfor %} {% endfor %} ] }"
}, - "httpMethod": "POST",
- "queryParameters": {
- "templatingStrategy": "PEBBLE_V1",
}, - "contentType": "application/json",
- "headers": [
- {
- "header": "sample-header-requested-by-your-endpoint",
- "value": {
- "templatingStrategy": "PEBBLE_V1",
}
}
]
}
}
]
You can create a new destination server configuration by making a POST request to the /destination-servers
endpoint.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Server and template configuration object for a new destination. See examples of a server and template configuration.
Destination server configuration created
Bad request due to formatting error
Unauthorized access
Access forbidden
{- "name": "Your destination server",
- "destinationServerType": "URL_BASED",
- "urlBasedDestination": {
- "url": {
- "templatingStrategy": "PEBBLE_V1",
}
}, - "httpTemplate": {
- "requestBody": {
- "templatingStrategy": "PEBBLE_V1",
- "value": "{ \"attributes\": [ {% for ns in [\"external_id\", \"yourdestination_id\"] %} {% if input.profile.identityMap[ns] is not empty and first_namespace_encountered %} , {% endif %} {% set first_namespace_encountered = true %} {% for identity in input.profile.identityMap[ns]%} { \"{{ ns }}\": \"{{ identity.id }}\" {% if input.profile.segmentMembership.ups is not empty %} , \"AEPSegments\": { \"add\": [ {% for segment in input.profile.segmentMembership.ups %} {% if segment.value.status == \"realized\" or segment.value.status == \"existing\" %} {% if added_segment_found %} , {% endif %} {% set added_segment_found = true %} \"{{ destination.segmentAliases[segment.key] }}\" {% endif %} {% endfor %} ], \"remove\": [ {% for segment in input.profile.segmentMembership.ups %} {% if segment.value.status == \"exited\" %} {% if removed_segment_found %} , {% endif %} {% set removed_segment_found = true %} \"{{ destination.segmentAliases[segment.key] }}\" {% endif %} {% endfor %} ] } {% set removed_segment_found = false %} {% set added_segment_found = false %} {% endif %} {% if input.profile.attributes is not empty %} , {% endif %} {% for attribute in input.profile.attributes %} \"{{ attribute.key }}\": {% if attribute.value is empty %} null {% else %} \"{{ attribute.value.value }}\" {% endif %} {% if not loop.last%} , {% endif %} {% endfor %} } {% if not loop.last %} , {% endif %} {% endfor %} {% endfor %} ] }"
}, - "httpMethod": "POST",
- "queryParameters": {
- "templatingStrategy": "PEBBLE_V1",
}, - "contentType": "application/json",
- "headers": [
- {
- "header": "sample-header-requested-by-your-endpoint",
- "value": {
- "templatingStrategy": "PEBBLE_V1",
}
}
]
}
}
[- {
- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "name": "Your destination server",
- "destinationServerType": "URL_BASED",
- "urlBasedDestination": {
- "url": {
- "templatingStrategy": "PEBBLE_V1",
}
}, - "httpTemplate": {
- "requestBody": {
- "templatingStrategy": "PEBBLE_V1",
- "value": "{ \"attributes\": [ {% for ns in [\"external_id\", \"yourdestination_id\"] %} {% if input.profile.identityMap[ns] is not empty and first_namespace_encountered %} , {% endif %} {% set first_namespace_encountered = true %} {% for identity in input.profile.identityMap[ns]%} { \"{{ ns }}\": \"{{ identity.id }}\" {% if input.profile.segmentMembership.ups is not empty %} , \"AEPSegments\": { \"add\": [ {% for segment in input.profile.segmentMembership.ups %} {% if segment.value.status == \"realized\" or segment.value.status == \"existing\" %} {% if added_segment_found %} , {% endif %} {% set added_segment_found = true %} \"{{ destination.segmentAliases[segment.key] }}\" {% endif %} {% endfor %} ], \"remove\": [ {% for segment in input.profile.segmentMembership.ups %} {% if segment.value.status == \"exited\" %} {% if removed_segment_found %} , {% endif %} {% set removed_segment_found = true %} \"{{ destination.segmentAliases[segment.key] }}\" {% endif %} {% endfor %} ] } {% set removed_segment_found = false %} {% set added_segment_found = false %} {% endif %} {% if input.profile.attributes is not empty %} , {% endif %} {% for attribute in input.profile.attributes %} \"{{ attribute.key }}\": {% if attribute.value is empty %} null {% else %} \"{{ attribute.value.value }}\" {% endif %} {% if not loop.last%} , {% endif %} {% endfor %} } {% if not loop.last %} , {% endif %} {% endfor %} {% endfor %} ] }"
}, - "httpMethod": "POST",
- "queryParameters": {
- "templatingStrategy": "PEBBLE_V1",
}, - "contentType": "application/json",
- "headers": [
- {
- "header": "sample-header-requested-by-your-endpoint",
- "value": {
- "templatingStrategy": "PEBBLE_V1",
}
}
]
}
}
]
You can retrieve detailed information about a specific destination server configuration by making a GET request to the /destination-servers
endpoint and providing the ID of the destination server configuration you want to retrieve.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Destination server configuration retrieved
Bad request due to incorrect formatting
Unauthorized access
Access forbidden
Resource not found
[- {
- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "name": "Your destination server",
- "destinationServerType": "URL_BASED",
- "urlBasedDestination": {
- "url": {
- "templatingStrategy": "PEBBLE_V1",
}
}, - "httpTemplate": {
- "requestBody": {
- "templatingStrategy": "PEBBLE_V1",
- "value": "{ \"attributes\": [ {% for ns in [\"external_id\", \"yourdestination_id\"] %} {% if input.profile.identityMap[ns] is not empty and first_namespace_encountered %} , {% endif %} {% set first_namespace_encountered = true %} {% for identity in input.profile.identityMap[ns]%} { \"{{ ns }}\": \"{{ identity.id }}\" {% if input.profile.segmentMembership.ups is not empty %} , \"AEPSegments\": { \"add\": [ {% for segment in input.profile.segmentMembership.ups %} {% if segment.value.status == \"realized\" or segment.value.status == \"existing\" %} {% if added_segment_found %} , {% endif %} {% set added_segment_found = true %} \"{{ destination.segmentAliases[segment.key] }}\" {% endif %} {% endfor %} ], \"remove\": [ {% for segment in input.profile.segmentMembership.ups %} {% if segment.value.status == \"exited\" %} {% if removed_segment_found %} , {% endif %} {% set removed_segment_found = true %} \"{{ destination.segmentAliases[segment.key] }}\" {% endif %} {% endfor %} ] } {% set removed_segment_found = false %} {% set added_segment_found = false %} {% endif %} {% if input.profile.attributes is not empty %} , {% endif %} {% for attribute in input.profile.attributes %} \"{{ attribute.key }}\": {% if attribute.value is empty %} null {% else %} \"{{ attribute.value.value }}\" {% endif %} {% if not loop.last%} , {% endif %} {% endfor %} } {% if not loop.last %} , {% endif %} {% endfor %} {% endfor %} ] }"
}, - "httpMethod": "POST",
- "queryParameters": {
- "templatingStrategy": "PEBBLE_V1",
}, - "contentType": "application/json",
- "headers": [
- {
- "header": "sample-header-requested-by-your-endpoint",
- "value": {
- "templatingStrategy": "PEBBLE_V1",
}
}
]
}
}
]
You can update a destination server configuration by making a PUT request to the /destination-servers
endpoint and providing the ID of the destination server configuration you want to update. In the body of the call, provide the updated destination server configuration.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Server and template configuration object to update a destination. See examples of a server and template configuration.
Destination server configuration updated
Bad request due to incorrect formatting
Unauthorized access
Access forbidden
Resource not found
{- "name": "Your destination server",
- "destinationServerType": "URL_BASED",
- "urlBasedDestination": {
- "url": {
- "templatingStrategy": "PEBBLE_V1",
}
}, - "httpTemplate": {
- "requestBody": {
- "templatingStrategy": "PEBBLE_V1",
- "value": "{ \"attributes\": [ {% for ns in [\"external_id\", \"yourdestination_id\"] %} {% if input.profile.identityMap[ns] is not empty and first_namespace_encountered %} , {% endif %} {% set first_namespace_encountered = true %} {% for identity in input.profile.identityMap[ns]%} { \"{{ ns }}\": \"{{ identity.id }}\" {% if input.profile.segmentMembership.ups is not empty %} , \"AEPSegments\": { \"add\": [ {% for segment in input.profile.segmentMembership.ups %} {% if segment.value.status == \"realized\" or segment.value.status == \"existing\" %} {% if added_segment_found %} , {% endif %} {% set added_segment_found = true %} \"{{ destination.segmentAliases[segment.key] }}\" {% endif %} {% endfor %} ], \"remove\": [ {% for segment in input.profile.segmentMembership.ups %} {% if segment.value.status == \"exited\" %} {% if removed_segment_found %} , {% endif %} {% set removed_segment_found = true %} \"{{ destination.segmentAliases[segment.key] }}\" {% endif %} {% endfor %} ] } {% set removed_segment_found = false %} {% set added_segment_found = false %} {% endif %} {% if input.profile.attributes is not empty %} , {% endif %} {% for attribute in input.profile.attributes %} \"{{ attribute.key }}\": {% if attribute.value is empty %} null {% else %} \"{{ attribute.value.value }}\" {% endif %} {% if not loop.last%} , {% endif %} {% endfor %} } {% if not loop.last %} , {% endif %} {% endfor %} {% endfor %} ] }"
}, - "httpMethod": "POST",
- "queryParameters": {
- "templatingStrategy": "PEBBLE_V1",
}, - "contentType": "application/json",
- "headers": [
- {
- "header": "sample-header-requested-by-your-endpoint",
- "value": {
- "templatingStrategy": "PEBBLE_V1",
}
}
]
}
}
[- {
- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "name": "Your destination server",
- "destinationServerType": "URL_BASED",
- "urlBasedDestination": {
- "url": {
- "templatingStrategy": "PEBBLE_V1",
}
}, - "httpTemplate": {
- "requestBody": {
- "templatingStrategy": "PEBBLE_V1",
- "value": "{ \"attributes\": [ {% for ns in [\"external_id\", \"yourdestination_id\"] %} {% if input.profile.identityMap[ns] is not empty and first_namespace_encountered %} , {% endif %} {% set first_namespace_encountered = true %} {% for identity in input.profile.identityMap[ns]%} { \"{{ ns }}\": \"{{ identity.id }}\" {% if input.profile.segmentMembership.ups is not empty %} , \"AEPSegments\": { \"add\": [ {% for segment in input.profile.segmentMembership.ups %} {% if segment.value.status == \"realized\" or segment.value.status == \"existing\" %} {% if added_segment_found %} , {% endif %} {% set added_segment_found = true %} \"{{ destination.segmentAliases[segment.key] }}\" {% endif %} {% endfor %} ], \"remove\": [ {% for segment in input.profile.segmentMembership.ups %} {% if segment.value.status == \"exited\" %} {% if removed_segment_found %} , {% endif %} {% set removed_segment_found = true %} \"{{ destination.segmentAliases[segment.key] }}\" {% endif %} {% endfor %} ] } {% set removed_segment_found = false %} {% set added_segment_found = false %} {% endif %} {% if input.profile.attributes is not empty %} , {% endif %} {% for attribute in input.profile.attributes %} \"{{ attribute.key }}\": {% if attribute.value is empty %} null {% else %} \"{{ attribute.value.value }}\" {% endif %} {% if not loop.last%} , {% endif %} {% endfor %} } {% if not loop.last %} , {% endif %} {% endfor %} {% endfor %} ] }"
}, - "httpMethod": "POST",
- "queryParameters": {
- "templatingStrategy": "PEBBLE_V1",
}, - "contentType": "application/json",
- "headers": [
- {
- "header": "sample-header-requested-by-your-endpoint",
- "value": {
- "templatingStrategy": "PEBBLE_V1",
}
}
]
}
}
]
You can delete the specified destination server configuration by making a DELETE request to the /destination-servers
endpoint and providing the ID of the destination server configuration you wish to delete in the request path.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Resource deleted successfully
Unauthorized access
Access forbidden
Resource not found
Audience metadata templates allow you to programmatically manage audiences in your destination.
For a description of when to use this endpoint, see the overview on audience metadata management in the Destination SDK documentation.
You can retrieve a list of all audience templates for your IMS Organization by making a GET request to the /audience-templates
endpoint.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Audience templates retrieved
Unauthorized access
Access forbidden
[- {
- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "metadataTemplate": {
- "name": "string",
- "create": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "update": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "delete": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "validate": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}
}, - "validations": [
- {
- "field": "Account ID",
- "regex": "^[0-9]*$"
}
]
}
]
You can create a new audience template by making a POST request to the /audience-templates
endpoint.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Audience template configuration object for a new destination. See the configuration examples in the audience metadata functionality document.
object Contains the settings for your audience metadata template. | |
Array of objects (validation) Runs validations for any fields in the template configuration before making a call to the partner API. For example, you could validate that the user’s account ID is input correctly. |
Audience template created
Bad request due to incorrect payload formatting
Unauthorized access
Access forbidden
{- "metadataTemplate": {
- "name": "string",
- "create": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "update": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "delete": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "validate": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}
}, - "validations": [
- {
- "field": "Account ID",
- "regex": "^[0-9]*$"
}
]
}
[- {
- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "metadataTemplate": {
- "name": "string",
- "create": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "update": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "delete": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "validate": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}
}, - "validations": [
- {
- "field": "Account ID",
- "regex": "^[0-9]*$"
}
]
}
]
You can retrieve detailed information about a specific audience template by making a GET request to the /audience-templates
endpoint and providing the ID of the audience template you want to retrieve.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Audience template configuration retrieved
Bad request due to incorrect formatting
Unauthorized access
Access forbidden
Resource not found
[- {
- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "metadataTemplate": {
- "name": "string",
- "create": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "update": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "delete": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "validate": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}
}, - "validations": [
- {
- "field": "Account ID",
- "regex": "^[0-9]*$"
}
]
}
]
You can update an audience template by making a PUT request to the /audience-templates
endpoint and providing the ID of the audience template you want to update. In the body of the call, provide the updated template.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Audience template configuration object to update a destination. See the configuration examples in the audience metadata functionality document.
object Contains the settings for your audience metadata template. | |
Array of objects (validation) Runs validations for any fields in the template configuration before making a call to the partner API. For example, you could validate that the user’s account ID is input correctly. |
Audience template updated
Bad request due to incorrect formatting
Unauthorized access
Access forbidden
Resource not found
{- "metadataTemplate": {
- "name": "string",
- "create": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "update": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "delete": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "validate": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}
}, - "validations": [
- {
- "field": "Account ID",
- "regex": "^[0-9]*$"
}
]
}
[- {
- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "metadataTemplate": {
- "name": "string",
- "create": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "update": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "delete": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}, - "validate": {
- "httpMethod": "POST",
- "headers": [
- {
- "value": "application/json",
- "header": "Content-Type"
}, - {
- "value": "Bearer {{oauth2ServiceAccessToken}}",
- "header": "Authorization"
}
], - "requestBody": {
- "json": {
- "segments": [
- {
- "name": "{{segment.name}}",
- "description": "{{segment.description}}",
- "source_type": "FIRST_PARTY",
- "ad_account_id": "{{customerData.accountId}}",
- "retention_in_days": 180
}
]
}
}, - "responseFields": [
- {
- "value": "{{body.segments[0].segment.id}}",
- "name": "externalAudienceId"
}
], - "responseErrorFields": [
- {
- "value": "{{root}}",
- "name": "message"
}
]
}
}, - "validations": [
- {
- "field": "Account ID",
- "regex": "^[0-9]*$"
}
]
}
]
You can delete the specified audience template by making a DELETE request to the /audience-templates
endpoint and providing the ID of the audience template you wish to delete in the request path.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Resource deleted successfully
Unauthorized access
Access forbidden
Resource not found
If a Platform customer does not need to provide any authentication credentials to connect to your destination, a credentials configuration can provide the required credentials instead. Note that you must also select PLATFORM_AUTHENTICATION
in the destination configuration in order to make use of this endpoint.
For more information when to use this endpoint, see the overview on authentication configuration in the Destination SDK documentation.
You can retrieve a list of all credentials configurations for your IMS Organization by making a GET request to the /credentials
endpoint.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Destination server configurations retrieved
Unauthorized access
Access forbidden
[- {
- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "type": "OAUTH2_CLIENT_CREDENTIAL",
- "name": "string",
- "basicAuthentication": {
- "username": "string",
- "password": "string"
}
}
]
You can create a new credentials configuration by making a POST request to the /credentials
endpoint.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Credentials configuration object for a new destination
Credentials configuration created
Bad request due to incorrect payload formatting
Unauthorized access
Access forbidden
{- "type": "OAUTH2_CLIENT_CREDENTIAL",
- "name": "string",
- "basicAuthentication": {
- "username": "string",
- "password": "string"
}
}
[- {
- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "type": "OAUTH2_CLIENT_CREDENTIAL",
- "name": "string",
- "basicAuthentication": {
- "username": "string",
- "password": "string"
}
}
]
You can retrieve detailed information about a specific credentials configuration by making a GET request to the /credentials
endpoint and providing the ID of the credentials configuration you want to update.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Credentials configuration retrieved
Bad request due to incorrect formatting
Unauthorized access
Access forbidden
Resource not found
[- {
- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "type": "OAUTH2_CLIENT_CREDENTIAL",
- "name": "string",
- "basicAuthentication": {
- "username": "string",
- "password": "string"
}
}
]
You can update a credentials configuration by making a PUT request to the /credentials
endpoint and providing the ID of the credentials configuration you want to update. In the body of the call, provide the updated credentials configuration.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Credentials configuration object to update a credentials configuration.
Credentials configuration updated
Bad request due to incorrect payload format
Unauthorized access
Access forbidden
Resource not found
{- "type": "OAUTH2_CLIENT_CREDENTIAL",
- "name": "string",
- "basicAuthentication": {
- "username": "string",
- "password": "string"
}
}
[- {
- "instanceId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "createdDate": "2020-11-17T06:49:24.331012Z",
- "lastModifiedDate": "2020-11-17T06:49:24.331012Z",
- "type": "OAUTH2_CLIENT_CREDENTIAL",
- "name": "string",
- "basicAuthentication": {
- "username": "string",
- "password": "string"
}
}
]
You can delete the specified credentials configuration by making a DELETE request to the /credentials
endpoint and providing the ID of the credentials configuration you wish to delete in the request path.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Resource deleted successfully
Unauthorized access
Access forbidden
Resource not found
The Destination Authoring API provides several tools to test file-based and streaming destinations. Read the overview documents for testing file-based and streaming destinations to understand the tools available to you.
Use this API endpoint to generate sample profiles for two separate use cases. You can either:
destinationInstanceId | string Also known as order ID. The ID of the destination instance based on which you are generating sample profiles. |
destinationId | string The ID of the destination configuration based on which you are generating sample profiles. The destination ID that you should use here is the ID that corresponds to a destination configuration, created using the |
count | integer <int32> Optional. The number of sample profiles that you are generating. The parameter can take values between |
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Successful Response
Unauthorized
Forbidden
Resource Not Found
[- {
- "segmentMembership": {
- "ups": {
- "03fb9938-8537-4b4c-87f9-9c4d413a0ee5": {
- "lastQualificationTime": "2021-06-30T18:40:07.591378Z",
- "status": "realized"
}, - "27e05542-d6a3-46c7-9c8e-d59d50229530": {
- "lastQualificationTime": "2021-06-30T18:40:07.591380Z",
- "status": "realized"
}
}
}, - "attributes": {
- "personalEmail": {
- "address": "john.smith@abc.com"
}
}, - "identityMap": {
- "ECID": [
- {
- "id": "ECID-7VEsJ"
}
]
}
}
]
Retrieve a sample template corresponding to the destination's destinationID
. For more information, see the functionality documentation on generating a sample template.
DESTINATION_CONFIGURATION_ID required | string The ID of the destination configuration for which you are generating a message transformation template. |
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Successful Response
Unauthorized
Forbidden
Resource Not Found
You can render exported data by making a POST request to the testing/template/render
endpoint and providing the destination ID of the destination configuration and the template you created using the sample template API endpoint.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Data needed to render test profiles using provided template
destinationId | string The ID of the destination configuration for which you are rendering exported data. |
template | string The character-escaped version of the template based on which you are rendering exported data. |
Array of objects (getSampleProfileResponse) Optionally, you can add profiles to the body of the call. To get sample profiles to use in the call, you can generate some by using the Sample profile generation API. |
Successful Response
Unauthorized
Forbidden
Resource Not Found
{- "destinationId": "2307ec2b-4798-45a4-9239-5d0a2fb0ed67",
- "template": "{# THIS is an example template for multiple profiles #}\r\n{\r\n \"profiles\": [\r\n {% for profile in input.profiles %}\r\n {\r\n \"identities\": [\r\n {% for email in profile.identityMap.email %}\r\n {\r\n \"type\": \"email\",\r\n \"id\": \"{{ email.id }}\"\r\n }{% if not loop.last %},{% endif %}\r\n {% endfor %}\r\n\r\n {# Add a comma only if we have both emails and external_ids. #}\r\n {% if profile.identityMap.email is not empty and profile.identityMap.external_id is not empty %}\r\n ,\r\n {% endif %}\r\n\r\n {% for external in profile.identityMap.external_id %}\r\n {\r\n \"type\": \"external_id\",\r\n \"id\": \"{{ external.id }}\"\r\n }{% if not loop.last %},{% endif %}\r\n {% endfor %}\r\n ],\r\n \"AdobeExperiencePlatformSegments\": {\r\n \"add\": [\r\n {% for segment in profile.segmentMembership.ups | added %}\r\n \"{{ segment.key }}\"{% if not loop.last %},{% endif %}\r\n {% endfor %}\r\n ],\r\n \"remove\": [\r\n {# Alternative syntax for filtering segments by status: #}\r\n {% for segment in removedSegments(profile.segmentMembership.ups) %}\r\n \"{{ segment.key }}\"{% if not loop.last %},{% endif %}\r\n {% endfor %}\r\n ]\r\n }\r\n }{% if not loop.last %},{% endif %}\r\n {% endfor %}\r\n ]\r\n}",
- "profiles": [
- {
- "segmentMembership": {
- "ups": {
- "03fb9938-8537-4b4c-87f9-9c4d413a0ee5": {
- "lastQualificationTime": "2021-06-30T18:40:07.591378Z",
- "status": "realized"
}, - "27e05542-d6a3-46c7-9c8e-d59d50229530": {
- "lastQualificationTime": "2021-06-30T18:40:07.591380Z",
- "status": "realized"
}
}
}, - "attributes": {
- "personalEmail": {
- "address": "john.smith@abc.com"
}
}, - "identityMap": {
- "ECID": [
- {
- "id": "ECID-7VEsJ"
}
]
}
}
]
}
"string"
This API endpoint tests the connection to your destination by sending messages to the partner endpoint. Optionally, you can send a list of profiles in the request. If you do not send any profiles, Experience Platform generates those internally. In this case, you can view the profiles that were used for validation in the response you receive from your endpoint.
To use this endpoint, you must have a connection to your destination in the Experience Platform UI. Refer to the important note at the top of the Destination testing API tutorial.
DESTINATION_INSTANCE_ID required | string Also known as order ID. The ID of the destination instance based on which you are generating sample profiles. |
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
profileListRequest
profiles | Array of objects (JsonNode) Optionally, you can add profiles to the call when testing your destination. |
Successful Response
Unauthorized
Forbidden
Resource Not Found
{- "profiles": [
- {
- "segmentMembership": {
- "ups": {
- "374a9a6c-c719-4cdb-a660-155a2838e6d6": {
- "lastQualificationTime": "2021-05-13T12:16:27.248585Z",
- "status": "realized"
}, - "896f8776-9498-47b4-b994-51cb3f61c2c5": {
- "lastQualificationTime": "2021-05-13T12:16:27.248605Z",
- "status": "realized"
}
}
}, - "identityMap": {
- "ECID": [
- {
- "id": "ECID-Z3i2t"
}
], - "external_id": [
- {
- "id": "external_id-h29Fq"
}
]
}, - "attributes": {
- "firstName": {
- "value": "John"
}
}
}
]
}
{- "results": [
- {
- "aggregationKey": {
- "destinationInstanceId": null,
- "segmentId": null,
- "segmentStatus": "realized",
- "identityNamespaces": [
- [
- "email",
- "phone"
]
]
}, - "httpCalls": [
- {
- "traceId": "string",
- "request": {
- "body": "string",
- "headers": { },
- "method": "string",
- "uri": "string"
}, - "response": {
- "body": "{ \"attributes\": [ { \"external_id\": \"external_id-h29Fq\" , \"AdobeExperiencePlatformSegments\": { \"add\": [ \"Nirvana fans\" , \"RHCP fans\" ], \"remove\": [ ] } , \"key\": \"string\" } ] }",
- "code": 200,
- "headers": [
- {
- "Connection": "keep-alive"
}, - {
- "Content-Type": "application/json"
}, - {
- "Server": "nginx"
}, - {
- "Vary": "Origin,Accept-Encoding"
}, - {
- "transfer-encoding": "chunked"
}
]
}
}
]
}
], - "inputProfiles": [
- {
- "segmentMembership": {
- "ups": {
- "374a9a6c-c719-4cdb-a660-155a2838e6d6": {
- "lastQualificationTime": "2021-05-13T12:16:27.248585Z",
- "status": "realized"
}, - "896f8776-9498-47b4-b994-51cb3f61c2c5": {
- "lastQualificationTime": "2021-05-13T12:16:27.248605Z",
- "status": "realized"
}
}
}, - "identityMap": {
- "ECID": [
- {
- "id": "ECID-Z3i2t"
}
], - "external_id": [
- {
- "id": "external_id-h29Fq"
}
]
}, - "attributes": {
- "firstName": {
- "value": "John"
}
}
}
]
}
After you have configured and tested your destination, you can use the destination publishing endpoint to submit it to Adobe for review and publishing. Read more in the destination publishing API tutorial.
You can retrieve a list of all destinations submitted for publishing for your IMS Organization by making a GET request to the /destinations/publish
endpoint.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Success
Unauthorized
Forbidden
[- {
- "destinationId": "49966037-32cd-4457-a105-2cbf9c01826a",
- "publishDetailsList": [
- {
- "configId": "1230e5e4-4ab8-4655-ae1e-a6296b30f2ec",
- "allowedOrgs": [
- "xyz@AdobeOrg",
- "*"
], - "status": "TEST",
- "destinationType": "PUBLIC",
- "publishedDate": 1630617746
}
]
}
]
Submit a destination configuration for publishing by making a POST request to the /destinations/publish
endpoint.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
Destination Publish request object
destinationId | string The destination ID of the destination configuration that you are submitting for publishing. Get the destination ID of a destination configuration by using the destination configuration API reference. |
destinationAccess | string Use |
Created - Destination Published
Bad Request - Formatting Error
Unauthorized - Missing Permissions or Headers
Forbidden - Access Denied or Missing Headers
{- "destinationId": "49966037-32cd-4457-a105-2cbf9c01826a",
- "destinationAccess": "ALL"
}
{- "destinationId": "49966037-32cd-4457-a105-2cbf9c01826a",
- "publishDetailsList": [
- {
- "configId": "1230e5e4-4ab8-4655-ae1e-a6296b30f2ec",
- "allowedOrgs": [
- "xyz@AdobeOrg",
- "*"
], - "status": "TEST",
- "destinationType": "PUBLIC",
- "publishedDate": 1630617746
}
]
}
You can retrieve detailed information about a specific destination publish request by making a GET request to the /destinations/publish
endpoint and providing the ID of the destination configuration for which you want to retrieve the publishing status.
Authorization required | string The access token which can be copied from your Experience Platform integration, prefixed with "Bearer". For more information on how to obtain this value, visit the getting started tutorial. |
x-api-key required | string The API key which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-gw-ims-org-id required | string The IMS Organization ID which can be copied from your Experience Platform integration. For more information on how to obtain this value, visit the getting started tutorial. |
x-sandbox-name required | string The name of the sandbox in which the operation will take place. See the sandboxes overview for more information. For more information on how to obtain this value, visit the getting started tutorial |
OK - Details Retrieved
Bad Request - Formatting Error
Unauthorized - Missing Permissions or Headers
Forbidden - Access Denied or Missing Headers
Not Found - Incorrect Configuration ID
{- "destinationId": "49966037-32cd-4457-a105-2cbf9c01826a",
- "publishDetailsList": [
- {
- "configId": "1230e5e4-4ab8-4655-ae1e-a6296b30f2ec",
- "allowedOrgs": [
- "xyz@AdobeOrg",
- "*"
], - "status": "TEST",
- "destinationType": "PUBLIC",
- "publishedDate": 1630617746
}
]
}