Profile Groups
Organize profiles intro addressable groups
Profile Groups is an API-first service that enables products to group profiles into named sets, allowing you to easily address groups of profiles inside of an integration. As a product developer using the Profile Groups API, you will be able to:
- Group members into flexible, dynamic sets
- Manage and query the groups a profile belongs to
- Access and list all available profile groups
- Retrieve and manage group members efficiently
Profile Groups Basics
A Profile Group can be thought of as a named set of profiles. When a profile group is first created it has no member profiles.
- The Name and Description help you organize your groups inside of the CMS, and can be used as labels inside of your integration.
- The Members field is the set of profiles that are part of this group.
- The ID is the LiveLike-assigned unique identifier of the group. It's one of the main ways to reference the group in your integration code.
- The Custom ID is optional but can also be used to reference the group in your integration code. A group's custom ID must be unique in your application.
- The Attributes are an array of key-value pairs that can be used to organize and query groups inside of the integration. Groups are indexed by their attributes, and groups can be looked up by their attribute values.
Custom IDs and attributes make data-level integrations easier
Check out Data Integration Patterns for more ideas on using custom IDs and attributes to organize your profile groups.
Working with Profile Groups
Listing profile groups in an app
Retrieving all the Groups for a given client's id is done via the REST API interface
GET /api/v1/applications/{client-id}/profile-groups/ HTTP/1.1
Authorization: Bearer {access-token}
Listing groups a profile is a member of
Retrieving all groups for a given Profile's UUID where that profile belongs is done via the REST API interface
GET /api/v1/applications/{client-id}/profiles/{profile-id}/profile-groups/ HTTP/1.1
Authorization: Bearer {access-token}
Listing profile group members
Retrieving all Profile members for a given Group's UUID done via the REST API interface
GET /api/v1/applications/{client-id}/profile-groups/{group-id}/members/ HTTP/1.1
Authorization: Bearer {access-token}
Creating a new profile group
Creating a group is done via the REST API interface
POST /api/v1/applications/{client_id}/profile-groups/{group-id}/ HTTP/1.1
Authorization: Bearer {access-token}
Content-Type: application/json
{"name":"Group created","is_active":true,"description":"A new group has been created","attributes":[{"key":"key1","value":"val1"}]}
Deleting a profile group
DELETE /api/v1/applications/{client_id}/profile-groups/{group-id} HTTP/1.1
Authorization: Bearer {access-token}
Content-Type: application/json
Updating a profile group's details
PUT /api/v1/applications/{client_id}/profile-groups/{group-id}/ HTTP/1.1
Authorization: Bearer {access-token}
Content-Type: application/json
{"name":"Group - edited","is_active":true,"description":"A new group has been created","attributes":[{"key":"key1","value":"val1"}]}
Note: Changing is_active to false will make the group unavailable through the API and cause 404 on consecutive calls.
Listing profile group members
GET /api/v1/applications/{client-id}/profile-groups/{group-id}/members/ HTTP/1.1
Authorization: Bearer {access-token}
Adding members to a profile group
Adding a member to a group is done via the REST API interface
POST /api/v1/applications/{client-id}/profile-groups/{group-id}/members/ HTTP/1.1
Authorization: Bearer {access-token}
{"profile_ids":["174cc6dd-c1da-42d2-886e-c48b2bf803a8"]}
Note: Or alternatively, we can use custom_id list, but not both on the same time.
Bulk adding a member to a group is done via the REST API interface
POST /api/v1/applications/{client-id}/profile-groups/{group-id}/members/ HTTP/1.1
Authorization: Bearer {access-token}
{"profile_ids":["174cc6dd-c1da-42d2-886e-c48b2bf803a8", "d4b24ed2-f242-4a5a-9ae1-d9b7834f5a98"]}
Note: Or alternatively, we can use custom_id list, but not both on the same time.
Removing members from a profile group
Removing a member from a group is done via the REST API interface
DELETE /api/v1/applications/{client-id}/profile-groups/{group-id}/members/ HTTP/1.1
Authorization: Bearer {access-token}
{"profile_ids":["174cc6dd-c1da-42d2-886e-c48b2bf803a8", "d4b24ed2-f242-4a5a-9ae1-d9b7834f5a98"]}
Note: Or alternatively, we can use custom_id list, but not both on the same time.
Updated about 8 hours ago