Submit for review a productized destination authored in Destination SDK

Overview overview

IMPORTANT
  • The process documented here is only required for partners submitting productized (public) destinations. If you are creating a private destination for your own use, you do not need to produce and share these materials with Adobe.

  • Adobe’s standard response time to review destination publish requests is five business days.

  • If the Adobe team asks that you make any updates to your configurations following your initial submission, you must submit another destination publish request after you make the updates.

  • Even after your destination is live in the Experience Platform catalog, if you need to make any updates to your configurations, you must submit a new destination publish request for the updates to be reflected in the configurations.

Before your destination can be published to the Experience Platform destinations catalog, you must provide Adobe with certain information about the destination and the testing you performed, to ensure that users enjoy the best possible experience when activating data to your platform.

This page lists all the information you need to provide when submitting or updating a destination you authored using Adobe Experience Platform Destination SDK. To successfully submit a destination in Adobe Experience Platform, send an email to aepdestsdk@adobe.com which includes:

  • A description of the use cases that your destination solves. This is only required if you are submitting a new destination configuration.

  • A description of the reason for your destination submission. This is only required if you are updating an existing destination configuration.

  • Test results after using the test destination API endpoint to perform an HTTP call to your destination. Please share with Adobe an API call made to your destination endpoint and the API response received from your destination endpoint.

  • Additional requirements for file-based destinations:

    • Share a request and a response sample after using the testing API to test your file-based destination with sample profiles.
    • Attach a sample file generated by your destination and exported to your storage location.
    • Submit some form of proof that you have successfully ingested the exported file from the storage location into your system.
  • Proof that you have submitted a destination publishing request for your destination using the destination publishing API.

  • A documentation PR (pull request), following the instructions described in the self-service documentation process.

  • An image file which will be displayed as a logo for your destination card in the Experience Platform destinations catalog.

You can find detailed information about each item in the sections below:

Use case description use-case-description

Provide a description of the use cases that your destination solves for Experience Platform customers. Your descriptions can be similar to use cases from existing partners:

  • Pinterest: Create audiences from your customer lists, people who’ve visited your site or people who have already interacted with your content on Pinterest.
  • Yahoo Data X: DataX APIs are available for advertisers that want to target a specific audience group keyed off email addresses in Verizon Media (VMG) can quickly create a new audience and push the desired audience group using VMG’s near-real-time API.

Reason for update reason-for-update

NOTE
This section is only required when you update an existing configuration.

Provide a brief description of the issue that your submission solves for the existing destination. For example, your submission might update the name, description, and logo of your destination as you move from beta to general availability. Or, your submission might fix a bug discovered in your destination configuration.

Test results after using the test destination API testing-api-response

Provide test results after using the test destination API endpoint to perform an HTTP call to your destination. This includes:

  • The complete API request (headers and body) made to your destination endpoint, using the testing API.
  • The API response received from your destination endpoint.

For example, your request and response may look similar to the samples below:

Request


curl --location --request POST 'https://platform.adobe.io/data/core/activation/authoring/testing/destinationInstance/3e0ac39c-ef14-4101-9fd9-cf0909814510' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--data-raw '{
   "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":{
            "Email":[
               {
                  "id":"Email-iIyJc"
               }
            ],
            "IDFA":[
               {
                  "id":"IDFA-viPAW"
               }
            ],
            "GAID":[
               {
                  "id":"GAID-Bc6LE"
               }
            ],
            "Email_LC_SHA256":[
               {
                  "id":"Email_LC_SHA256-gEOdj"
               }
            ]
         },
         "attributes":{
            "key":{
               "value":"string"
            }
         }
      }
   ]
}'

Response


