Hi there. I am looking for a mobile SDK function that returns the user's segments.
I am looking in the documentation, but I can't find it.
I understand that I can do it via an API call, but I would like to know if there is a way to do it with a function so it returns all the segments in an object that I can later refer in different parts of the app and I don't have to call it more than needed.
Solved! Go to Solution.
Views
Replies
Total Likes
Hi @GigiCotruta ,
I'm not sure why you would need to retrieve all qualified segments directly on the mobile side. From an enterprise architecture perspective, exposing all segments to the client-side (especially mobile) isn't typically recommended .
That said, as far as I know, there is no built-in Mobile SDK function that returns all qualified segments for a user.
Typically, the Adobe Web/Mobile SDK is used to:
Ingest behavioral or profile data into Adobe Experience Platform (AEP), and
Retrieve personalized content (e.g., from Adobe Target or custom personalization systems) if the user qualifies for a real-time (Edge) segment.
Create an audience (segment) in AEP based on profile attributes or behavioral events, and make it Edge-enabled.
From the Mobile SDK, send data to AEP using the Web SDK (sendEvent
).
If the user qualifies for an Edge segment, AEP can respond with personalized content or decisions.
This is how Adobe Target or similar personalization setups function. They rely on segment qualification at the Edge and return only what’s necessary for the current context — not all segment data.
You can use the AEP Profile API. This allows you to:
Pass an identity (like ECID or email),
Retrieve the user's profile information (e.g., first name, last name, etc.),
And also see the list of audiences (segments) the profile qualifies for. ( Need to check , not sure)
However, this is a server-side API and not part of the Mobile SDK. It requires authenticated API access and is not suitable for calling directly from a mobile app.
Hope it will help you.
Kr,
Parvesh
Hi @GigiCotruta ,
I'm not sure why you would need to retrieve all qualified segments directly on the mobile side. From an enterprise architecture perspective, exposing all segments to the client-side (especially mobile) isn't typically recommended .
That said, as far as I know, there is no built-in Mobile SDK function that returns all qualified segments for a user.
Typically, the Adobe Web/Mobile SDK is used to:
Ingest behavioral or profile data into Adobe Experience Platform (AEP), and
Retrieve personalized content (e.g., from Adobe Target or custom personalization systems) if the user qualifies for a real-time (Edge) segment.
Create an audience (segment) in AEP based on profile attributes or behavioral events, and make it Edge-enabled.
From the Mobile SDK, send data to AEP using the Web SDK (sendEvent
).
If the user qualifies for an Edge segment, AEP can respond with personalized content or decisions.
This is how Adobe Target or similar personalization setups function. They rely on segment qualification at the Edge and return only what’s necessary for the current context — not all segment data.
You can use the AEP Profile API. This allows you to:
Pass an identity (like ECID or email),
Retrieve the user's profile information (e.g., first name, last name, etc.),
And also see the list of audiences (segments) the profile qualifies for. ( Need to check , not sure)
However, this is a server-side API and not part of the Mobile SDK. It requires authenticated API access and is not suitable for calling directly from a mobile app.
Hope it will help you.
Kr,
Parvesh
Helo, @Parvesh_Parmar,
I really appreciate your response, thank you.
1. Why do I need all the segments? We are personalizing user's behavior based on those segments, not using only AT, but, with other tools.
2. Could you better explain this part, please: "From an enterprise architecture perspective, exposing all segments to the client-side (especially mobile) isn't typically recommended"
Views
Replies
Total Likes
Hi @GigiCotruta ,
Thank you for the clarification!
Just to share my thoughts — this might be more about my way of thinking, but I hope it helps:
What you're trying to build sounds very similar to what Adobe has already implemented on the Edge Network. Essentially, you’re attempting to replicate segment-based personalization logic on the client side (in the mobile app), which has some implications.
Managing logic like segment qualification and content decisions on the mobile client is generally more complex and less flexible than doing it on the server. For example, if the logic changes, you’d likely need to release a new app version, which isn’t ideal for agility or scalability.
From my experience, marketing teams are often unsure of exact use cases at first. They usually perform a POC (proof of concept) or dry run. If the approach drives conversions, they proceed; if not, they adjust or abandon the approach. That’s much easier when logic is managed server-side.
If you want to avoid using Adobe Target and still implement custom personalization, one way is to build a cloud-based API layer that handles segment logic and content delivery centrally.
For example, you could:
Build an Azure Function or a similar serverless API endpoint.
Call this API from your mobile app and pass the necessary identity data.
The Azure Function can then call the AEP Profile API to fetch segment qualification for that profile.
Based on the result, you can:
Return static content IDs to the app (which maps to predefined content),
Or return dynamic/personalized content (e.g., HTML) to be rendered in a WebView inside the app.
This approach lets you retain full control over content delivery from the server-side without embedding the logic in the app itself. You can update content and logic centrally without needing new app releases.
In fact, many companies are building similar middleware solutions (like Azure Functions) to support their personalization flows. If you search around, you’ll find several examples and frameworks to help with this.
Hope this gives you a useful perspective!
Best regards,
Parvesh
Views
Replies
Total Likes
Thank you again for your answer,
I realize now that I didn’t clearly explain my use case and what I need to achieve.
My goal is to personalize the user experience in our mobile app based on their segment. For example, if a user is in the "Gold" loyalty segment, I want to display a special banner for them.
From what I understand, before rendering the app view, I need to check if the user belongs to that segment (e.g., "Gold").
You shared the standard workflow for this, which I’ve followed:
Create an audience (segment) in AEP based on profile attributes or behavioral events, and make it Edge-enabled –
Send data from the Mobile SDK to AEP using the Web SDK (sendEvent) –
If the user qualifies for an Edge segment, AEP can respond with personalized content or decisions.
This is where I need some clarification:
How can I know if a user qualified for the segment or not?
From what I understand, I need to implement a callback or a request to the Edge Network, then parse the response to check for the segment. It sounds like this would require a server-side implementation.
My main concern is performance – this flow feels slow, I might be wrong on that.
So, my questions are:
Did I understand the standard approach correctly?
Is there a more efficient way to implement this?
If I want full control over this process, would building a cloud-based API layer be the way to go? In that case, the mobile app would first call our API, which would then query AEP Profile, parse the response, and return it back to the app. But wouldn’t this be even slower than the previous approach?
I’d really appreciate your guidance on what the best setup would be for this use case, as it’s a key requirement for our company.
Thanks again for all your help!
Views
Replies
Total Likes
Hi @GigiCotruta ,
I would suggest starting with the Web SDK solution before jumping into the custom API layer.
Please refer to this documentation for more details:
https://experienceleague.adobe.com/en/docs/experience-platform/destinations/catalog/personalization/...
Even though you're not planning to use Adobe Target, I recommend reviewing the Adobe Target with AEP tutorials. They’ll help you understand the end-to-end flow and give clarity on how personalization works within the AEP ecosystem.
Best regards,
Parvesh
Views
Replies
Total Likes
Thank you very much, @Parvesh_Parmar
Views
Replies
Total Likes
Views
Likes
Replies