Expand my Community achievements bar.

SOLVED

How can I monitor interactive data collection API calls?

Avatar

Level 1

I'm currently using the following API to send event data toward a datastream: https://experienceleague.adobe.com/docs/experience-platform/edge-network-server-api/data-collection/...

{
   "event": {
      "xdm": {
        "identityMap": {
            "Email_LC_SHA256": [
               {
                  "id": "0c7e6a405862e402eb76a70f8a26fc732d07c32931e9fae9ab1582911d2e8a3b",
                  "primary": true
               }
            ]
         },
         "eventType": "web.webpagedetails.pageViews",
         "web": {
            "webPageDetails": {
               "URL": "https://alloystore.dev",
               "name": "Home Page"
            },
            "webReferrer": {
               "URL": ""
            }
         },
         "device": {
            "screenHeight": 1440,
            "screenWidth": 3440,
            "screenOrientation": "landscape"
         },
         "environment": {
            "type": "browser",
            "browserDetails": {
               "viewportWidth": 3440,
               "viewportHeight": 1440
            }
         },
         "placeContext": {
            "localTime": "2023-07-23T22:45:21.193-06:00",
            "localTimezoneOffset": 360
         },
         "timestamp": "2023-07-23T04:45:21.193Z",
         "implementationDetails": {
            "name": "https://ns.adobe.com/experience/alloy/reactor",
            "version": "2.8.0+2.9.0",
            "environment": "browser"
         },
         "_experience": {
            "analytics": {
               "customDimensions": {
                  "eVars": {
                     "eVar14": "eVar14"
                  }
               },
               "event1to100": {
                  "event13": {
                     "value": 1
                  },
                  "event14": {
                     "value": 2
                  }
               }
            }
         }
      }
   },
   "data": {
      "page": {
         "pageInfo": {
            "pageName": "Promotions",
            "siteSection": "Home"
         },
         "promos": {
            "heroPromos": "purse,shoes,sunglasses"
         },
         "customVariables": {
            "testGroup": "orange/black theme"
         },
         "events": {
            "homePage": true
         },
         "products": [
            {
               "productSKU": "abc123",
               "productName": "shirt"
            }
         ]
      }
   }
}

 

And getting the following response:

{
    "requestId": "1e85a854-a709-4bfa-9627-XXXXXXXX",
    "handle": [
        {
            "payload": [
                {
                    "scope": "Target",
                    "hint": "37",
                    "ttlSeconds": 1800
                },
                {
                    "scope": "AAM",
                    "hint": "6",
                    "ttlSeconds": 1800
                },
                {
                    "scope": "EdgeNetwork",
                    "hint": "irl1",
                    "ttlSeconds": 1800
                }
            ],
            "type": "locationHint:result"
        },
        {
            "payload": [
                {
                    "key": "kndctr_XXXXXXXXXXXXXXX_AdobeOrg_cluster",
                    "value": "irl1",
                    "maxAge": 1800
                }
            ],
            "type": "state:store"
        }
    ]
}

 

Although I'm getting a 200 response in Postman, I want to verify how the event is recorded in Adobe. I've discovered the monitoring module in Adobe's documentation, but I don't have the "Monitoring" tab in the dashboard: https://experienceleague.adobe.com/docs/platform-learn/data-collection/event-forwarding/monitor.html...

Captura de pantalla 2023-07-25 a las 9.25.03.png

 

How can I enable it?

 

I've also set up an event forwarding to Adobe Analytics, but I see nothing over there:

Captura de pantalla 2023-07-25 a las 9.30.02.png

 

Topics

Topics help categorize Community content and increase your ability to discover relevant content.

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

@IñigoEs I've found the Assurance API. The documentation is at https://developer.adobe.com/adobe-assurance-public-apis/. Here, the documentation talks about getting the available endpoints via a GraphQL request.

I haven't done this before, but hopefully, this helps you to use Assurance with your Edge calls.

View solution in original post

6 Replies

Avatar

Community Advisor

You have two questions here: how to validate that your hits are received by Adobe's endpoints, and how to get your data reported in Analytics.

