---
title: "Create API key"
method: POST
path: "/keys"
tags: ["Key Management"]
---

# Create API key

`POST /keys`

## Request

- Base URL: `https://app.arkova.ai/api/v1`
- URL: `https://app.arkova.ai/api/v1/keys`
- Auth: HTTP bearer

Create an organization API key as an organization admin, optionally assigned to a current member. Add context=personal to create a JWT-owner key requiring a current paid personal Verified plan and active canonical identity verification entitlement. The raw key is returned once. Rate limited to 10 creations per hour, shared with agent key minting.

## Query parameters

- `context` 'personal'

## Headers

- `X-Org-Id` string, uuid

## Request body

- object
  - `name` string, required
  - `scopes` string[]
  - `assigned_user_id` string, uuid, nullable: Assign the key to this current organization member. 400 assignee_not_org_member otherwise.

## Response `201`

API key created (raw key shown once)

- ApiKeyCreated
  - `id` string, uuid
  - `key` string: Shown only once — store it securely
  - `key_prefix` string
  - `name` string
  - `scopes` string[]
  - `created_at` string, date-time

## Other responses

- `400`: Invalid request
- `401`: Authentication required
- `429`: Key creation rate limit (10 per hour per admin) reached. Retry-After is set.

---

[API](https://skmtc.dev/arkova/apis/arkova-verification-api.md) · [All operations](https://skmtc.dev/arkova/apis/arkova-verification-api/llms.txt) · [OpenAPI document](https://skmtc.dev/arkova/apis/arkova-verification-api/revisions/a14858d1efd4?raw)
