Set up
Create a workspace
Sign up as a buyer from the console or the API, confirm your email, and keep the root key safe. Nothing is created until the address is confirmed.
From the console
- Open console.zanora.dev↗ and choose Buyer.
- Enter your email, organisation name and a password.
- Click the link in the email. The console confirms the address, creates your workspace, and shows the root API key once.
You can now sign in to the console with your email and password, and use the key from code.
From the API
Terminal
curl -s -X POST https://api.zanora.dev/v1/signup -H 'content-type: application/json' -d '{
"role": "buyer",
"email": "eng@northwind.example",
"organizationName": "Northwind",
"dailyBudgetMinor": "50000",
"password": "optional — enables console sign-in"
}'| Field | Required | Meaning |
|---|---|---|
role | yes | "buyer" |
email | yes | where the confirmation link goes |
organizationName | yes | shown in the console and on approvals |
dailyBudgetMinor | no | the workspace's daily spending cap, in cents ("50000" = $500) |
password | no | lets you sign in to the console. It only takes effect once the email is confirmed |
website | no | your organisation's site |
The response is 202 with a signupId. Nothing exists yet. The link in the email carries a single-use token that expires after 24 hours. Opening it (or POST /v1/signup/verify with {"token":"…"}) creates the workspace and returns:
JSON
{
"signupId": "sgn_…",
"role": "buyer",
"status": "completed",
"tenant": { "kind": "workspace", "id": "wsp_…", "name": "Northwind" },
"credential": { "keyId": "akey_…", "token": "zk.akey_….…", "label": "…", "scopes": ["…"] }
}Save the token now
credential.token is shown once. Only a hash of it is stored, so a lost key is replaced, never recovered.
Didn't get the email?
Terminal
curl -s -X POST https://api.zanora.dev/v1/signup/resend -H 'content-type: application/json' \
-d '{"role":"buyer","email":"eng@northwind.example"}'Resending invalidates the previous link. The response is the same whether or not the address is known, so this can't be used to find out who has an account.
After signing up
- Run
GET /v1/whoamiwith the key to confirm it works. - Mint narrower keys for each agent or service, and keep the root key for setup. See Accounts and API keys.
- Next: create a wallet for your agent.