Retrieve the workspace
Introspect the key: which workspace it belongs to, what it may do, its rate limit, and current usage.
Answers "does this key work, and what can it do?", which makes it the first call worth making from any new integration.
Requires the projects:read scope, the same one that grants
projects and forms. Both dashboard presets carry it, so any key you
created in the app can call this. A key that lacks it answers 403 insufficient_scope, because
plan and usage are billing-adjacent and a key with no grants should not read them.
What it tells you#
nameandplan: which workspace the key belongs to, and its tierplan_sizeandbilling_interval: the size the plan is bought at (the contacts it holds) and whether it is billedmonthlyoryearly.billing_intervalisnullwithout a paid subscriptioncomplimentary:truewhen the plan is given rather than sold. A complimentary plan has no subscription, so itsbilling_intervalisnullapi_key.scopes: what this key may doapi_key.project: the project it is pinned to, ornullfor the whole workspaceapi_key.mode:liveortest. A test key works on test data only (see Testing without touching your audience). Every response also names it in theLaunchList-Modeheaderlimitsandusage: the contacts your plan holds and your rate limit, against what you have used
Use it as a health check#
curl https://api.getlaunchlist.com/v1/workspace \
-H "Authorization: Bearer llk_live_8xKq3Rp9Wm2Nz7Vt6yL1cG5dH0jA4sE8uNqB2fXk"
A 200 means the key is live and you know exactly what it can reach. A 401 means it is wrong or
revoked, and finding that out here is much better than finding it out mid-import. A 403 means the
key is valid but does not carry projects:read, so this endpoint cannot answer for it: fall back to
any call the key does carry a scope for.