---
title: "Create API key"
method: POST
path: "/v1/dev/keys"
tags: ["API Keys"]
---

# Create API key

`POST /v1/dev/keys`

Create a new developer API key. The full key is only returned once — store it securely immediately.

## Request body

- CreateApiKey
  - `name` string, required — Descriptive name for the key.
  - `scopes` string[] — Optional scopes to assign. Defaults to read-only (conversations:read, memories:read, action_items:read, goals:read) if not provided.

## Response `200`

The created API key with full secret.

- ApiKeyCreated
  - `id` string
  - `name` string
  - `key_prefix` string
  - `key` string — The full API key. **Only returned once during creation.**
  - `created_at` string, date-time
  - `last_used_at` string, date-time, nullable
  - `scopes` string[], nullable — Permission scopes assigned to the API key. Null for legacy keys (treated as read-only).

## Other responses

- `401` — Invalid or missing API key.
- `422` — Validation error.

## Changes

- **2026-04-27** `7ee643294766` — 2 info
  - added the new optional request property `scopes`
  - added the optional property `scopes` to the response with the `200` status
- **2026-03-24** `b791dc93aa91` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/basedhardware/apis/omi-developer-api/changes/v1/dev/keys/post.md)

---

[API](https://skmtc.dev/basedhardware/apis/omi-developer-api.md) · [All operations](https://skmtc.dev/basedhardware/apis/omi-developer-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/basedhardware/omi-developer-api/revisions/e3d644927120/schema)
