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

# Create a new API key

`POST /v1/api-keys`

Generate a new API key pair (clientId + clientSecret) for the authenticated subscriber. The clientSecret is only returned once on creation.

## Request body

- ApiKeyCreateRequestDTO
  - `env` string — Environment label for the API key (e.g., "api", "production", "staging")

## Response `201`

API key created successfully. The clientSecret is only returned once.

- ApiKeyCreateResponseDTO
  - `id` string, uuid, required — Unique identifier for the API key
  - `clientId` string, required — Public client ID used in API requests
  - `clientSecret` string, required — Secret key for signing requests. Only returned on creation - store securely.
  - `env` string, required — Environment label for the API key
  - `createdAt` string, date-time, required — Timestamp when the API key was created

## Changes

- **2026-02-11** `b4f394f05daf` — 1 info
  - the endpoint scheme security `lorikeetClientId AND lorikeetSignatureAuthV1` was removed from the API
- **2026-01-29** `8545f19bf98a` — 1 info
  - endpoint added

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

---

[API](https://skmtc.dev/optechai/apis/lorikeet-api.md) · [All operations](https://skmtc.dev/optechai/apis/lorikeet-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/optechai/lorikeet-api/revisions/789c7fa93584/schema)
