Developers menu

Check a key

Whether the key works and its plan is LIVE: {ok, plan, limit_per_minute}. For a plugin's test button.

GET/api/v1/key
Plan LIVEKey scope liveLimit 120 a minute per key; a 304 is freeVersion 1.0.0Since 2026-09-30

This endpoint serves

Plan: LIVE. LIVE: today's session every second, alerts, ASK, the levels API and the platform integrations, and 5 LAB credits a month. Every finished session is free in REPLAY. Pricing.

Parameters

NameWhat it doesDefaultError
errorsquery · 200200: an error answers 200 with the same body and the real status in X-FirmTape-Status, for clients that cannot read a status.
keyquery · stringLegacy: the key in the address, for platforms that cannot send headers. Prefer the header.

Response

The key works.

FieldMeaningUnit
okbooleanAlways true.
planstringlive.
limit_per_minuteintegerRequests a minute this key may make.

Errors

StatusCodeWhat to do
401no_key, bad_keyNo key. Send Authorization: Bearer <key> with a key of the product's scope.
403live_requiredNo LIVE plan. Start or renew LIVE; pricing names the page.
429rate_limited, too_many_placesOver a limit. Wait Retry-After seconds; poll with If-None-Match, a 304 is free.

Every code: Errors.

Caching

Answers carry an ETag: send it back as If-None-Match and an unchanged reading answers 304 with no body, not counted against the limit.

Changes

  • 2026-09-30 Added.

OpenAPI operation checkKey in /docs/developers/openapi.json.

Measurements of dealer positioning, never a forecast or a trade call. This page is built from FirmTape's public contract, the same files the OpenAPI document is built from; the tests hold them against the route code. Markdown: /docs/developers/live/key.md.