stack/docs-mintlify/api/admin/api-keys/create-user-api-key.mdx
Madison 13fccd32b6
Some checks failed
all-good: Did all the other checks pass? / all-good (push) Has been cancelled
Ensure Prisma migrations are in sync with the schema / check_prisma_migrations (22.x) (push) Has been cancelled
DB migration compat / Check if migrations changed (push) Has been cancelled
Docker Server Build and Push / Docker Build and Push Server (push) Has been cancelled
Docker Server Build and Run / docker (push) Has been cancelled
Runs E2E API Tests (Local Emulator) / E2E Tests (Local Emulator, Node ${{ matrix.node-version }}) (22.x) (push) Has been cancelled
Runs E2E API Tests / E2E Tests (Node ${{ matrix.node-version }}, Freestyle ${{ matrix.freestyle-mode }}) (mock, 22.x) (push) Has been cancelled
Runs E2E API Tests / E2E Tests (Node ${{ matrix.node-version }}, Freestyle ${{ matrix.freestyle-mode }}) (prod, 22.x) (push) Has been cancelled
Runs E2E API Tests with custom port prefix / build (22.x) (push) Has been cancelled
Lint & build / lint_and_build (latest) (push) Has been cancelled
Dev Environment Test With Custom Base Port / restart-dev-and-test-with-custom-base-port (push) Has been cancelled
Dev Environment Test / restart-dev-and-test (push) Has been cancelled
Run setup tests with custom base port / setup-tests-with-custom-base-port (push) Has been cancelled
Run setup tests / setup-tests (push) Has been cancelled
TOC Generator / TOC Generator (push) Has been cancelled
DB migration compat / Back-compat — Current branch migrations with ${{ needs.check-migrations-changed.outputs.base_branch }} branch code (push) Has been cancelled
DB migration compat / Forward-compat — Current branch code with ${{ needs.check-migrations-changed.outputs.base_branch }} branch migrations (push) Has been cancelled
DB migration compat / No migration changes (skipped) (push) Has been cancelled
Add docs-mintlify to root
2026-04-01 14:58:41 -05:00

87 lines
2.3 KiB
Plaintext

---
title: "Create User API Key"
description: "Create a new API key for a user."
api: "POST /api/v1/user-api-keys"
---
## Request
<ParamField header="x-stack-secret-server-key" type="string" required>
The secret server key for authentication.
</ParamField>
<ParamField header="x-stack-admin-access-token" type="string">
The admin access token.
</ParamField>
<ParamField header="x-stack-project-id" type="string" required>
The project ID.
</ParamField>
<ParamField body="user_id" type="string" required>
The identifier of the user to create the API key for.
</ParamField>
<ParamField body="description" type="string">
A human-readable description for the API key.
</ParamField>
<ParamField body="expires_at" type="string">
ISO 8601 timestamp of when the API key should expire. If not provided, the key does not expire.
</ParamField>
## Response
<ResponseField name="id" type="string">
The unique identifier of the newly created API key.
</ResponseField>
<ResponseField name="description" type="string">
The description of the API key.
</ResponseField>
<ResponseField name="user_id" type="string">
The identifier of the user this API key belongs to.
</ResponseField>
<ResponseField name="api_key" type="string">
The actual API key value. This is only returned once at creation time.
</ResponseField>
<ResponseField name="expires_at" type="string">
ISO 8601 timestamp of when the API key expires, or `null` if it does not expire.
</ResponseField>
<ResponseField name="created_at" type="string">
ISO 8601 timestamp of when the API key was created.
</ResponseField>
<Note>
The `api_key` value is only returned in the creation response. Make sure to store it securely, as it cannot be retrieved again.
</Note>
<CodeGroup>
```bash cURL
curl -X POST 'https://api.stack-auth.com/api/v1/user-api-keys' \
-H 'Content-Type: application/json' \
-H 'x-stack-secret-server-key: YOUR_SECRET_SERVER_KEY' \
-H 'x-stack-project-id: YOUR_PROJECT_ID' \
-d '{
"user_id": "usr_1234567890",
"description": "My API key",
"expires_at": "2025-12-31T23:59:59Z"
}'
```
```json 200 Response
{
"id": "uak_1234567890",
"description": "My API key",
"user_id": "usr_1234567890",
"api_key": "uak_live_abc123def456...",
"expires_at": "2025-12-31T23:59:59Z",
"created_at": "2024-01-01T00:00:00Z"
}
```
</CodeGroup>