Agent Sandbox Quickstart
This quickstart is for autonomous agents, coding agents, and agent runtimes that need to evaluate Conto before a human creates a production account. The sandbox signup endpoint creates a test-mode organization, one agent, one Tempo Testnet wallet, an agent SDK key, and a sandbox organization API key. No email verification or human approval is required for sandbox creation.Discovery
Start from the agent manifest:
If your runtime skips manifests, use the endpoint directly:
environment, simulated-settlement semantics, wallet limits, and a
machine-readable workflow with setup, request, execute, status, and human-claim actions. Use
those links instead of constructing route names from memory.
Create A Sandbox
One command does the whole thing, including writing an owner-only.env.local, updating
.gitignore, and adding conto.config.json plus a runnable example.mjs to the current directory:
.env.local only inside the runtime that needs those credentials.
Or call the endpoint directly:
Example extraction:
Inspect The Setup
Use the SDK key returned by sandbox signup:chainId as either the numeric chain ID or the string value returned by setup.
The sandbox response reports wallet.custodyMode: "EXTERNAL". Use the approval and confirmation
flow when you attach a signer; the basic sandbox execution path remains available for testing
policy decisions without an onchain transfer.
Run A Policy-Checked Payment
Sandbox test payments exercise policy evaluation, spend tracking, receipts, and audit logs without an onchain transfer. You do not need a signer or a funded wallet to reach a completed payment. Request a small test payment. The policy engine evaluates it and returnsAPPROVED, DENIED, or
REQUIRES_APPROVAL:
APPROVED, execute it:
"status": "completed". In
sandbox test mode, the response omits onchain hash and explorer fields. A GET request to
/api/sdk/transactions includes the transaction, which counts against the sandbox spend limits. A
request for more than the $5 per-transaction limit returns DENIED with a customer-facing reason,
which is the policy engine working as intended.
Bring Your Own Signer (Optional)
If your agent controls a real wallet key, pass its address aspublicKey when creating the
sandbox and use the external-wallet flow instead: POST /api/sdk/payments/approve returns an
approvalToken, your signer performs the testnet transfer, and POST /api/sdk/payments/{requestId}/confirm records the real txHash:
Production integrations with managed wallets use the same
request -> execute flow with real
onchain execution, or autoExecute for single-call payments.Claim The Sandbox
When a human is ready to keep the sandbox, they sign in to Conto and call the claim endpoint with the sandbox organization API key. The sandbox key can be sent in the JSON body:Existing Organizations
If a human organization owner has already invited an agent, use organization-token registration instead of anonymous sandbox signup:externalId is optional but recommended: it makes retries idempotent and gives your system a
durable reconciliation key. The response confirms the agent status, granted scopes, credential
expiration, and the SDK endpoints that credential can call. The SDK key itself is shown only on the
first successful registration. If the same externalId is registered again, Conto returns the
existing agent and credential reference without revealing the key again.
Agent Checklist
- Fetch
/.well-known/agent.json. - Read
machineReadable.agentSandboxQuickstartandmachineReadable.agentSandboxSignup. POST /api/agents/sandbox.- Store returned keys securely; they are shown once.
- Call
GET /api/sdk/setupwithcredentials.sdkKey. POST /api/sdk/payments/request, thenPOST /api/sdk/payments/{requestId}/execute.- Verify the execute response shows
status: completedwithout onchain hash or explorer fields. - Ask a human to claim the sandbox before the credentials expire.
Next Steps
Connecting Agents
Wire Conto into OpenAI, Claude, LangChain, Python, and custom runtimes
Payments API
Request, approve, execute, confirm, and inspect payment state
Custody Modes
Choose managed execution or external-wallet approval flows
OpenAPI
Generate clients and inspect request and response schemas