Edge implementation overview

The Adobe Experience Platform Edge Network lets you send data destined for multiple products to a single endpoint, which then forwards the appropriate information to each product. This is the recommended way to implement the Streaming Media Collection, and is the only approach that supports both Adobe Analytics and Customer Journey Analytics from a single implementation.

In contrast to the legacy Media SDK approach, which required product-specific instrumentation for each Adobe solution, an Edge implementation uses a shared XDM data model and a single datastream. Data flows from your SDK or API to the Edge Network, which then routes it to whichever Adobe products are configured in the datastream (Analytics, CJA, AJO, or RTCDP). This means switching or adding downstream products later does not require re-instrumenting your media events.

Regardless of which codebase you use, you must first complete the platform setup described on this page: create a schema, create a dataset, and configure a datastream.

Prerequisites

  1. Complete the general prerequisites. See the general prerequisites.

  2. Confirm a compatible Adobe solution. You must have a working implementation of at least one of the following:

Set up the schema in Adobe Experience Platform

To standardize data collection across applications that use Adobe Experience Platform, Adobe created the open, publicly documented Experience Data Model (XDM) standard.

  1. In Adobe Experience Platform, begin creating the schema as described in Create and edit schemas in the UI.

  2. On the Schema details page, choose Experience Event as the base class for the schema.

    Added field groups

  3. Select Next.

  4. Specify a schema display name and description, then select Finish.

  5. In the Composition area, in the Field groups section, select Add, then search for and add the following field groups to the schema:

    • End User ID Details
    • Implementation Details
    • MediaAnalytics Interaction Details

    After you add the field groups, they display in the Field groups section:

    Added field groups

  6. Select Save to save your changes.

  7. (Optional) You can hide certain fields from the schema UI. These fields are server-computed reporting fields that Adobe populates on the backend — they are not sent by your SDK or API and do not affect data collection. Hiding them has no functional impact; it only reduces visual noise when browsing the schema in the AEP UI. These fields refer only to those in the MediaAnalytics Interaction Details field group.

    accordion
    Expand to view instructions on fields you can hide.
    1. In the Structure area, select the Media Collection Details field, then select Manage related fields.

      manage-related-fields

    2. Enable the option to Show display names for fields, then update the schema as follows:

      • In the Media Collection Details > Advertising Details field, hide the following reporting fields: Ad Completed, Ad Started, and Ad Time Played.

      • In the Media Collection Details > Advertising Pod Details field, hide the following reporting field: Ad Break ID

      • In the Media Collection Details > Chapter Details field, hide the following reporting fields: Chapter Completed, Chapter ID, Chapter Started, and Chapter Time Played.

      • In the Media Collection Details field, hide the List Of States field.

        hide media collection states

      • In the Media Collection Details > List Of States End and Media Collection Details > List Of States Start field, hide the following reporting fields: Player State Count, Player State Set, and Player State Time.

        fields to hide

      • In the Media Collection Details > Qoe Data Details field, hide the following reporting fields: Average Bitrate, Average Bitrate Bucket, Bitrate Change Impacted Streams, Bitrate Changes, Buffer Impacted Streams, Buffer Events, Dropped Frame Impacted Streams, Drops Before Starts, Errors, External Error IDs, Error Impacted Streams, Media SDK Error IDs, Player SDK Error IDs, Stalling Impacted Streams, Stalling Events, Total Buffer Duration, and Total Stalling Duration.

      • In the Media Collection Details > Session Details field, hide the following reporting fields: 10% Progress Marker, 25% Progress Marker, 50% Progress Marker, 75% Progress Marker, 95% Progress Marker, Ad Count, Average Minute Audience, Content Completes, Chapter Count, Content Starts, Content Time Spent, Estimated Streams, Federated Data, Media Segment Views, Media Downloaded Flag, Media Starts, Media Session ID, Media Session Server Timeout, Media Time Spent, Pause Events, Pause Impacted Streams, Pev3, Pccr, Total Pause Duration, Unique Time Played, and Video Segment.

    3. Select Confirm to save your changes.

    4. In the Structure area, enable the option to Show display names for fields, then select the List Of Media Collection Downloaded Content Events field.

    5. Select Manage related fields, then update the schema as follows:

      • In the List Of Media Collection Downloaded Content Events > Media Details > Advertising Details field, hide the following reporting fields: Ad Completed, Ad Started, and Ad Time Played.

      • In the List Of Media Collection Downloaded Content Events > Media Details > Advertising Pod Details field, hide the following reporting field: Ad Break ID

      • In the List Of Media Collection Downloaded Content Events > Media Details > Chapter Details field, hide the following reporting fields: Chapter Completed, Chapter ID, Chapter Started, and Chapter Time Played.

      • In the List Of Media Collection Downloaded Content Events > Media Details field, hide the List Of States field.

      • In the List Of Media Collection Downloaded Content Events > Media Details > List Of States End and Media Collection Details > List Of States Start field, hide the following reporting fields: Player State Count, Player State Set, and Player State Time.

      • In the List Of Media Collection Downloaded Content Events > Media Details > Qoe Data Details field, hide the following reporting fields: Average Bitrate, Average Bitrate Bucket, Bitrate Change Impacted Streams, Bitrate Changes, Buffer Events, Buffer Impacted Streams, Drops Before Starts, Dropped Frame Impacted Streams, Error Impacted Streams, Errors, External Error IDs, Media SDK Error IDs, Player SDK Error IDs, Stalling Events, Stalling Impacted Streams, Total Buffer Duration, and Total Stalling Duration.

      • In the List Of Media Collection Downloaded Content Events > Media Details > Session Details field, hide the following reporting fields: 10% Progress Marker, 25% Progress Marker, 50% Progress Marker, 75% Progress Marker, 95% Progress Marker, Ad Count, Average Minute Audience, Chapter Count, Content Completes, Content Starts, Content Time Spent, Estimated Streams, Federated Data, Media Downloaded Flag, Media Segment Views, Media Session ID, Media Session Server Timeout, Media Starts, Media Time Spent, Pause Events, Pause Impacted Streams, Pccr, Pev3, Total Pause Duration, Unique Time Played, and Video Segment.

      • In the List Of Media Collection Downloaded Content Events > Media Details field, hide the Media Session ID field.

    6. Select Confirm to save your changes.

    7. In the Structure area, select the Media Reporting Details field, then select Manage related fields.

    8. Enable the option to Show display names for fields, then update the schema as follows:

      • In the Media Reporting Details field, hide the following fields: Error Details, List Of States End, List of States Start, and Media Session ID.
    9. Select Confirm > Save to save your changes.

  8. (Optional) You can add custom metadata to your schema. This lets you include additional, user-defined metadata for specific needs or contexts. For more information about custom metadata with the Media Edge API, see Custom metadata support.

    accordion
    Expand to view instructions on adding custom metadata to your schema.
    1. Locate the tenant name of the org by selecting Account info > Assigned orgs > org name > tenant.

      Custom fields are received through this path. (For example, tenant name: _dcbl → myCustomField path: _dcbl.myCustomField.)

    2. Add a custom field group to your defined media schema.

      add-custom-metadata

    3. Add any custom fields that you want to track to the field group.

      add-custom-metadata

    4. Use the path generated for the custom field in your request payload.

      add-custom-metadata

