mirror of
https://github.com/stack-auth/stack.git
synced 2026-06-13 21:01:21 +08:00
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
87 lines
2.3 KiB
Plaintext
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>
|