{
   "results":[
      {
         "aggregationKey":{
            "destinationInstanceId":"string",
            "segmentId":"string",
            "segmentStatus":"realized",
            "identityNamespaces":[
               [
                  "email",
                  "phone"
               ]
            ]
         },
         "httpCalls":[
            {
               "traceId":"a06fec2d-a886-4219-8975-4e4b7ed26539",
               "request":{
                  "body":"{ \"attributes\": [  { \"external_id\": \"external_id-h29Fq\"  , \"AdobeExperiencePlatformSegments\": { \"add\": [  \"Nirvana fans\" ,  \"RHCP fans\"   ], \"remove\": [  ] }  ,  \"key\":  \"string\"    }  ] }",
                  "headers":[
                     {
                        "Content-Type":"application/json"
                     }
                  ],
                  "method":"POST",
                  "uri":"https://api.moviestar.com/users/track"
               },
               "response":{
                  "body":"{\"status\": \"success\"}",
                  "code":"200",
                  "headers":[
                     {
                        "Connection":"keep-alive"
                     },
                     {
                        "Content-Type":"application/json"
                     },
                     {
                        "Server":"nginx"
                     },
                     {
                        "Vary":"Origin,Accept-Encoding"
                     },
                     {
                        "transfer-encoding":"chunked"
                     }
                  ]
               }
            }
         ]
      }
   ],
   "inputProfiles":[
      {
         "segmentMembership":{
            "ups":{
               "03fb9938-8537-4b4c-87f9-9c4d413a0ee5":{
                  "lastQualificationTime":"2021-06-17T12:25:12.872039Z",
                  "status":"realized"
               },
               "27e05542-d6a3-46c7-9c8e-d59d50229530":{
                  "lastQualificationTime":"2021-06-17T12:25:12.872042Z",
                  "status":"realized"
               }
            }
         },
         "personalEmail":{
            "address":"john.smith@abc.com"
         },
         "identityMap":{
            "Email":[
               {
                  "id":"Email-iIyJc"
               }
            ],
            "IDFA":[
               {
                  "id":"IDFA-viPAW"
               }
            ],
            "GAID":[
               {
                  "id":"GAID-Bc6LE"
               }
            ],
            "Email_LC_SHA256":[
               {
                  "id":"Email_LC_SHA256-gEOdj"
               }
            ]
         },
         "person":{
            "name":{
               "firstName":"string"
            }
         }
      }
   ]
}

Additional requirements for file-based destinations additional-file-based-destination-requirements

For file-based destinations, you must provide additional proof that you have correctly set up your destination. Make sure that you include the items below:

Testing API response testing-api-response-file-based

Include a request and a response sample after using the testing API to test your file-based destination with sample profiles.

Attach exported file attach-exported-file

In your submission email, attach a CSV file that was exported into your storage location by the destination that you set up.

Proof of successful ingestion proof-of-successful-ingestion

Finally, you must provide some form of proof that the data has successfully been ingested into your system after it was exported into the storage location you provided. Please provide any of the items below:

  • Screenshots or a brief screencapture video where you take the file manually from the storage location and ingest it into your system.
  • Screenshots or a brief screencapture video where your system’s UI confirms that the filename generated by Experience Platform was successfully ingested into your system.
  • Log lines from your system that Adobe can correlate with either the filename or with the data generated from Experience Platform.

Proof that you have submitted a destination publishing request destination-publishing-request-proof

After successfully testing your destination, you must use the destination publishing API to submit the destination to Adobe for review and publishing.

Provide the ID of the publish request for your destination. For information on how to retrieve the publish request ID, read how to retrieve destination publish requests.

Destination documentation PR (pull request) for productized integrations documentation-pr

If you are an Independent Software Vendor (ISV) or System Integrator (SI) creating a productized integration, you must use the self-service documentation process to create a product documentation page for your destination. As part of the submission process, provide the pull request (PR) for your destination documentation.

The destinations catalog includes a logo for each destination card. In your submission email, include an image with the logo for your destination.

The image requirements are:

  • Format: SVG
  • Size: less than 2MB

Download sample email download-sample-email

Download a sample email with all the information that you need to provide to Adobe.

recommendation-more-help
7f4d1967-bf93-4dba-9789-bb6b505339d6