---
title: "Create a license."
method: POST
path: "/api/v1/projects/{projectId}/licenses"
tags: ["Agent Licenses"]
---

# Create a license.

`POST /api/v1/projects/{projectId}/licenses`

## Request

- Base URL: `https://app.customgpt.ai`
- URL: `https://app.customgpt.ai/api/v1/projects/{projectId}/licenses`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/poll-the-people/apis/customgpt-ai/docs/api/v1/projects/:projectId/licenses/post.ts> (a function with typed inputs; its response is checked against the schema)

Creates a new access license for an agent with specified permissions and optional expiration. Use this to grant controlled access to external users or systems.

## Path parameters

- `projectId` integer, required

## Request body

- object
  - `name` string: The name of the license

## Response `201`

Agent license

- object
  - `status` 'error' | 'success': The status of the response
  - `data` object
    - `license` ProjectLicense
      - `name` string: License Name
      - `key` string, uuid: License Key
      - `project_id` integer: Agent ID this license belongs to
      - `created_at` string, date-time: Date and time when the license was created
      - `updated_at` string, date-time: Date and time when the license was last updated
    - `licenseKey` string, uuid: The license key

## Other responses

- `401`: API Token is either missing or invalid
- `422`: Bad Argument
- `429`: Too many requests. You have exceeded your API rate limit.
- `500`: Internal Server Error

## Changes

- **2026-11-03** `77aab4354382`: 3 warning, 1 info
  - added the new `422.00` enum value to the `data/code` response property for the response status `401`
  - added the new `422.00` enum value to the `data/code` response property for the response status `422`
  - added the new `422.00` enum value to the `data/code` response property for the response status `500`
  - added the non-success response with the status `429`
- **2026-07-17** `b80e6dfcf78d`: 1 info
  - endpoint added
- **2023-06-02** `1842d7fd0430`: 1 breaking
  - api path removed without deprecation

[Operation history](https://skmtc.dev/poll-the-people/apis/customgpt-ai/changes/api/v1/projects/:projectId/licenses/post.md)

---

[API](https://skmtc.dev/poll-the-people/apis/customgpt-ai.md) - [All operations](https://skmtc.dev/poll-the-people/apis/customgpt-ai/llms.txt) - [OpenAPI document](https://skmtc.dev/poll-the-people/apis/customgpt-ai/revisions/77aab4354382?raw)
