---
title: "Create an entitlement"
method: POST
path: "/plans/{code}/entitlements"
tags: ["entitlements"]
---

# Create an entitlement

`POST /plans/{code}/entitlements`

This endpoint creates new entitlements by adding features to a plan. Note that all existing entitlements will be deleted and replaced by the ones provided. To add a new entitlement without removing the existing ones, use PATCH. The feature must exist and all privileges must be valid for the feature.

## Request body

- EntitlementUpdateInput
  - `entitlements` object, required — Feature entitlements with their privilege values. Each key is a feature code, and the value is an object containing privilege codes with their associated values.

## Response `200`

Entitlement created

- PlanEntitlements
  - `entitlements` PlanEntitlementObject[], required
    - `code` string, required — Unique code used to identify the feature. Max 255 characters.
    - `name` string, nullable, required — Name of the feature. Max 255 characters.
    - `description` string, nullable, required — Description of the feature. Max 600 characters.
    - `privileges` PlanEntitlementPrivilegeObject[], required — Privileges associated with this feature. Each privilege must have a value assigned.
      - `code` string, required — Unique code for the privilege.
      - `name` string, nullable, required — Display name for the privilege.
      - `value_type` 'integer' | 'boolean' | 'string' | 'select', required — Data type of the privilege value. Default: string
      - `config` object, required
        - `select_options` string[] — Array of string, required only when value_type is `select`.
      - `value` union, required — Value assigned to this privilege in the entitlement. Type depends on the privilege's value_type.
        - integer — Value for integer type privileges
        - boolean — Value for boolean type privileges
        - string — Value for string or select type privileges

## Other responses

- `400` — Bad Request error
- `401` — Unauthorized error
- `404` — Not Found error
- `422` — Unprocessable entity error

---

[API](https://skmtc.dev/getlago/apis/lago-api-documentation.md) · [All operations](https://skmtc.dev/getlago/apis/lago-api-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/getlago/lago-api-documentation/revisions/6e969ef3bb45/schema)
