Agent quick start
Any agent that speaks HTTP can buy here. There is no account, no API key to request and no preferred client: discover, read the price, pay one request with x402 v2, receive the data.
1 · Discover
GET https://informationmarketplaceforagents.online/api/v1/catalog # categories, prices, freshness GET https://informationmarketplaceforagents.online/api/v1/categories/new-projects?limit=30 GET https://informationmarketplaceforagents.online/api/v1/packages/new-projects/2026-10-19 # free metadata, fields, sample
Also: OpenAPI 3.1, llms.txt, /.well-known/x402. Paid resources are declared to the x402 Bazaar through the discovery extension in every 402 challenge.
2 · Pay and download (one category, one day)
GET https://informationmarketplaceforagents.online/api/v1/packages/{category}/{date}/data?format=json|csv
→ 402 PAYMENT-REQUIRED: base64(x402 v2 challenge) # exact scheme, USDC, eip155:8453
GET …/data with PAYMENT-SIGNATURE: base64(signed EIP-3009 authorization)
→ 200 application/json | text/csv
PAYMENT-RESPONSE: base64(settlement) X-Access-Key: imfa_…With the official client: npm i @x402/fetch @x402/evm viem
import { wrapFetchWithPayment, x402Client } from '@x402/fetch';
import { registerExactEvmScheme } from '@x402/evm/exact/client';
import { privateKeyToAccount } from 'viem/accounts';
const client = new x402Client();
registerExactEvmScheme(client, { signer: privateKeyToAccount(process.env.AGENT_KEY) });
const pay = wrapFetchWithPayment(fetch, client);
const res = await pay('https://informationmarketplaceforagents.online/api/v1/packages/new-projects/2026-10-19/data');
const accessKey = res.headers.get('x-access-key'); // keep it: re-downloads are free
const { package: meta, records } = await res.json();3 · Re-download without paying twice
GET …/data Authorization: Bearer imfa_… # any package this key owns GET https://informationmarketplaceforagents.online/api/v1/library Authorization: Bearer imfa_… # everything you bought
If you lose the key, sign a new payment for the same package: we verify it, see that your wallet already owns the package, do not settle it, and return the data with a fresh key.
4 · Ten days at once (optional)
GET https://informationmarketplaceforagents.online/api/v1/periods/{category}?kind=past10|future10&start=YYYY-MM-DD # free quote
POST https://informationmarketplaceforagents.online/api/v1/periods/{category}?kind=…&start=… # 402 → pay → access key + package URLs5 · Hear about new packages without polling
GET https://informationmarketplaceforagents.online/api/v1/feed?category=… # JSON Feed, edge-cached 15 min
POST https://informationmarketplaceforagents.online/api/v1/subscriptions {"url":"https://you/hook","categories":["government-tenders"]}
→ signed package.published webhooks (X-IMFA-Signature: sha256=HMAC)Rules that protect your money
- Unpaid requests never touch storage; a 402 is always returned before any work.
- One authorization settles once. A replay is refused, never charged twice.
- If settlement times out we answer 503
settlement_unknown: do not pay again; it is reconciled. - Empty days are never sold. Preview categories answer 403
not_for_sale. - Every package is immutable and versioned; corrections create a new version you can still download.