CommetCommet
GitHubDiscordStatus
Activate add-on POSTCreate add-on POSTDeactivate add-on DELETEDelete add-on DELETEGet add-on GETList active add-ons GETList add-ons GETUpdate add-on PATCH
DocumentationKnowledge BaseBuild with AIAPI ReferenceWebhooks

Update add-on

Update an add-on's name, description, or pricing.

PATCH
/addons/{id}

Update an add-on's name, description, or pricing.

Authorization

ApiKeyAuth
x-api-key<token>

In: header

Path Parameters

id*string

Header Parameters

Idempotency-Key?string

Unique key used to safely retry this write for 24 hours without applying it twice.

Length1 <= length <= 200

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PATCH "https://example.com/addons/string" \  -H "Content-Type: application/json" \  -d '{}'
{  "id": "addon_1a2b3c4d",  "name": "Extra API calls",  "slug": "extra-api-calls",  "description": "An additional 1,000 API calls per billing period",  "basePrice": 1000,  "featureCode": "api_calls",  "featureName": "API Calls",  "createdAt": "2026-09-07T12:00:00.000Z",  "updatedAt": "2026-09-07T12:00:00.000Z",  "consumptionModel": "metered",  "includedUnits": 1000,  "overageRate": null,  "creditCost": null,  "object": "addon",  "livemode": false}
{  "error": {    "type": "validation_error",    "code": "validation_error",    "message": "The request contains an invalid parameter.",    "doc_url": "https://commet.co/docs/api-reference/2026-08-27/errors/validation_error.md"  }}
{  "error": {    "type": "authentication_error",    "code": "unauthorized",    "message": "A valid API key is required.",    "doc_url": "https://commet.co/docs/api-reference/2026-08-27/errors/unauthorized.md"  }}
{  "error": {    "type": "authentication_error",    "code": "forbidden",    "message": "You do not have permission to perform this operation.",    "doc_url": "https://commet.co/docs/api-reference/2026-08-27/errors/forbidden.md"  }}
{  "error": {    "type": "not_found_error",    "code": "not_found",    "message": "The requested resource was not found.",    "doc_url": "https://commet.co/docs/api-reference/2026-08-27/errors/not_found.md"  }}
{  "error": {    "type": "conflict_error",    "code": "idempotency_in_progress",    "message": "A request with this idempotency key is still being processed.",    "doc_url": "https://commet.co/docs/api-reference/2026-08-27/errors/idempotency_in_progress.md"  }}
{  "error": {    "type": "validation_error",    "code": "validation_error",    "message": "The requested operation is not valid for the current configuration.",    "doc_url": "https://commet.co/docs/api-reference/2026-08-27/errors/validation_error.md"  }}
{  "error": {    "type": "rate_limit_error",    "code": "rate_limited",    "message": "Too many requests. Retry after the interval specified in the Retry-After header.",    "doc_url": "https://commet.co/docs/api-reference/2026-08-27/errors/rate_limited.md"  }}
{  "error": {    "type": "internal_error",    "code": "internal_error",    "message": "An unexpected error occurred while processing the request.",    "doc_url": "https://commet.co/docs/api-reference/2026-08-27/errors/internal_error.md"  }}
{  "error": {    "type": "internal_error",    "code": "idempotency_unavailable",    "message": "Idempotency storage is temporarily unavailable. Retry with the same idempotency key.",    "doc_url": "https://commet.co/docs/api-reference/2026-08-27/errors/idempotency_unavailable.md"  }}

List add-ons GET

List all add-ons with cursor-based pagination.

Create API key POST

Create a full-access or restricted API key. Provide permissions to restrict access; the full key is returned only once. A restricted key with api_key: write may only create restricted keys with the same or fewer permissions, and they expire no later than the key that creates them.

name?string
Length1 <= length <= 100
description?string
Lengthlength <= 255
basePrice?integer
Range0 <= value <= 9007199254740991
includedUnits?integer
Range0 <= value <= 9007199254740991
overageRate?integer
Range0 <= value <= 9007199254740991