# Entitlements API Reference

REST schemas and generated examples for entitlement evaluation and explanation.

<!-- docs-source -->
Source: https://learning.monetizekit.app/docs/api-reference/entitlements
<!-- /docs-source -->

Mock API reference used by the interactive docs explorer.

| OpenAPI version | Contract version | REST base path |
| --- | --- | --- |
| 3.1.0 | 2026-03-15 | /api/v1 |

## Servers

| URL | Environment |
| --- | --- |
| `https://app.monetizekit.app/api/v1` | Development environment |
| `https://app.monetizekit.app/api/v1` | Staging environment |
| `https://app.monetizekit.app/api/v1` | Production environment |

## entitlements operations

### List customer entitlements

`GET /entitlements/{customerId}` — Returns effective entitlements for the customer.

Operation ID: entitlements.list.

Required scopes: entitlements:read.

#### Parameters

| Name | In | Required | Description | Schema | Example |
| --- | --- | --- | --- | --- | --- |
| `customerId` | path | yes | Customer ID | { "type": "string" } | "cust_dev_1001" |

#### Responses

`200` — Success

```json
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "featureKey",
      "type",
      "sources"
    ],
    "properties": {
      "featureKey": {
        "type": "string"
      },
      "type": {
        "type": "string"
      },
      "effectiveValue": {},
      "sources": {
        "type": "array",
        "items": {
          "type": "string"
        }
      }
    }
  }
}
```

```json
[
  {
    "featureKey": "api_access",
    "type": "boolean",
    "effectiveValue": true,
    "sources": [
      "plan"
    ]
  }
]
```

### Check entitlement decision

`GET /entitlements/{customerId}/{featureKey}` — Returns access decision for one feature gate.

Operation ID: entitlements.check.

Required scopes: entitlements:read.

#### Parameters

| Name | In | Required | Description | Schema | Example |
| --- | --- | --- | --- | --- | --- |
| `customerId` | path | yes | Customer ID | { "type": "string" } | "cust_dev_1001" |
| `featureKey` | path | yes | Feature key | { "type": "string" } | "analytics_export" |

#### Responses

`200` — Success

```json
{
  "type": "object",
  "required": [
    "allowed",
    "reason"
  ],
  "properties": {
    "allowed": {
      "type": "boolean"
    },
    "reason": {
      "type": "string"
    }
  }
}
```

```json
{
  "customerId": "cust_dev_1001",
  "featureKey": "analytics_export",
  "allowed": true,
  "type": "boolean",
  "sources": [
    "plan"
  ],
  "reason": "Plan includes feature",
  "reasonCode": "granted"
}
```