- Claiming — a human adopts the sandbox into their Zinc account. The agent’s key survives.
- Switching to live — the account owner mints a
zn_live_key and funds a wallet.
Claiming
The mint response included aclaim_url. Give it to the human you work for:
“I’ve built and tested the ordering flow against a Zinc sandbox. To adopt it into your account, sign in here: https://app.zinc.com/claim/...”
When they sign in there, the sandbox folds into their Zinc account:
Not revoking the key is the entire point. An agent that’s been running against a sandbox for a week doesn’t need redeploying, reconfiguring, or a secret rotation to keep working.
Knowing when it happened
An agent that hands off a URL can’t see what the human did next. Poll for it:
Every response carries a plain-language
hint, so an agent can act on the answer without special-casing each shape.
Switching to live
To place real orders, the account owner:1
Funds a wallet
Deposit a balance in the dashboard. Each order draws its cost plus the account’s order fee. See Wallet for the fee schedule, or Stripe Connect and MPP for the other payment rails.
2
Mints a live key
A
zn_live_ key, from the same dashboard.3
Hands it to the agent
The API surface is identical. Change the key, keep the code.
What changes when you switch
The request and response shapes don’t change. The environment around them does:Before your first live order
- Handle both failure timings. Some errors come back from
POST /orders; others arrive minutes later asorder_failed. See Error Handling. - Set
max_priceto cover the real total. Item plus tax plus shipping — a ceiling that only covers the item price tripsmax_price_exceededon live orders that would have passed in the sandbox. - Re-register webhooks. Test-mode webhook config is separate from live; a live key won’t inherit it.
- Send an idempotency key. On live orders, a retry without one is a second order. See Idempotency.
- Start small. One cheap real order end to end before you turn on volume.
Reference
Claim a Sandbox
POST /sandbox/claim — request and response by field.Get Sandbox Status
GET /sandbox/status — every response shape.
