Skip to content

Demo sessions

A demo session is a temporary sandbox with a short-lived test API key, for trying the API before you build on it. POST /v1/demo-sessions takes no credential, and the secret key it returns is shown once, at creation and for a short idempotent retry window.

One demo sandbox can be active per client at a time. Creating another while one is active returns 409 ALREADY_EXISTS with the active session in details[0].current_resource. To get a new key, send that session's resource_id to POST /v1/demo-sessions/{demo_session_id}/reset.

Demo keys run on much lower request budgets than other keys, and creating a session has its own limits. Demo sandbox limits lists both. The daily cap on new sessions returns 409 LIMIT_REACHED with reason daily_demo_sessions, limit, and resets_at. For anything sustained, create your own sandbox.

Create demo session#

POST/v1/demo-sessionsIdempotent

No API key required

Rate limit: demo session limits

Creates a temporary demo sandbox and returns a short-lived test API key. The secret key is displayed only at creation time and for a short idempotent retry window. Omit template to use quickstart; an explicit empty or unsupported value is invalid.

Request body

templateenum

Omit to use quickstart. An explicit empty or unsupported template is invalid.

  • quickstart

Response · 201

The created demo session and temporary API key.

dataobjectRequired

Resource, collection, or operation result returned by this request.

metaobject

Additional information about this response.

request_idstringRequired

Identifier of this API request, used to correlate logs and support requests.

curl -X POST https://api.withflintpay.com/v1/demo-sessions \
  -H "Flint-Version: 2026-09-07" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: a-unique-key" \
  -d '{
    "template": "quickstart"
  }'

Reset demo session#

POST/v1/demo-sessions/{demo_session_id}/resetIdempotent

No API key required

Rate limit: demo session limits

Ends the active or provisioning demo session identified by demo_session_id for this client and provisions a fresh one. A client that lost its create response gets the current session ID from current_resource.resource_id on ALREADY_EXISTS. A retry with the same idempotency key and body replays the replacement before checking the current session, including its secret during the secret delivery window. After that window, the retry returns ALREADY_EXISTS with the current session reference. The daily cap applies only to fresh executions. Omit template to use quickstart; an explicit empty or unsupported value is invalid.

Path parameters

demo_session_idstringRequired

The active or provisioning demo session to reset for this client.

Request body

templateenum

Omit to use quickstart. An explicit empty or unsupported template is invalid.

  • quickstart

Response · 201

The freshly provisioned demo session and temporary API key.

Same response as Create demo session.

curl -X POST https://api.withflintpay.com/v1/demo-sessions/demo_01KEZF7C001S0675NAS5BPBS0V/reset \
  -H "Flint-Version: 2026-09-07" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: a-unique-key" \
  -d '{
    "template": "quickstart"
  }'

Was this helpful?