---
title: "Changes to Create an API key"
method: POST
path: "/v1/account/keys"
---

# Changes to Create an API key

`POST /v1/account/keys`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 1 of 4 revisions.

- **2026-11-03** `b697d49fa1f9`: 15 breaking, 8 warning, 15 info

## Changes

- **2026-11-03** `b697d49fa1f9`: 15 breaking, 8 warning, 15 info
  - request property `credit_limit` list-of-types was narrowed by removing types `null` from media type `application/json`
  - request property `expires_at` list-of-types was narrowed by removing types `null` from media type `application/json`
  - the `error` response's property type changed from `object` to no type for status `400`
  - the `error` response's property type changed from `object` to no type for status `401`
  - the `error` response's property type changed from `object` to no type for status `500`
  - the `error` response's property type changed from `object` to no type for status `503`
  - removed the required property `error/message` from the response with the `400` status
  - removed the required property `error/message` from the response with the `401` status
  - removed the required property `error/message` from the response with the `500` status
  - removed the required property `error/message` from the response with the `503` status
  - removed the required property `error/type` from the response with the `400` status
  - removed the required property `error/type` from the response with the `401` status
  - removed the required property `error/type` from the response with the `500` status
  - removed the required property `error/type` from the response with the `503` status
  - removed the success response with the status `201`
  - removed the optional property `error/code` from the response with the `400` status
  - removed the optional property `error/code` from the response with the `401` status
  - removed the optional property `error/code` from the response with the `500` status
  - removed the optional property `error/code` from the response with the `503` status
  - removed the optional property `error/param` from the response with the `400` status
  - removed the optional property `error/param` from the response with the `401` status
  - removed the optional property `error/param` from the response with the `500` status
  - removed the optional property `error/param` from the response with the `503` status
  - api operation id `createApiKey` removed and replaced with `create_api_key`
  - added the new optional request property `default_routing_strategy`
  - the request property `credit_limit` became nullable
  - the request property `expires_at` became nullable
  - the `name` request property's minLength was decreased from `1` to `0`
  - removed the non-success response with the status `402`
  - removed the non-success response with the status `403`
  - removed the non-success response with the status `410`
  - removed the non-success response with the status `422`
  - removed the non-success response with the status `429`
  - added `#/components/schemas/ErrorBody` to the `error` response property `allOf` list for the response status `400`
  - added `#/components/schemas/ErrorBody` to the `error` response property `allOf` list for the response status `401`
  - added `#/components/schemas/ErrorBody` to the `error` response property `allOf` list for the response status `500`
  - added `#/components/schemas/ErrorBody` to the `error` response property `allOf` list for the response status `503`
  - added the success response with the status `200`

---

[Operation](https://skmtc.dev/naga/apis/nagaai-api/docs/v1/account/keys/post.md) - [API](https://skmtc.dev/naga/apis/nagaai-api.md) - [Page](https://skmtc.dev/naga/apis/nagaai-api/changes/v1/account/keys/post)
