API playground
The API playground is an interactive request builder inside the dashboard — a Stripe-style try-it console that works through the whole public API surface without leaving the browser. Pick an endpoint from the catalog, fill the fields, read the generated code in your language, hit Send, and inspect the response next to the snippet. It lives at Developer → API playground (/[locale]/developer/playground in the dashboard).
The page is gated to owner, admin, and developer roles.
The three panes
The playground lays out in three panes:
The endpoint catalog is curated rather than generated from the full OpenAPI document — roughly the two dozen verbs that cover the first week of an integration, with field copy written for onboarding (“Recipient phone number in E.164”) rather than auto-extracted from the schema.
Run a request
- Pick an endpoint in the left pane — for example Messages → Send SMS (
POST /messages). - Fill the form. Required fields carry a
requiredbadge; fields with a fixed choice render as a dropdown (channel, direction); free-form JSON fields render as a text area. Number fields are sent as numbers,jsonfields are parsed before sending. - Check the key. The status line shows which API key the request will run under — the playground picks the first active key on your account that matches the current mode (
dv_test_…in sandbox,dv_live_…in live). No matching key means the Send button stays disabled until you create one under Settings → API keys. - Read the generated code. The right pane renders the request as cURL and as a snippet for each official SDK language; it updates live as you type in the form.
- Hit Send. The response panel shows the status code (color-coded: 2xx green, 4xx amber, 5xx red), the duration in milliseconds, the response body, and the response headers.
X-RateLimit-Limit / -Remaining / -Reset (plus Retry-After when the bucket is exhausted) show as a line — remaining/limit remaining · resets in Ns — that turns amber under 20% remaining and red when exhausted, instead of hiding in the headers dump.
Errors come back through the same error-envelope masking the rest of the platform uses: genuine validation detail (422 with the bad field named) surfaces verbatim, while opaque internals are mapped to a friendly fallback.
Use the generated code in your codebase
The snippet panel is the point of the playground: it renders the request the way you would write it, on the base URL you actually send to.- cURL — an
X-API-Keyheader and the JSON body inline; paste it into a terminal. - Node, Python, Go, Ruby, PHP — same request through the official SDK for that language, reading the key from
ORBIT_API_KEY(live) orORBIT_SANDBOX_KEY(sandbox).
Sandbox vs live
The toggle in the builder header mirrors the dashboard-wide sandbox store: flip it to sandbox anywhere and the page follows. In sandbox mode the playground routes through yourdv_test_… key, so nothing is delivered to a real carrier and nothing is charged. In live mode it uses your dv_live_… key and the request is real.
The mode-vs-key pairing is enforced server-side: a request cannot sneak a live call through on a test key or vice versa.
What you send in sandbox mode is fully deterministic — the delivery outcome is chosen by the trailing digit of the recipient you send to (see Sandbox magic numbers). The playground is the fastest way to try one of those scenarios without writing a script.
Request history
Every run is appended to a per-user history that lives in your browser’s localStorage only — the last 50 requests, with method, path, mode, status, and duration. It never reaches a server; clearing browser data or switching browsers starts fresh, and the Clear button empties it. For the durable, workspace-wide view of API traffic — full request/response payloads retained for a year — use the Request Logs console. The playground history is the scratchpad; Request Logs is the record.See also
- Request Logs console — inspect the full payloads of the requests you made here
- Sandbox magic numbers — deterministic delivery outcomes keyed by trailing digit
- Developer Portal guide — the try-it endpoint, usage stats, key governance, and webhook debugging
- API Integration quickstart — take the request you built here into your codebase
- Authentication — key formats, roles, and rotation