---
title: "Create an API key with explicit scopes and reveal its secret once"
method: POST
path: "/v2/api-keys"
tags: ["api-keys"]
---

# Create an API key with explicit scopes and reveal its secret once

`POST /v2/api-keys`

## Request

- Base URL: `https://api.stuut.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.stuut.ai/v2/api-keys`
- Auth: HTTP bearer

Create an API key with explicit scopes and reveal its secret once.

## Request body

- CreateAPIKeyRequest
  - `name` string, required
  - `user_id` string, required
  - `scopes` APIKeyScope[], required

## Response `201`

Successful Response

- CreateAPIKeyResponse
  - `key` APIKeyResponse, required
    - `id` string, required
    - `name` string, required
    - `secret_prefix` string, required
    - `user` APIKeyUserRef, required
      - `id` string, required
      - `name` string, required
      - `email` string, required
    - `scopes` string[], required
    - `created_at` string, date-time, required
    - `last_used_at` string, date-time, required
    - `revoked_at` string, date-time, required
    - `is_active` boolean, required
  - `secret` string, password, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/stuut/apis/stuut-api.md) - [All operations](https://skmtc.dev/stuut/apis/stuut-api/llms.txt) - [OpenAPI document](https://skmtc.dev/stuut/apis/stuut-api/revisions/3b5ab941f918?raw)
