Additional steps to send events additional-steps-to-send-events

On this page: Set up your data system to push events to the Streaming Ingestion APIs so the events you configured actually reach Journey Optimizer and trigger your journeys.

To configure events to be sent to Streaming Ingestion APIs and to be used in Journey Optimizer, you need to follow these steps:

  1. Get the inlet URL from Adobe Experience Platform APIs. Learn more in Streaming Ingestion APIs overview.
  2. Copy the payload from the payload preview in the Event menu. Learn more on this page.
IMPORTANT
For event requirements and limitations (streaming, Query Service, batch ingestion), see Journey guardrails - Events.

You then need to configure the data system that pushes events to Streaming Ingestion APIs using the payload you copied:

  1. Set up a POST API call to the Streaming Ingestion APIs URL (called an inlet).
  2. Use the payload you copied from Journey Optimizer in the body (“data section”) of the API call to Streaming Ingestion APIs. See below for an example
  3. Determine where to get all the variables present in the payload. Example: if the event is supposed to convey the address, the payload pasted will show “address”: “string”. “string” should be replaced by the variable that will automatically populate the right value, the email of the person to send a message to. Note that in the payload preview, in the Header section, we autofill many values expected to facilitate your work.
  4. Select “application/json” as a body type.
  5. Pass your organization ID in the header using the key “x-gw-ims-org-id”. For the value, use your organization ID (“XXX@AdobeOrg”).

Here is an example of a Streaming Ingestion APIs event:

{
    "header": {
        "msgType": "xdmEntityCreate",
        "msgId": "c25585b9-252e-431d-b562-e73da70c04e7",
        "msgVersion": "1.0",
        "xactionId": "f5995abe-c49d-4848-9577-a7a4fc2996fb",
        "datasetId": "string - required if you want the data to land in a specific dataset - not mandatory",
        "imsOrgId": "XXX@AdobeOrg",
        "schemaRef": {
            "id": "XXX",
            "contentType": "application/vnd.adobe.xed-full+json;version=1"
        },
        "source": {
            "name": "Journeys"
        }
    },
    "body": {
        "xdmMeta": {
            "schemaRef": {
                "id": "XXX",
                "contentType": "application/vnd.adobe.xed-full+json;version=1"
            }
        },
        "xdmEntity": {
            "_instance_name": {
                "person": {
                    "firstName": "string",
                    "lastName": "string",
                    "gender": "string",
                    "birthYear": 10,
                    "emailAddress": "string"
                }
            },
            "identityMap": {
                "Email": [
                {
                    "id": "string"
                    }
                ]
            },
            "_id": "string",
            "timestamp": "2023-05-29T00:00:00.000Z",
            "_experience": {
                "campaign": {
                    "orchestration": {
                    "eventID": "XXX"
                    }
                }
            }
        }
    }
}

To facilitate the identification of the place where to paste the “data” part, you can use a JSON visualization tool such as JSON formatter.

To troubleshoot Streaming Ingestion APIs, refer to Experience Platform documentation.

AI Knowledge Reference

This section contains structured knowledge intended to support interpretation, retrieval, and question answering related to this topic.

For complete understanding, this information should be combined with the documentation on this page. Neither source is intended to stand alone; the page describes the feature, while this section provides additional context that helps disambiguate terminology, intent, applicability, and constraints.

  • TL;DR: This page explains the additional steps to set up a data system that pushes events to the Streaming Ingestion APIs, using the payload copied from the payload preview, so configured events actually reach Journey Optimizer and trigger journeys.

Intents:

  • Get the inlet URL from Adobe Experience Platform APIs
  • Copy the payload from the payload preview in the Event menu
  • Set up a POST API call to the Streaming Ingestion APIs inlet using the copied payload
  • Map the payload variables to the values that should populate them
  • Configure the request body type and the organization ID header for the call

Glossary:

  • Streaming Ingestion APIs: The Adobe Experience Platform APIs to which events must be pushed so they reach Journey Optimizer (product-specific)
  • Inlet: The Streaming Ingestion APIs URL to which the POST API call is sent (product-specific)
  • Payload preview: The view in the Event menu from which you copy the payload to use in the body of the API call (product-specific)
  • x-gw-ims-org-id: The header key used to pass your organization ID in the API call (product-specific)

Guardrails:

  • Set up a POST API call to the Streaming Ingestion APIs URL (the inlet) and place the copied payload in the body, the data section, of the call.
  • Select application/json as the body type.
  • Pass the organization ID in the header using the key x-gw-ims-org-id, with the organization ID value in the form XXX@AdobeOrg.
  • In the payload preview Header section, many expected values are autofilled to facilitate the work.

Terminology:

  • Canonical name: Streaming Ingestion APIs — Acronym: n/a — variants: inlet, inlet URL
  • Synonyms: “inlet” = “Streaming Ingestion APIs URL”
  • Do not confuse: “header” (section carrying values such as x-gw-ims-org-id) ≠ “body” (the data section carrying the payload)

FAQ:

  • Q: Where do I get the payload to send? — Copy it from the payload preview in the Event menu.
  • Q: What body type should the API call use? — application/json.
  • Q: How do I pass the organization ID? — In the header, using the key x-gw-ims-org-id with the value in the form XXX@AdobeOrg.
  • Q: What kind of API call is used to send events? — A POST API call to the Streaming Ingestion APIs URL, called an inlet.
recommendation-more-help
journey-optimizer-help