---
title: "Admin Set App Entitlement"
method: PUT
path: "/api/billing/admin/apps/{name}/entitlement"
tags: ["billing"]
---

# Admin Set App Entitlement

`PUT /api/billing/admin/apps/{name}/entitlement`

## Request

- Base URL: `https://softkiln.com` (the document declares no server; this is the origin it was published from)
- URL: `https://softkiln.com/api/billing/admin/apps/{name}/entitlement`
- Auth: none declared

Comp an app a tier it is not paying for, or revoke the comp.

Touches no Stripe object and does not move the usage allowance: the customer
keeps the invoice and the included usage they have, and gains the
capability. `billing_exempt` is NOT the tool for this — it means "no billing
at all", so using it to do someone a favour would stop charging them.

`LogtoAdminUser`, not `AdminUser`, for the same reason `grant_ai_credit` is:
the in-app `admin` role is a row in a table, and giving away revenue is not
something a row should be able to authorize.

## Path parameters

- `name` string, required

## Request body

- EntitlementRequest
  - `tier` string, nullable
  - `reason` string, required
  - `expires_at` string, date-time, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/softkiln/apis/app-manager-api.md) · [All operations](https://skmtc.dev/softkiln/apis/app-manager-api/llms.txt) · [OpenAPI document](https://skmtc.dev/softkiln/apis/app-manager-api/revisions/de2b674a7f21?raw)
