Projects & API keys
Create projects, issue server-side credentials and revoke access. Management endpoints require a customer bearer token.
On this page
Project lifecycle
| Method | Path | Result |
|---|---|---|
POST | /v1/projects | 201 · new project |
GET | /v1/projects | Paginated projects |
GET / PATCH / DELETE | /v1/projects/{id} | Read, update or soft-delete a project |
| Field | Type / values | Contract |
|---|---|---|
name | string | Required. Up to 100 characters. |
slug | string | Required. Unique per owner, including deleted projects. |
Name is trimmed, 1–100 characters. Slug is 1–63 lowercase letters/digits with internal hyphens, unique per owner even among deleted projects. PATCH accepts name and active/disabled status. Disabled/deleted projects cannot process media.
curl --fail-with-body "$IMAZEO_API_ORIGIN/v1/projects" -H "Authorization: Bearer $IMAZEO_CUSTOMER_TOKEN" -H "Content-Type: application/json" --data '{"name":"Catalog","slug":"catalog"}'Create and revoke keys
| Field | Type / values | Contract |
|---|---|---|
name | string | Required. Up to 100 characters. |
| Method | Path | Behavior |
|---|---|---|
POST | /v1/projects/{projectId}/api-keys | 201 · raw apiKey shown once |
GET | /v1/projects/{projectId}/api-keys | Metadata only; no raw secret |
DELETE | /v1/projects/{projectId}/api-keys/{id} | Revoke this key |
GET | /v1/api-key/context | X-API-Key only; projectId, keyId |
curl --fail-with-body "$IMAZEO_API_ORIGIN/v1/projects/$IMAZEO_PROJECT_ID/api-keys" -H "Authorization: Bearer $IMAZEO_CUSTOMER_TOKEN" -H "Content-Type: application/json" --data '{"name":"Catalog server"}'Copy the raw key into a server secret store when created. The API stores a hash. To replace a key, create a new one, update your server and revoke the old key. Keys use the form imz_<uuid>.<secret>. Keys do not manage projects, subscriptions or accounts.
Documentation reviewed 2026-10-03 against development backend e298ec7. Verify your deployment’s API origin and limits before integrating.
