REST API
Authentication
Carbon authenticates public API requests with a scoped, optionally expiring API key.
Create a key in Settings → API Keys, then send it on every request as a bearer token: Authorization: Bearer <api-key>.
curl 'https://rest.carbon.ms/item?limit=1' \
-H "Authorization: Bearer <api-key>"Creating a key
Choosing New API Key opens a dialog with three fields:
The key is shown only once
Copy the crbn_… token when it is generated — Carbon stores only a hash and cannot show it again. Keep it server-side; it carries every permission you grant. Lost a key? Delete it and create a new one.
Permissions
Each checkbox grants one action on one module. The action maps to the HTTP method of the request:
GETPOSTPATCHDELETEReading from /item, for example, needs Parts → View. A request for an action the key does not hold returns 403. Some modules omit actions they do not support (Accounting has no Delete, shown as --).
Expiration & errors
If a key is past its Expires At date, requests fail with 401 before anything runs. Other authentication failures:
401403429