Entitlements
Check an entitlement
Answers whether a platform identity currently holds access, and returns the entitlements that back it. Pass `tier_id` to check a specific tier; omit it to check for any access.
Authorization
apiKey AuthorizationBearer <token>
Community-scoped API key. Send it as Authorization: Bearer arclt_live_.... Keys carry scopes; endpoints that need a specific scope answer 403 missing_scope when the key lacks it.
In: header
Query Parameters
platform*string
The community platform (for example discord).
platform_uid*string
The identity's stable id on that platform.
tier_id?string
Restrict the check to a specific plan tier.
Response Body
application/json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
curl -X GET "https://example.com/v1/entitlements/check?platform=string&platform_uid=string"{
"entitled": true,
"entitlements": [
{
"id": "ment_01JMZX7Q2R",
"entitlement_id": "ent_01JMZX7P4C",
"key": "vip-access",
"name": "VIP access",
"revision": 4,
"status": "active",
"granted_at": "2019-08-24T14:15:22Z",
"revoked_at": "2019-08-24T14:15:22Z",
"sources": [
{
"type": "subscription",
"id": "string",
"status": "active",
"tier_id": "string",
"plan_id": "string",
"client_reference_id": "string",
"valid_until": "2019-08-24T14:15:22Z"
}
],
"benefits": [
{
"platform": "discord",
"platform_config_id": "pcfg_01JMZX8C4M",
"type": "role",
"value": "998877665544332211"
}
]
}
]
}{
"type": "https://docs.arcalotl.com/api/errors#invalid_request",
"title": "Bad Request",
"status": 400,
"detail": "The 'cursor' parameter is not a valid cursor from a previous response.",
"code": "invalid_request"
}{
"type": "https://docs.arcalotl.com/api/errors#unauthorized",
"title": "Unauthorized",
"status": 401,
"detail": "A valid API key is required. Provide it as 'Authorization: Bearer arclt_live_...'.",
"code": "unauthorized"
}{
"type": "https://docs.arcalotl.com/api/errors#missing_scope",
"title": "Forbidden",
"status": 403,
"detail": "This API key is missing the required scope: subscriptions:read.",
"code": "missing_scope"
}{
"type": "https://docs.arcalotl.com/api/errors#rate_limited",
"title": "Too Many Requests",
"status": 429,
"detail": "Rate limit exceeded. Retry after the interval in the Retry-After header.",
"code": "rate_limited"
}