Skip to main content
GET
/
v3
/
authentication
/
api-keys
List API keys
curl --request GET \
  --url https://api.snappy.com/public-api/v3/authentication/api-keys \
  --header 'Authorization: Bearer <token>'
{
  "data": [
    {
      "id": "abc123456",
      "expirationDate": "2022-12-06T09:50:38.536Z",
      "enforceMtls": false,
      "name": "My API key",
      "createdAt": "2022-12-06T09:50:38.536Z",
      "companyId": "abc12345678",
      "permissions": [],
      "accountsAccess": {
        "ids": [
          "<string>"
        ]
      }
    }
  ],
  "links": {
    "first": "/v3/products/655277e68e0719000d6c3fd5/variants?page[size]=100&page[number]=1",
    "next": "/v3/products/655277e68e0719000d6c3fd5/variants?page[size]=100&page[number]=2",
    "prev": null
  }
}

Authorizations

Authorization
string
header
required

User Bearer Authentication

Use a dashboard user JWT in the Authorization header when managing API keys from the Snappy dashboard:

Authorization: Bearer YOUR_JWT

For multi-company users, also pass Snappy-Company-Id to select the target company.

Headers

snappy-account-id
string

Optional account identifier for swag validation/filtering.

Example:

"acc123456"

snappy-company-id
string

Optional company identifier for swag validation/filtering.

Example:

"cmp123456"

Query Parameters

filter[accountId]
string[]

Comma-separated list of account IDs to filter API keys by account access.

Minimum array length: 1
Minimum string length: 1
Example:
["acc123", "acc456"]
page[number]
integer
default:1

1-indexed page number.

Required range: x >= 1
Example:

1

page[size]
integer
default:100

Number of API keys per page (max 100, default 100).

Required range: 1 <= x <= 100
Example:

100

Response

Page of API keys plus pagination links.

Paginated API keys response.

data
object[]
required

API keys for the requested page.

Top-level JSON:API-style pagination links for paginated list responses. first, next, and prev are all required and all nullable. prev is null on cursor-paginated endpoints (backward navigation not supported).

Last modified on June 17, 2026