---
title: "POST /api/v1/users/{user}/personalAccessTokens"
method: POST
path: "/api/v1/users/{user}/personalAccessTokens"
tags: ["UserService"]
---

# POST /api/v1/users/{user}/personalAccessTokens

`POST /api/v1/users/{user}/personalAccessTokens`

CreatePersonalAccessToken creates a new Personal Access Token for a user.
 The token value is only returned once upon creation.

## Path parameters

- `user` string, required

## Request body

- CreatePersonalAccessTokenRequest
  - `parent` string, required — Required. The parent resource where this token will be created. Format: users/{user}
  - `description` string — Optional. Description of the personal access token.
  - `expiresInDays` integer — Optional. Expiration duration in days (0 = never expires).

## Response `200`

OK

- CreatePersonalAccessTokenResponse
  - `personalAccessToken` PersonalAccessToken — PersonalAccessToken represents a long-lived token for API/script access. PATs are distinct from short-lived JWT access tokens used for session authentication.
    - `name` string — The resource name of the personal access token. Format: users/{user}/personalAccessTokens/{personal_access_token}
    - `description` string — The description of the token.
    - `createdAt` string, date-time — Output only. The creation timestamp.
    - `expiresAt` string, date-time — Optional. The expiration timestamp.
    - `lastUsedAt` string, date-time — Output only. The last used timestamp.
  - `token` string — The actual token value - only returned on creation. This is the only time the token value will be visible.

## Other responses

- `default` — Default error response

---

[API](https://skmtc.net/usememos/apis/untitled-api.md) · [All operations](https://skmtc.net/usememos/apis/untitled-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/usememos/untitled-api/versions/f01e84cf5acc/schema)
