Help Center/ CodeArts Repo/ API Reference/ APIs/ V4/ User/ Obtaining the Personal Access Token of a User
Updated on 2026-04-28 GMT+08:00

Obtaining the Personal Access Token of a User

Function

This API is used to obtain the personal access token of a user.

Debugging

You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.

URI

GET https://{hostURL}/v4/users/impersonation-tokens

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

group_id

Yes

Integer

Definition

Repository group ID, which is the numeric ID next to Group ID on the repository group homepage.

Value range:

1~2147483647

Table 2 Query Parameters

Parameter

Mandatory

Type

Description

state

No

String

Definition:

Status. all: all; active: active; inactive: inactive.

Default value:

all

Enumeration values:

  • all

  • active

  • inactive

search

No

String

Definition

Search content.

Default value:

false

offset

No

Integer

Definition

Offset, which starts from 0.

Value range:

0~2147483647

Default value:

0

limit

No

Integer

Definition

Number of returned records.

Value range:

1~100

Default value:

20

Request Parameters

Table 3 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

Definition

User token. Obtain a token by calling the IAM API for obtaining a user token. The value of X-Subject-Token in the response header is the user token.

Constraints

Mandatory.

Range

1–100,000 characters.

Default Value

N/A.

Response Parameters

Status code: 200

Table 4 Response body parameters

Parameter

Type

Description

[items]

Array of ImpersonationToken objects

This feature was introduced in 9.0

Table 5 ImpersonationToken

Parameter

Type

Description

id

Integer

Definition:

Unique ID

Value range:

1~2147483647

name

String

Definition:

Name.

Value range:

1 to 1,000 characters.

revoked

Boolean

Definition:

Cancel or not.

created_at

String

Definition:

Creation time.

Value range:

1 to 1,000 characters.

scopes

Array of strings

Definition:

Scope permission.

Value range:

0 to 1,000 characters.

active

Boolean

Definition:

Whether it is available.

expires_at

String

Definition:

Expiration time.

Value range:

1 to 1,000 characters.

impersonation

Boolean

Definition:

Whether the token is a personal token.

description

String

Definition:

Description.

Value range:

1 to 1,000 characters.

Status code: 401

Table 6 Response body parameters

Parameter

Type

Description

error_code

String

Definition

Error code.

error_msg

String

Definition

Error message.

Status code: 403

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

Definition

Error code.

error_msg

String

Definition

Error message.

Example Requests

GET https://{endpoint}/v4/users/impersonation-tokens?offset=0&limit=20

Example Responses

Status code: 200

Obtain the personal access token of a user.

[ {
  "id" : 27169,
  "name" : "ss",
  "revoked" : false,
  "created_at" : "2025-02-28T17:04:03.000+08:00",
  "scopes" : [ "download\rpush" ],
  "active" : false,
  "expires_at" : "2025-03-30T00:00:00.000+08:00",
  "impersonation" : true,
  "description" : null
} ]

Status code: 401

Unauthorized

{
  "error_code" : "DEV.00000003",
  "error_msg" : "Authentication information expired."
}

Status code: 403

Bad Request

{
  "error_code" : "CH.004403",
  "error_msg" : "Insufficient permissions. Apply for the required permissions and try again."
}

Status Codes

Status Code

Description

200

Obtain the personal access token of a user.

401

Unauthorized

403

Bad Request

Error Codes

See Error Codes.