Entitlement
A customer's durable claim on something they bought, held separately from the artifacts that deliver it. A download link may expire or be re-issued without changing what the customer owns.
type Entitlement implements Node {
id: ID!
customerEmail: String!
quantity: Int!
productName: String!
variantName: String!
productSku: String!
grantedAt: DateTime
expiresAt: DateTime
revokedAt: DateTime
createdAt: DateTime!
updatedAt: DateTime!
status: EntitlementStatus!
kind: FulfillmentKind!
revokedReason: EntitlementRevokedReason
isUsable: Boolean!
variant: ProductVariant
redemptions: [RedemptionEvent!]!
contentUrls: [DigitalContentUrl!]!
attendee: AttendeeProfile
activeTicketToken: UUID
}
Fields
Entitlement.id ● ID! non-null scalar
The Globally Unique ID of this object
Entitlement.customerEmail ● String! non-null scalar
Identity the claim is bound to. Present even for guest checkouts.
Entitlement.quantity ● Int! non-null scalar
Units covered by this claim.
Entitlement.productName ● String! non-null scalar
Product name as recorded at purchase — survives catalog changes.
Entitlement.variantName ● String! non-null scalar
Variant name at purchase.
Entitlement.productSku ● String! non-null scalar
SKU at purchase.
Entitlement.grantedAt ● DateTime scalar
When the claim was granted.
Entitlement.expiresAt ● DateTime scalar
When the claim lapses, if ever.
Entitlement.revokedAt ● DateTime scalar
When the claim was withdrawn.
Entitlement.createdAt ● DateTime! non-null scalar
Row creation time.
Entitlement.updatedAt ● DateTime! non-null scalar
Row last-modified time.
Entitlement.status ● EntitlementStatus! non-null enum
Lifecycle state of the claim.
Entitlement.kind ● FulfillmentKind! non-null enum
How this was fulfilled, snapshotted at grant time.
Entitlement.revokedReason ● EntitlementRevokedReason enum
Why the claim was withdrawn, if it was.
Entitlement.isUsable ● Boolean! non-null scalar
Whether redemption is permitted right now. Combines status with the expiry clock, since nothing sweeps lapsed rows.
Entitlement.variant ● ProductVariant object
The variant this claim covers, if it still exists.
Entitlement.redemptions ● [RedemptionEvent!]! non-null object
Uses of this entitlement, most recent first.
Entitlement.contentUrls ● [DigitalContentUrl!]! non-null object
Download credentials issued against this entitlement.
Entitlement.attendee ● AttendeeProfile object
Who walks in, when named (SPEC-030 T-OD3). Null means the purchaser is the holder. Not owner-gated: the gate agent reads this at the door, and a name is not a bearer credential.
Entitlement.activeTicketToken ● UUID scalar
Active QR token for a TICKET claim (SPEC-030) — the payload the buyer's ticket page renders as a barcode. Owner-scoped: null unless the requesting customer holds this claim, and null once the claim stops being usable or the credential rotates away (transfer voids the old token).
Interfaces
Node interface
An object with a Globally Unique ID
Member Of
EntitlementAttendeeUpsert object ● EntitlementCountableEdge object ● EntitlementRevealCode object ● EntitlementRevoke object ● EntitlementTransfer object ● LicenseKey object ● TicketScan object