Create a dataset in Adobe Experience Platform

  1. In Adobe Experience Platform, begin creating the dataset as described in the Datasets UI guide.

    When selecting a schema for your dataset, choose the schema that you previously created.

Configure a datastream in Adobe Experience Platform

  1. Create a new datastream as described in Configure a datastream.

    When creating the datastream, make the following selections:

    • In the Event Schema field, select the schema that you created in Set up the schema in Adobe Experience Platform.

      note important
      IMPORTANT
      Select Save; do not select Save and Add Mapping. Selecting Save and Add Mapping causes mapping errors for the Timestamp field.

      Create datastream and select schema

    • Add the appropriate service(s) to the datastream based on your Adobe solution. For information about adding a service, see “Add services to a datastream” in Configure a datastream.

      • Adobe Analytics (if using Adobe Analytics): define a report suite as described in Create a report suite.

      • Adobe Experience Platform (if using Customer Journey Analytics, Adobe Journey Optimizer, or Real-Time Customer Data Platform)

      Add the Adobe Analytics service

    • Expand Advanced Options, then enable the Media Analytics option.

      Media Analytics option

Choose your implementation method

With the schema, dataset, and datastream in place, implement one of the following codebases to start sending streaming media data to the Edge Network. Each page covers the streaming-media-specific setup; the per-event and per-variable code lives in Events and Variables.

In-code implementations write SDK calls directly in your application source code. Using Tags implementations use Adobe Experience Platform Tags which lets you configure and deploy tracking rules without modifying your application code. Choose whichever approach fits your deployment workflow.

Codebase
In-code
Using Tags
Web
Web SDK
Web SDK tag extension
iOS
iOS
iOS (Tags)
Android
Android
Android (Tags)
Roku
Roku Edge
API
Media Edge API

Next step

After you begin collecting data, you can configure reporting:

recommendation-more-help
media-analytics-help