A challenge defines a path towards a goal and motivates the customer to reach it. The path consists of a number of checkpoints and awards can either be given when the end goal has been reached and the challenge is completed, or at certain checkpoints along on the way. Challenges allows the retailer to drive engagement, rewarding desired actions and behaviors and making customers feel more involved.Documentation Index
Fetch the complete documentation index at: https://developer.voyado.com/llms.txt
Use this file to discover all available pages before exploring further.
Use cases for challenges
The more basic concept of a stamp card is included in challenges, but challenges can be used for so much more. The use cases are basically endless. A customer can also have more than one challenge running at the same time, increasing engagement. Here’s a few examples of what you can do with Engage challenges:- Ask customers to submit five product reviews, each review counting as one checkpoint
- Help customers gear up for their hike, setting checkpoints for different outdoor products
- Encourage customers to shop in your physical store, then make a purchase online, then “like” your Instagram page, and finally subscribe to your newsletter, each action being a checkpoint.
- Activate a sustainability-themed challenge focused on refreshing, repairing, and recycling products, or reward customers for bringing their own bag for in-store purchases.
IDs used in challenges
Three different IDs are used when working with the challenges API:- Contact ID: The usual Engage contact ID, used to uniquely identify a contact.
- Definition ID: The definition of a challenge, its basic structure or template, has a unique definition ID. A challenge definition will have the same definition ID from when it’s created to when it’s destroyed.
- Challenge ID: Assigning a challenge definition to a contact creates a specific “instance” of that definition, which then belongs to that contact alone. This instance is called a challenge, and is given a unique challenge ID. Each challenge ID is therefore uniquely connected to one contact ID and definition ID.
The challenges API endpoints
The challenges API consists of 6 endpoints.Get all challenges assigned to a contact
Get specific challenge assigned to a contact
Get all challenge definitions
Get specific challenge definition
Award checkpoints in challenge (can be batched)
Assign and activate challenge for contact
Get all challenges for contact
This endpoint returns all of a contact’s challenges, even the completed ones.The contact’s unique ID
Restrict the results to only that challenge definition
Can be used to paginate the results
Can be used to paginate the results
Narrow the results to “All”, “Active”, “Completed” or “NotCompleted”
Get specific challenge for contact
Use this endpoint to get the full details of an assigned challenge, including the contact’s progress, using the challenge ID. A challenge is only ever connected to one contact, so the contact ID is not required in the request.Get all challenge definitions
This endpoint returns a list of all challenge definitions in your Engage environment.Can be used to paginate the results
Can be used to paginate the results
“All” (the default) as well as “Active”, “Draft”, “Scheduled” or “Ended”
Get specific challenge definition
This returns a specific challenge definition based on its unique definition ID.Award checkpoints for contact
Use this endpoint to progress a contact along a specific challenge. ThedefinitionId of the challenge and the contactId must be sent in the payload, along with the number of checkpoints to be added.
Assign challenge to contact
This creates an assignment of a specific challenge for a specific contact and activates it with an initial checkpoint count of zero.The contact’s unique ID sent in the query string
The challenge’s defiition ID sent in the request path

