Title: x402 pay-per-call APIs
Source: https://nodely.io/docs/x402/

# x402 pay-per-call APIs

Nodely sells pay-per-call APIs for AI agents at `https://x402.api.nodely.io`. You pay per request with [x402](https://www.x402.org/) in USDC on Algorand mainnet; web search and page scrape also take USDC on Base and Arc. You don’t need an account, a sign-up or an API key.

<a id="how-it-works"></a>

## How it works

1.  Call a paid route.
2.  The API answers **HTTP 402 Payment Required** with the price and where to pay.
3.  Your client signs one USDC payment and sends the same request again with the signed payment attached. Nodely pays the network fee, so you spend only USDC: no ALGO on Algorand, no ETH on Base.
4.  The API answers with the result and a payment receipt.

The official x402 clients handle all of this. [Pricing & payment](https://nodely.io/docs/x402/payment) covers the details and has a client example.

![The x402 payment flow on Algorand, using the web search API as an example: request, 402 offer, signing, retry, result, and who pays what](https://nodely.io/images/x402/x402-flow.gif)

<a id="why-no-api-keys"></a>

## Why no API keys

An agent can find the API, read the price from the 402 response and pay, all without a human. You don’t need a sign-up, a key to rotate or a monthly plan. You pay only for requests that deliver a result.

<a id="apis-and-prices"></a>

## APIs and prices

| API | Route | Price | Pay on |
| --- | --- | --- | --- |
| [Web search](https://nodely.io/docs/x402/search) | `POST` / `GET /v1/search` | 0.0085 USDC per query on Algorand, 0.009 on Base and Arc | Algorand, Base, Arc |
| [Page scrape](https://nodely.io/docs/x402/scrape) | `POST` / `GET /v1/scrape` | 0.011 USDC per page on Algorand, 0.012 on Base and Arc | Algorand, Base, Arc |
| [Algorand DEX prices](https://nodely.io/docs/x402/prices) | `GET /v1/prices/{price,history,pairs,pools,candles}` | 0.001 USDC per call | Algorand |
| [Account value](https://nodely.io/docs/x402/prices#get-v1pricesaccount) | `GET /v1/prices/account` | 0.002 USDC per call | Algorand |
| [NFT image search](https://nodely.io/docs/x402/images) | `GET` / `POST /v1/images/search`, `GET /v1/images/similar/{cid}` | 0.005 USDC per call | Algorand |

A search that returns nothing isn’t charged. A scrape that fails or hits an HTTP error page isn’t charged either, and neither is a price query that finds no data, an account that was never on chain, or an image search that fails or names an unknown CID.

<a id="free-routes"></a>

## Free routes

| Route | What it returns |
| --- | --- |
| [`/v1/search/pricing`](https://x402.api.nodely.io/v1/search/pricing), [`/v1/scrape/pricing`](https://x402.api.nodely.io/v1/scrape/pricing), [`/v1/prices/pricing`](https://x402.api.nodely.io/v1/prices/pricing), [`/v1/images/pricing`](https://x402.api.nodely.io/v1/images/pricing) | Price, asset, networks and receiving address |
| [`/v1/search/health`](https://x402.api.nodely.io/v1/search/health), [`/v1/prices/health`](https://x402.api.nodely.io/v1/prices/health), [`/v1/images/health`](https://x402.api.nodely.io/v1/images/health), [`/health`](https://x402.api.nodely.io/health) | Service health |
| [`/v1/prices/status`](https://x402.api.nodely.io/v1/prices/status) | How far the price dataset is built |
| [`/docs/`](https://x402.api.nodely.io/docs/) | Live, interactive API reference |
| [`/openapi.json`](https://x402.api.nodely.io/openapi.json) | OpenAPI 3.1 description |
| [`/.well-known/x402`](https://x402.api.nodely.io/.well-known/x402), [`/llms.txt`](https://x402.api.nodely.io/llms.txt) | Machine-readable discovery, see [Discovery](https://nodely.io/docs/x402/discovery) |

<a id="try-it"></a>

## Try it

This request shows the 402 payment offer without paying anything:

```bash
curl -si -X POST https://x402.api.nodely.io/v1/search \
  -H 'Content-Type: application/json' \
  -d '{"query":"x402"}'
```
