What an entity is
Entities belong to your partner only; another consumer can use the same
refId for its own entity. Reading entities needs view-consumer-redemption-entities; creating, updating, blocking and unblocking need manage-consumer-redemption-entities; erasing needs erase-consumer-redemption-entities. All three can be granted to API keys.
Creating entities
Most integrations never create entities explicitly: they pass an inlineredemptionEntity: {"refId": "customer:42"} when redeeming or when creating a Redemption Link, and the platform finds or creates the entity in the same transaction.
To create one up front, use POST /consumer/v1/redemption-entities:
{} creates an anonymous entity. A refId that already exists answers 409 ref-id-taken, and more.redemptionEntityId names the existing entity. Sending email answers 400 data-failed-validation with the constraint unknown-field.
- Find an entity by your id with
GET /consumer/v1/redemption-entities?filter[refId]=customer:42, or search overrefId,displayNameandemailwithsearch. - Change
refId,displayNameormetadatawithPATCH. Existing redemptions keep pointing at the entity id; their history is not rewritten. - The webhook
redemption-entity-createdis sent for entities created in the dashboard and by the Email OTP Gate, not for entities your API key creates.
Blocking
POST …/{redemptionEntityId}:block stops an entity from redeeming, for example while you investigate misuse:
- redeeming with it (by id or by its
refId) answers 409redemption-entity-blocked; - Redemption Links bound to it, and email OTP verification for its address, refuse to redeem;
- creating a new link for it answers the same 409.
:unblock makes it active again. Blocking an entity that is already blocked, or unblocking an active one, answers 409 invalid-state-transition.
Erasure (GDPR)
When a customer asks you to delete their data, callPOST …/{redemptionEntityId}:erase:
- sets
refId,email,displayNameandmetadatatonulland the status toerased; - ends the entity’s landing sessions and pending email codes;
- revokes every
entity-boundRedemption Link of the entity, so those links answer 410redemption-link-revokedfrom then on.
metadata, which is why redemption metadata must never contain personal data. After erasure, updating, blocking, unblocking or erasing the entity again answers 409 redemption-entity-erased; you can later create a new entity with the old refId.
AllRide processes entity data on your behalf as a processor. The audit log records that an entity was changed or erased but never stores its refId, email, name or metadata.