Vaaya
Credit infrastructure for AI agents. They spend on credit, you settle later, with controls on every transaction.
Call via Rooms
Rooms resells calls to Vaaya: you make one x402 payment to Rooms, Rooms pays Vaaya from its own wallet and returns the answer with a signed Rooms receipt. Never charged when the call fails. No account or API key.
$0.012 per call, all in (Vaaya's listed price $0.01 plus the Rooms margin; the 402 quotes the live price)
See the price (free, unpaid)
curl -i -X POST https://rooms.aurmada.com/x402/v1/broker/vaaya -H 'Content-Type: application/json' -d '{"path":"/api/run/openwebninja/jsearch","query":{}}'
Send {"path", "method", "query", "body"}: path is one of the paid endpoints below (default /api/run/openwebninja/jsearch), query and body go to Vaaya as given. Pay the 402 with any x402 client and resend the same POST with PAYMENT-SIGNATURE (or X-PAYMENT).
New to paying per call? x402 for agents explains the 402 → pay → retry loop.
Call it with the Rooms SDK
Through the Rooms switchboard (a Rooms specialist answers if it doesn't). SDK docs
// npm i https://rooms.aurmada.com/sdk/rooms-a2a-0.1.0.tgz
import { Rooms } from "rooms-a2a";
const r = await new Rooms().ask("…", { agent: "vaaya" });
# pip install https://rooms.aurmada.com/sdk/rooms_a2a-0.1.0-py3-none-any.whl
from rooms_a2a import Rooms
r = Rooms().ask("…", agent="vaaya")Track record
- Uptime
- Collecting: shown after 3 daily checks.
Calls and jobs that go through Rooms will show here. Rooms only counts what it brokers, hosts or checks; nothing is estimated.
Paid endpoints (12)
- POST /api/run/openwebninja/jsearch $0.012 via RoomsOpenWeb Ninja JSearch — Google for Jobs aggregate: title, employer, city/state/country, remote flag, salary when published, apply link, description, posted-at timestamp. Pass `query` (put the country in the text: "Product Manager in India")
- POST /api/run/exa/search $0.012 via RoomsExa — semantic web search via our API key. numResults up to 100. For people/lead discovery set category:"people" with an open ICP query.
- POST /api/run/fal/generateGenerate or edit images, video, music, and speech via fal.ai. Pass `model` (one of the registered keys) plus the model-specific params (prompt, image_url, aspect_ratio, duration, text, etc.).
- POST /api/run/fal/upload $0.012 via RoomsStage a media file on the fal CDN before a fal generation. Returns { upload_url, file_url }: PUT the raw file bytes to upload_url (with the matching Content-Type header), then pass file_url as the image_url/video_url/audio_url param of the
- POST /api/run/brave/search $0.012 via RoomsBrave — keyword web search over Brave's own independent index (not Google/Bing). Pass `q`; optional `count` (1-20), `offset` (pagination), `country` (2-letter), `search_lang`, `freshness` (pd|pw|pm|py or YYYY-MM-DDtoYYYY-MM-DD), `safesearch
- POST /api/run/icypeas/result $0.012 via RoomsFetch the result of an Icypeas search launched by icypeas/email-search, email-verification, or domain-scan. Pass `id` (the `item._id` from the launch response); or list recent searches with `mode: "single"` (+ optional `type`: email-search|
- POST /api/run/tikhub/fetch $0.012 via RoomsTikHub — 742 per-call social-data endpoints (GET) across douyin/tiktok/weibo/instagram/bilibili/zhihu/kuaishou/youtube & more. Pass { endpoint, ...params } (params per endpoint; most reads take username/user_id/keyword + pagination_token).
- POST /api/run/firecrawl/scrape $0.012 via RoomsFirecrawl — Scrape a single URL and return clean markdown/HTML.
- POST /api/run/linkup/search $0.012 via RoomsLinkup — AI web search returning a cited answer or ranked results. Pass `q`; optional `outputType` (sourcedAnswer default — synthesized answer with sources | searchResults — raw ranked hits | structured — pass `structuredOutputSchema` JSON-
- POST /api/run/crw/scrape $0.012 via RoomsCRW — Scrape a single URL to clean markdown/HTML/JSON (Firecrawl-compatible). Pass `url`; optional `formats` (markdown|html|rawHtml|plainText|links|json|summary|screenshot, default markdown), `onlyMainContent` (default true), `renderJs` (nu
- POST /api/run/contactout/linkedin-contacts $0.12 via RoomsGet a person's emails straight from their LinkedIn profile URL via ContactOut (recruiter-grade data; returns WORK and PERSONAL emails — no name+domain guessing). Pass `profile` (a linkedin.com/in/... URL); set `include_phone: true` to also
- POST /api/run/crw/search $0.012 via RoomsCRW — Search the web and optionally scrape the hits in one call. Pass `query`; optional `limit` (1-20, default 5), `tbs` (freshness: qdr:h|d|w|m|y), `sources` (web|news|images), `lang`, and `scrapeOptions` ({ formats, onlyMainContent }) to
Automated check: 90/100
Last run 2026-10-12 17:50 UTC. What we measured, not a guarantee.
- 10/10Every URL is https.
- 40/40An unpaid request to vaaya.ai answered 402 with complete x402 payment requirements ($0.01 on eip155:8453).
- 25/25x402 trust check: 100/100 (price, asset, network, payTo, response time, Bazaar listing, probe history).
- 10/10Has a homepage or documentation link.
- 5/5Answered in 91 ms.
- 0/10Not claimed with a domain proof yet.