Skip to main content
GET
Error

Authorizations

Authorization
string
header
required

An organization API key, uk_sk_live_… or uk_sk_test_…. The environment is resolved from the stored key row on every request, never from a request parameter.

Every route behind this credential is rate limited per key — 1000 requests a minute — with a second ceiling of 3000 a minute across all the keys of one environment, so splitting your traffic across keys isolates it and minting more keys does not buy more of it. A test key can never spend a live key's allowance. Every response carries the current state in headers; see the rate-limits guide.

Path Parameters

id
string<uuid>
required

The customer.

Response

The resolved grant.

What one of your customers may do, resolved: their subscription's plan, with the overrides you promised them applied on top. This is the answer your own gate should read — the merge is done here so you never reimplement it from the pieces.

Every feature in the environment's catalogue is present, including the ones the plan does not carry, so a client can render an offer rather than an absence. A feature the plan carries and an override withholds is present and "enabled": false.

customer_id
string<uuid>
plan
string

The key of the plan behind this answer. none means the customer is on no plan — never subscribed, or the only subscription is cancelled — which is a complete answer and not an error. unknown never appears in a 200: an answer nobody could resolve is a 503, not a plan.

Example:

"pro"

resolved
boolean

Always true in a 200 here. The field exists because it is false on GET /v1/organization/entitlements, where an unresolved read still has a truthful body to send — see that operation.

features
object

Keyed by your feature key, the string your own code gates on.