Activities are events that change the points a specific user has in a program.
The POST /v2/program-memberships/:program_membership_id/applicable-rewardsendpoint lets you see which of a user's rewards are applicable to a given Toast check object.
It returns all the user's rewards, split into two lists - valid_rewards and invalid_rewards.
Rewards are deemed if they require menu items or menu groups not present in the cart, or if they include either with a quantity that the check doesn't contain. Matching is done based on the multiLocationId of the included items and itemGroups.
Request Parameters
toast_restaurant_guid(required): The GUID of the toast restaurant the order is for.
check(required): The serialized Toast check object.
The check object contains:
amount (required): The total order amount.
selections(required): The array of selection objects.
Each selection in the selections array contains:
guid(required): The Toast item guid.
amount(required): The quantity of the item in the cart.
price(required): The price (in cents).
tax(required): The tax (in cents).
taxInclusion(required): Whether tax is included ("INCLUDED" or "NOT_INCLUDED").
item(required): The Toast item object.
itemGroup(required): The Toast item group object.
Each item in the selection contains:
guid(required): The Toast GUID for the item.
entityType(required): The Toast type of the item..
externalId(required): The Toast external lD for the item.
multiLocationId(optional): The Toast multi-location lD for the item.
Each itemGroup in the selection contains:
guid(required): The Toast GUID for the item group.
entityType(required): The Toast type of the item group.
externalId(required): The Toast external lD for the item group.
multiLocationId(optional): The Toast multi-location lD for the item group.
Example Request
Here's an example of a valid POST request to the activity endpoint: