---
title: "Create System Account Access Token"
method: POST
path: "/v3/system-accounts/{accountId}/access-tokens"
tags: ["System Accounts - Access Tokens"]
---

# Create System Account Access Token

`POST /v3/system-accounts/{accountId}/access-tokens`

## Request

- Base URL: `https://global.api.konghq.com`
- URL: `https://global.api.konghq.com/v3/system-accounts/{accountId}/access-tokens`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer
  - HTTP bearer
  - HTTP bearer

Creates an access token for the specified system account (SA). The access token can be used for authenticating API and CLI requests. The token will only be displayed once on creation. Returns a 409 if the system account already has a token with the same name.

## Request body

- object
  - `name` string, required
  - `expires_at` string, date-time, required

## Response `201`

A response including a single system account access token with the token.

- object
  - `id` string, uuid: ID of the system account access token.
  - `name` string: Name of the system account access token.
  - `created_at` string, date-time: Timestamp of when the system account access token was created.
  - `updated_at` string, date-time: Timestamp of when the system account access token was last updated.
  - `expires_at` string, date-time: Timestamp of when the system account access token will expire.
  - `last_used_at` string, date-time: Timestamp of when the system account access token was last used.
  - `token` string: The token of the system account access token.

## Other responses

- `401`: Unauthenticated
- `403`: Unauthorized
- `404`: Not Found
- `409`: Conflict

## Changes

- **2026-09-25** `68d43091b84d`: 3 warning
  - added the new `401.00` enum value to the `status` response property for the response status `401`
  - added the new `404.00` enum value to the `status` response property for the response status `404`
  - added the new `409.00` enum value to the `status` response property for the response status `409`
- **2026-09-18** `f324fb7610e4`: 3 breaking, 23 info
  - the response's body type changed from no type to `object` for status `401`
  - the response's body type changed from no type to `object` for status `404`
  - the response's body type changed from no type to `object` for status `409`
  - removed `#/components/schemas/BaseError, subschema #2` from the response body `allOf` list for the response status `401`
  - …22 more
- **2025-10-20** `d2ca10cddf1f`: 4 breaking
  - the request property `expires_at` became not nullable
  - the request property `name` became not nullable
  - the request property `expires_at` became required
  - the request property `name` became required
- **2025-08-22** `3c0154b2053a`: 5 breaking, 2 info
  - the response property `detail` became nullable for the status `403`
  - the response property `instance` became nullable for the status `403`
  - the response property `name` became nullable for the status `201`
  - the response property `status` became nullable for the status `403`
  - …3 more

[Operation history](https://skmtc.dev/kong/apis/konnect-api-go-sdk/changes/v3/system-accounts/:accountId/access-tokens/post.md)

---

[API](https://skmtc.dev/kong/apis/konnect-api-go-sdk.md) · [All operations](https://skmtc.dev/kong/apis/konnect-api-go-sdk/llms.txt) · [OpenAPI document](https://skmtc.dev/kong/apis/konnect-api-go-sdk/revisions/7aab863a6daa?raw)