For the first question:

  1. If you're also sending the data from a website, e.g. via Web SDK, then you can use the AEP Debugger browser extension to help you to validate your hits. When you sign into that extension with your Adobe login, you'll be able to see Adobe's log of received hits.
  2. Another way is through Assurance: https://experienceleague.adobe.com/docs/experience-platform/assurance/home.html. I see in your screenshot that Assurance has already provisioned for you, so you should be able to go in there and see the hits.

For the second question: I suggest that you follow the tutorial at https://experienceleague.adobe.com/docs/platform-learn/implement-web-sdk/applications-setup/setup-an.... You don't need to use Event Forwarding. Instead, you need to set up your Datastream to send your hits to Analytics.

Avatar

Level 1

Hi @yuhuisg ,

 

I'm not using a web SDK, but the interactive data collection API: https://experienceleague.adobe.com/docs/experience-platform/edge-network-server-api/data-collection/...

 

So none of what you mention works for this scenario. I specifically want access to the monitoring tab, but I have no clue where this needs to be enabled, nor is it explained in the documentation: https://experienceleague.adobe.com/docs/platform-learn/data-collection/event-forwarding/monitor.html...

 

Regarding Analytics (which I don't care if I manage to get access to the monitoring tab), I am using a Datastream (I need it for the API call that I've mentioned earlier), and I've setup an event forwarding in the Datastream to Analytics, but still see nothing there. I guess the XDM schema might not be correctly setup.

Avatar

Community Advisor

I still suggest that you look at Assurance if you want to validate that your hits are well received by Adobe's endpoint, including hits sent via interactive data collection. That tool lets you inspect the data that Adobe receives from all Edge network calls.

Event Forwarding, which Monitoring falls under, is meant for sending data out of Adobe's environment. You can think of it as "server-side tracking". For example, if you want to send data to Facebook's CAPI, then you would need to use Event Forwarding.

If you still want Monitoring, then note that Monitoring is still in beta release. That is indicated clearly in the orange "Important" box at https://experienceleague.adobe.com/docs/experience-platform/tags/event-forwarding/monitoring.html?la.... If you want to join the beta, you should contact your Adobe account manager to provision it for your organisation.

Based on your post, it sounds like you're concerned with sending data to Analytics. For that, you'll have to configure the Analytics service in your Datastream. The tutorial at https://experienceleague.adobe.com/docs/platform-learn/implement-web-sdk/applications-setup/setup-an... shows how to do so. This configuration is also mentioned at the Edge Network Server API documentation at https://experienceleague.adobe.com/docs/experience-platform/edge-network-server-api/interacting-othe... (see the last paragraph of the Overview section). With this configuration, data will flow from your Edge network calls to your Datastream and onwards to Analytics. Again, Event Forwarding is not needed in this case because all of the data remains within Adobe's environment.

Avatar

Level 1

Thank you, @yuhuisg , I'm just very confused about Assurance, I thought that was related to mobile SDK - Is there any tutorial/content where it is explained how to use Assurance to validate hits received from a S2S call coming through and Adobe API endpoint like the data collection API? Everything I find is related to mobile

 

 

Avatar

Community Advisor

I know what you mean about thinking that Assurance is meant for validating Mobile SDK hits. So I was pleasantly surprised myself when I found that hits from Web SDK could be validated there too. And that's when I realised that Assurance is really just receiving and validating all hits sent to the Edge network, regardless of how the data was sent.

However, I've just realised that there is no API for starting Assurance sessions programmatically. I could've sworn that I had seen developer documentation for such an API, but I don't see it now. So, I take back my recommendation of using Assurance. I apologise for misleading you on this.

And so, it would seem that there is no way to validate your hits at Adobe Edge programmatically. The only way to validate will be to see the data in the reports.

Avatar

Correct answer by
Community Advisor

@IñigoEs I've found the Assurance API. The documentation is at https://developer.adobe.com/adobe-assurance-public-apis/. Here, the documentation talks about getting the available endpoints via a GraphQL request.

I haven't done this before, but hopefully, this helps you to use Assurance with your Edge calls.