LiveRecoverVYG Developer Docs
Brand Data API

API keys

GET/keys

List a brand's Brand API keys. Display prefixes only — the key itself is never returned.

Authorization

sessionBearerAuth
AuthorizationBearer <token>

Dashboard session access token (NOT a Brand Data API key), sent as Authorization: Bearer <session-token>. Used only for the /keys key-management routes.

In: header

Query Parameters

brandId?string

Brand to mint for. Defaults to the session’s own brand.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/keys"
{  "data": [    {      "id": "string",      "keyPrefix": "string",      "brandId": "string",      "createdAt": "string",      "lastUsedAt": "string",      "revokedAt": "string"    }  ]}
{  "error": "string"}
{  "error": {    "code": "conversation_not_found",    "message": "string"  }}
{  "error": {    "code": "conversation_not_found",    "message": "string"  }}
{  "error": {    "code": "conversation_not_found",    "message": "string"  }}
POST/keys

Mint a Brand Data API key for a brand. Authenticated by a dashboard session, never by an API key. The plaintext key is returned exactly once and cannot be retrieved again.

Authorization

sessionBearerAuth
AuthorizationBearer <token>

Dashboard session access token (NOT a Brand Data API key), sent as Authorization: Bearer <session-token>. Used only for the /keys key-management routes.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/keys" \  -H "Content-Type: application/json" \  -d '{}'
{  "data": {    "id": "string",    "keyPrefix": "string",    "brandId": "string",    "createdAt": "string",    "lastUsedAt": "string",    "revokedAt": "string",    "plaintext": "string"  }}
{  "error": "string"}
{  "error": {    "code": "conversation_not_found",    "message": "string"  }}
{  "error": {    "code": "conversation_not_found",    "message": "string"  }}
{  "error": {    "code": "conversation_not_found",    "message": "string"  }}
DELETE/keys/{keyId}

Revoke one key by its unique id. Idempotent: an unknown or already-revoked key 404s.

Authorization

sessionBearerAuth
AuthorizationBearer <token>

Dashboard session access token (NOT a Brand Data API key), sent as Authorization: Bearer <session-token>. Used only for the /keys key-management routes.

In: header

Path Parameters

keyId*string

The key’s unique id (from the list endpoint). Revoking targets exactly this key — the display prefix is non-unique and would revoke every key that shares it.

Query Parameters

brandId?string

Brand to mint for. Defaults to the session’s own brand.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X DELETE "https://example.com/keys/string"
{  "data": [    {      "id": "string",      "keyPrefix": "string",      "brandId": "string",      "createdAt": "string",      "lastUsedAt": "string",      "revokedAt": "string"    }  ]}
{  "error": "string"}
{  "error": {    "code": "conversation_not_found",    "message": "string"  }}
{  "error": {    "code": "conversation_not_found",    "message": "string"  }}
{  "error": {    "code": "conversation_not_found",    "message": "string"  }}
{  "error": {    "code": "conversation_not_found",    "message": "string"  }}