Auth API (0.1.0)

Download OpenAPI specification:

Authentication, token issuance, API key lifecycle, and scope-based authorization for PBG services.

auth

/auth/api-key/login

Request Body schema: application/json
required
apiKey
required
string

Responses

Request samples

Content type
application/json
{
  • "apiKey": "string"
}

Response samples

Content type
application/json
{
  • "accessToken": "string",
  • "authMethod": "google_oidc",
  • "effectiveScopes": [
    ],
  • "expiresAt": 0,
  • "principalId": "string",
  • "principalType": "user",
  • "refreshToken": "string",
  • "refreshTokenId": "string",
  • "sessionId": "string",
  • "stateHandle": "string",
  • "subject": { }
}

/auth/logout

Authorizations:
AuthToken

Responses

/auth/sso/google/callback

query Parameters
code
required
string
state
required
string

Responses

Response samples

Content type
application/json
{
  • "accessToken": "string",
  • "authMethod": "google_oidc",
  • "effectiveScopes": [
    ],
  • "expiresAt": 0,
  • "principalId": "string",
  • "principalType": "user",
  • "refreshToken": "string",
  • "refreshTokenId": "string",
  • "sessionId": "string",
  • "stateHandle": "string",
  • "subject": { }
}

/auth/sso/google/start

query Parameters
redirectTarget
string
stateHandle
string

Responses

/auth/tokens/refresh

Request Body schema: application/json
required
refreshToken
required
string

Responses

Request samples

Content type
application/json
{
  • "refreshToken": "string"
}

Response samples

Content type
application/json
{
  • "accessToken": "string",
  • "authMethod": "google_oidc",
  • "effectiveScopes": [
    ],
  • "expiresAt": 0,
  • "principalId": "string",
  • "principalType": "user",
  • "refreshToken": "string",
  • "refreshTokenId": "string",
  • "sessionId": "string",
  • "stateHandle": "string",
  • "subject": { }
}

/auth/wallet/cip30/challenges

Request Body schema: application/json
required
walletAddress
required
string

Responses

Request samples

Content type
application/json
{
  • "walletAddress": "string"
}

Response samples

Content type
application/json
{
  • "challengeId": "string",
  • "domain": "string",
  • "expiresAt": 0,
  • "issuedAt": 0,
  • "message": "string",
  • "messageBytesHex": "string",
  • "nonce": "string"
}

/auth/wallet/cip30/login

Request Body schema: application/json
required
coseKeyHex
required
string
challengeId
required
string
signatureHex
required
string
signedMessageHex
required
string
walletAddress
required
string

Responses

Request samples

Content type
application/json
{
  • "coseKeyHex": "string",
  • "challengeId": "string",
  • "signatureHex": "string",
  • "signedMessageHex": "string",
  • "walletAddress": "string"
}

Response samples

Content type
application/json
{
  • "accessToken": "string",
  • "authMethod": "google_oidc",
  • "effectiveScopes": [
    ],
  • "expiresAt": 0,
  • "principalId": "string",
  • "principalType": "user",
  • "refreshToken": "string",
  • "refreshTokenId": "string",
  • "sessionId": "string",
  • "stateHandle": "string",
  • "subject": { }
}

introspection

/me

Authorizations:
AuthToken
query Parameters
check
string

Responses

Response samples

Content type
application/json
{
  • "authMethod": "google_oidc",
  • "checks": [
    ],
  • "effectiveScopes": [
    ],
  • "expiresAt": 0,
  • "issuedAt": 0,
  • "ownerPrincipalId": "string",
  • "principalId": "string",
  • "principalType": "user",
  • "sessionId": "string",
  • "tokenType": "access_token"
}

api-keys

/api-keys

Authorizations:
AuthToken

Responses

Response samples

Content type
application/json
[
  • {
    }
]

/api-keys

Authorizations:
AuthToken
Request Body schema: application/json
required
expiresAt
number or null
label
required
string
required
Array of objects (Scope)

Responses

Request samples

Content type
application/json
{
  • "expiresAt": 0,
  • "label": "string",
  • "scopes": [
    ]
}

Response samples

Content type
application/json
{
  • "apiKey": "string",
  • "expiresAt": 0,
  • "label": "string",
  • "ownerPrincipalId": "string",
  • "principalId": "string",
  • "scopes": [
    ]
}

/api-keys/{apiKeyId}

Authorizations:
AuthToken
path Parameters
apiKeyId
required
string

Responses

admin

/admin/api-keys/{apiKeyId}/revoke

Authorizations:
AuthToken
path Parameters
apiKeyId
required
string
Request Body schema: application/json
optional
reason
string

Responses

Request samples

Content type
application/json
{
  • "reason": "string"
}

/admin/principals/{principalId}/revoke

Authorizations:
AuthToken
path Parameters
principalId
required
string
Request Body schema: application/json
optional
reason
string

Responses

Request samples

Content type
application/json
{
  • "reason": "string"
}

/admin/refresh-families/{familyId}/revoke

Authorizations:
AuthToken
path Parameters
familyId
required
string
Request Body schema: application/json
optional
reason
string

Responses

Request samples

Content type
application/json
{
  • "reason": "string"
}

principals

/principals/{principalId}/scopes

Authorizations:
AuthToken
path Parameters
principalId
required
string

Responses

Response samples

Content type
application/json
{
  • "principalId": "string",
  • "scopes": [
    ]
}

/principals/{principalId}/scopes

Authorizations:
AuthToken
path Parameters
principalId
required
string
Request Body schema: application/json
required
required
Array of objects (Scope)

Responses

Request samples

Content type
application/json
{
  • "scopes": [
    ]
}

Response samples

Content type
application/json
{
  • "principalId": "string",
  • "scopes": [
    ]
}

meta

/health

Responses

/openapi.json

Responses

Response samples

Content type
application/json
{ }