Skip to main content

Access Token API

Generate Access Tokens for 3rd party applications that need access to epilot APIs.

Quick Startโ€‹

# List available operations
epilot access-token

# Call an operation
epilot access-token listAccessTokens

Common Flagsโ€‹

FlagDescription
-p key=valueSet a named parameter
-d '{...}'Request body JSON
-H 'Key: Value'Custom header
-t, --token <token>Bearer token for authentication
--profile <name>Use a named profile
-s, --server <url>Override server base URL
-i, --includeInclude response headers in output
--jsonOutput raw JSON (no formatting)
-v, --verboseVerbose output (show request details)
--jsonata <expr>JSONata expression to transform response
--definition <file>Override OpenAPI spec file/URL
--guidedPrompt for all parameters interactively
--no-interactiveDisable interactive prompts

Operationsโ€‹

Access Tokens

  • listAccessTokens โ€” Lists all Access Tokens for current user (by default excludes system generated tokens)
  • createAccessToken โ€” Access Token type: API (default if not specified):
  • revokeAccessToken โ€” Revokes an Access Token so it can't be used anymore.

Public

  • getAccessTokenJwks โ€” Get jwks public key set to verify access tokens generated by this API
  • getAccessTokenOIDC โ€” OpenID Connect configuration for Access Token API as identity provider
  • getPublicTokenJwks โ€” Get jwks public key set to verify public tokens generated by this API
  • getPublicTokenOIDC โ€” OpenID Connect configuration for Access Token API a a public identity provider

listAccessTokensโ€‹

Lists all Access Tokens for current user (by default excludes system generated tokens)

GET /v1/access-tokens

Parameters

NameInTypeRequiredDescription
token_typequery"api" | "journey" | "portal" | "assume" | "app"[]NoFilter by token types

Sample Call

epilot access-token listAccessTokens

With JSONata filter:

epilot access-token listAccessTokens --jsonata '$'
Sample Response
[
{
"id": "api_5ZugdRXasLfWBypHi93Fk",
"created_at": "1970-01-01T00:00:00.000Z",
"name": "Postman Access Token",
"token_type": "api",
"journey_id": "string",
"portal_id": "string",
"assignments": ["123:owner"],
"last_used": "2026-02-24"
}
]

createAccessTokenโ€‹

Access Token type: API (default if not specified):

POST /v1/access-tokens

Request Body

Sample Call

epilot access-token createAccessToken \
-d '{"name":"Postman Access Token","token_type":"api","assignments":["123:owner"],"expires_in":3600}'

Using stdin pipe:

cat body.json | epilot access-token createAccessToken

With JSONata filter:

epilot access-token createAccessToken --jsonata '$'
Sample Response
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6Ikp...",
"id": "api_5ZugdRXasLfWBypHi93Fk",
"created_at": "1970-01-01T00:00:00.000Z",
"name": "Postman Access Token",
"token_type": "api",
"journey_id": "string",
"portal_id": "string",
"assignments": ["123:owner"],
"last_used": "2026-02-24"
}

revokeAccessTokenโ€‹

Revokes an Access Token so it can't be used anymore.

DELETE /v1/access-tokens/{id}

Parameters

NameInTypeRequiredDescription
idpathstringYes

Sample Call

epilot access-token revokeAccessToken \
-p id=api_5ZugdRXasLfWBypHi93Fk

Using positional args for path parameters:

epilot access-token revokeAccessToken api_5ZugdRXasLfWBypHi93Fk

With JSONata filter:

epilot access-token revokeAccessToken -p id=api_5ZugdRXasLfWBypHi93Fk --jsonata 'id'
Sample Response
{
"id": "api_5ZugdRXasLfWBypHi93Fk",
"created_at": "1970-01-01T00:00:00.000Z",
"name": "Postman Access Token",
"token_type": "api",
"journey_id": "string",
"portal_id": "string",
"assignments": ["123:owner"],
"last_used": "2026-02-24"
}

getAccessTokenJwksโ€‹

Get jwks public key set to verify access tokens generated by this API

GET /v1/access-tokens/.well-known/jwks.json

Sample Call

epilot access-token getAccessTokenJwks

With JSONata filter:

epilot access-token getAccessTokenJwks --jsonata 'keys'
Sample Response
{
"keys": [
{
"alg": "RS256",
"e": "AQAB",
"kid": "tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw=",
"kty": "RSA",
"n": "h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ",
"use": "sig"
}
]
}

getAccessTokenOIDCโ€‹

OpenID Connect configuration for Access Token API as identity provider

GET /v1/access-tokens/.well-known/openid-configuration

Sample Call

epilot access-token getAccessTokenOIDC

With JSONata filter:

epilot access-token getAccessTokenOIDC --jsonata 'issuer'
Sample Response
{
"issuer": "https://access-token.sls.epilot.io/v1/access-tokens",
"jwks_uri": "https://access-token.sls.epilot.io/v1/access-tokens/.well-known/jwks.json"
}

getPublicTokenJwksโ€‹

Get jwks public key set to verify public tokens generated by this API

GET /v1/access-tokens/public/.well-known/jwks.json

Sample Call

epilot access-token getPublicTokenJwks

With JSONata filter:

epilot access-token getPublicTokenJwks --jsonata 'keys'
Sample Response
{
"keys": [
{
"alg": "RS256",
"e": "AQAB",
"kid": "tXWU5mPMbRPczpbQwi6vbhLF4GgF3wlMDSyqo7pfeiw=",
"kty": "RSA",
"n": "h_QDoCjZ8W_trtYXaP7_S22wf5r5Wd9XBLED78oT44bJjQXn8ddcFV8Hik65_4IYXVX_hTTU4zpxe3H8vx2j7-Zz3O59mYMp5S0MzODNEdf5Y_2o19eis0brmAJniixsNlQ9LlYkdrVamrgaxHu3ZpP_99zkfFybYeuYoQNzb3PyrT8xVnz_USs_nlFMHpGUxvvz7gfKPqxcLvgLJr4cwI9yzaSY9CD4qW181QVcnL_WzpQ8xx6AuhhHZQ1l_3GG4InTk8ahE7U2ZHVu8RrX6d01pMgc3piEcet9RgFLnhbTg3YIiKGoAbN42wJn_x3lgIAC42T9mbmTsHyUdS6nUQ",
"use": "sig"
}
]
}

getPublicTokenOIDCโ€‹

OpenID Connect configuration for Access Token API a a public identity provider

GET /v1/access-tokens/public/.well-known/openid-configuration

Sample Call

epilot access-token getPublicTokenOIDC

With JSONata filter:

epilot access-token getPublicTokenOIDC --jsonata 'issuer'
Sample Response
{
"issuer": "https://access-token.sls.epilot.io/v1/access-tokens",
"jwks_uri": "https://access-token.sls.epilot.io/v1/access-tokens/.well-known/jwks.json"
}