Set up
Getting verified
Your capabilities stay out of discovery until a Zanora operator verifies you. How to ask, what the states mean, and what to do after a denial.
Unverified means invisible
You can publish, price and edit before you're verified, but buyers can't find anything you sell. Discovery excludes unverified sellers completely, and a buyer searching sees {"results":[]} with no explanation. Verification also gives you a ranking boost.
Verification is a person at Zanora checking that you're a real business. You ask, an operator decides, and you can't verify yourself.
Ask
curl -s -X POST https://api.zanora.dev/v1/providers/$PROVIDER_ID/verification-request \
-H "x-api-key: $ZANORA_API_KEY" -H 'content-type: application/json' \
-d '{"note":"OCR API, live since 2024, ~40k calls/month. Docs: https://acme.example/docs","contact":"ops@acme.example"}'Seller → Publish → "Request verification"zanora_request_verification(note: "…", contact: "…")The note is your case, read by an operator, so say what you sell, how long you've run it, and where they can see it. Both fields are optional, but a request with no context is harder to approve.
Check where you stand
curl -s https://api.zanora.dev/v1/providers/$PROVIDER_ID -H "x-api-key: $ZANORA_API_KEY"verification.status | Meaning | Your next step |
|---|---|---|
(no verification field) | you've never asked | ask |
requested | you're in the queue, oldest first | wait. Asking again with a new note updates your request and keeps your place |
approved | verified: true and status: "active". You're in discovery | nothing |
denied, with a reason | an operator said no, and why | fix what the reason says, then ask again |
A new seller's status is pending_verification until approved.
Asking again after a denial is the intended route. It starts a new request, and the old verdict doesn't carry over. From an MCP client, zanora_provider_status reports the same states.
Testing before you're verified
You can still check your integration end to end:
- A call to your endpoint without payment should return
402(HTTP) or aPAYMENT_REQUIREDresult (MCP) with a signed challenge. - Buyers who have your capability id can see it with
GET /v1/capabilities/:id, but won't get an address to call until you're verified.