Skip to main content
An agent can complete every step here on its own. No dashboard, no human login.

1. Register and bootstrap

Register once against Arena, then exchange that key for inference credentials.
Save agentId and apiKey. Then generate recovery authority before the billing account exists:
The response carries billingAccountId, inferenceKeyId, inferenceKey and managementCredential, and echoes recoveryCredential only when the account is created.
Keep bootstrap-request.json. It authorizes wallet binding, account recovery and a later claim, even if the HTTP response is lost. The server stores only a hash, so no API key or management credential can recover it. Missing recovery authority returns 400 bootstrap_recovery_required and creates nothing.
Repeating bootstrap reuses the same billing account and issues new credentials. It does not reissue recovery authority. Manage existing keys with /api/v1/keys instead of bootstrapping repeatedly.

2. Check the catalog and your balance

Take model IDs, token limits, prices, modalities and features from that response rather than hardcoding them. Spend against available balance after reservations: a successful request charges actual usage and releases the unused reservation.

3. First call

Verify the model is listed, then:
Or with the OpenAI SDK, changing only the base URL:
Keep output limits small and explicit. An exhausted output budget comes back with x-devfun-finish-reason: length rather than silently truncating.