# List API Keys (with Model Access Summary) - Documentation

> For the complete documentation index, see [llms.txt](/llms.txt). Markdown is available with `Accept: text/markdown` and `.md` URL variants.

Source: /docs/api-reference/key-list-with-model-access

# List API Keys (with Model Access Summary)

Copy pageCopy page

Copy pageCopy page

GET

/

openapi

/

v2

/

user

/

key

Try it

```
curl --request GET \
--url 'https://api.novita.ai/openapi/v2/user/key?includePolicySummary=true' \
--header 'Authorization: Bearer '
```

200

```
{
"keys": [
{
"name": "default",
"id": "123456",
"stringId": "key_xxx",
"maskedKey": "sk_xxx***",
"memberId": "member_xxx",
"uuid": "user_uuid_xxx",
"expireTime": "never",
"createTime": "2026-07-14 12:00:00",
"lastUsedAt": 1783764000,
"modelAccessPolicy": {
"mode": "selected",
"allowedModelCount": 1,
"excludedModelCount": 0
}
}
]
}
```

List the API keys of the current team. When `includePolicySummary=true`, each key includes a `modelAccessPolicy` summary, which is convenient for showing model access status on a list page. On page initialization, call this endpoint to get the summaries first, then query a single key’s full policy as needed.

##

[​](#permissions)

Permissions

Returned according to the platform’s existing API key read permissions: Owner / Admin can list all keys in the team; Developer and Basic members see the keys they own, within their accessible scope.

##

[​](#request-headers)

Request Headers

[​](#param-authorization)

Authorization

string

required

Bearer authentication format, for example: Bearer {{API Key}}.

##

[​](#query-parameters)

Query Parameters

[​](#param-include-policy-summary)

includePolicySummary

boolean

Whether to return the `modelAccessPolicy` summary for each key. Recommended to pass `true` on the frontend. When omitted or `false`, `modelAccessPolicy` may not be returned.

##

[​](#response-parameters)

Response Parameters

[​](#param-keys)

keys

object[]

required

The list of API keys.

Hide properties

[​](#param-name)

name

string

required

API Key name.

[​](#param-id)

id

string

required

Numeric ID of the API key.

[​](#param-string-id)

stringId

string

required

The stringId of the API key, used as the path parameter for the model access policy endpoints.

[​](#param-masked-key)

maskedKey

string

required

The masked API key, for example `sk_xxx***`. The list endpoint does not return the plaintext key; the plaintext is shown only once at creation time.

[​](#param-member-id)

memberId

string

required

The sub-user account ID that owns the API key.

[​](#param-uuid)

uuid

string

required

The UUID of the user that owns the API key.

[​](#param-expire-time)

expireTime

string

required

Expiration time. `never` when the key never expires.

[​](#param-create-time)

createTime

string

required

Creation time.

[​](#param-last-used-at)

lastUsedAt

int64

required

Last used time, as a Unix timestamp in seconds. `0` if never used.

[​](#param-model-access-policy)

modelAccessPolicy

object

Model access summary, returned only when `includePolicySummary=true`.

Show properties

[​](#param-mode)

mode

string

required

Access mode. Possible values: `all_enabled`, `selected`.

[​](#param-allowed-model-count)

allowedModelCount

int32

required

Number of accessible models.

[​](#param-excluded-model-count)

excludedModelCount

int32

required

Number of excluded models.

```
curl --request GET \
--url 'https://api.novita.ai/openapi/v2/user/key?includePolicySummary=true' \
--header 'Authorization: Bearer '
```

200

```
{
"keys": [
{
"name": "default",
"id": "123456",
"stringId": "key_xxx",
"maskedKey": "sk_xxx***",
"memberId": "member_xxx",
"uuid": "user_uuid_xxx",
"expireTime": "never",
"createTime": "2026-07-14 12:00:00",
"lastUsedAt": 1783764000,
"modelAccessPolicy": {
"mode": "selected",
"allowedModelCount": 1,
"excludedModelCount": 0
}
}
]
}
```

Last modified on July 22, 2026
