Expand my Community achievements bar.

SOLVED

Adobe AEP Client Side SDKs Non-Interactive Collection Method

Avatar

Level 10

Hi Team,

Is it possible to to use Collect endpoint (non-interactive collection) instead of Interact endpoint (interactive collection) with AEP Client Side SDKs like Mobile SDK or Web SDK to queue the events upto a certain time or number of events and then send them as a batch?

I understand that use of this endpoint will mean not sending the events real-time and also as these events won't be interactive we can't use them in use cases where we need response back from AEP/Edge. For use cases where we don't have any real-time needs for certain actions and there isn't a response for these events, is it even possible to send them as batch through collect endpoint?

Thanks.

Topics

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

1 Accepted Solution

Avatar

Correct answer by
Level 10

Did some testing by sending fetch calls with more than 1 events in the body, both the events are sent and show in AEP but they go out through interact endpoint only. It looks like there is no way to selectively use the collect endpoint, it is used by SDK for automated click tracking and stuff.

Cheers!

View solution in original post

6 Replies

Avatar

Community Advisor

Good question, this is surely an interesting offline use case.

 

Tbh, I've always wondered why the standard Web SDK events actually contain an events array that always only includes a single item.

bjoern__koth_0-1738095567894.png

So, presumably this is not (yet) out of the box possible with the Web SDK extensions, but have you tried replicating the POST call from the documentation using a fetch with some sample data?

 

Would be a nice POC. Else reach out to support to check if they know more.

Cheers from Switzerland!


Avatar

Level 10

Hi @bjoern__koth ,

Yeah the intent of having "events" array in Web SDK events is to accommodate multiple events like, 

 

{
  "events":[
    {
      "xdm":{},
      "data":{}
    },
    {
      "xdm":{},
      "data":{}
    }
  ]
}

 

I have not done a POC to try collect endpoint but Web SDK does use this endpoint as others have mentioned in another community thread - Acquire and Collect request type in web SDK.

I believe AEP SDKs do use this endpoint at times but this is an automatic decision by the SDKs when to use collect or interact endpoints. What I'm trying to understand is if it possible to request this behavior on demand, like if there are some events happening on our property and we want to send them as batch using collect endpoint.

Cheers!

Avatar

Level 9

@Harveer_SinghGi1 based on the documentation understanding is Collect endpoint sends a batch of events to a datastream but applies to mobile SDK not WebSDK [has to be streaming]

Avatar

Administrator

@Harveer_SinghGi1 Did you find the suggestions helpful? Please let us know if you need more information. If a response worked, kindly mark it as correct for posterity; alternatively, if you found a solution yourself, we’d appreciate it if you could share it with the community. Thank you!



Kautuk Sahni

Avatar

Level 10

Hi @kautuk_sahni ,

I'm doing some POC to test this use case, I'll post the result here and close this thread.

Thanks

Avatar

Correct answer by
Level 10

Did some testing by sending fetch calls with more than 1 events in the body, both the events are sent and show in AEP but they go out through interact endpoint only. It looks like there is no way to selectively use the collect endpoint, it is used by SDK for automated click tracking and stuff.

Cheers!