Skip to main content
POST
https://api.impulselabs.ai
/
api
/
api-keys
curl -s -X POST "https://api.impulselabs.ai/api/api-keys" \
  -H "Authorization: Bearer <your-dashboard-session-token>" \
  -H "Content-Type: application/json" \
  -d '{ "name": "production" }'
{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "name": "production",
  "key": "imp_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2",
  "key_prefix": "imp_a1b2",
  "created_at": "2026-02-19T12:00:00.000Z"
}
This endpoint uses your dashboard session (Auth0 JWT), not an API key.

Request body

name
string
required
A human-readable label for the key. Max 128 characters. Example: production, ci-pipeline.

Response

id
string
Unique identifier for the key (UUID). Use this when revoking.
name
string
The label you provided.
key
string
The raw API key — shown only once. Starts with imp_.
key_prefix
string
First 8 characters of the key. Safe to store and use in logs to identify which key made a request.
created_at
string
ISO 8601 timestamp.
curl -s -X POST "https://api.impulselabs.ai/api/api-keys" \
  -H "Authorization: Bearer <your-dashboard-session-token>" \
  -H "Content-Type: application/json" \
  -d '{ "name": "production" }'
{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "name": "production",
  "key": "imp_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2",
  "key_prefix": "imp_a1b2",
  "created_at": "2026-02-19T12:00:00.000Z"
}