# Pay per call with x402

> This option is for autonomous agents that hold a wallet. Most people should use an [API key](/docs/authentication) or the [MCP server](/docs/mcp).

[x402](https://x402.org) lets a client pay for one HTTP request at a time. Veqen exposes the single checks at these URLs:

| Endpoint | Query parameter |
|---|---|
| `GET https://veqen-app.com/x402/v1/email/check` | `email` |
| `GET https://veqen-app.com/x402/v1/ip/check` | `ip` |
| `GET https://veqen-app.com/x402/v1/phone/check` | `phone` (and optional `country`) |
| `GET https://veqen-app.com/x402/v1/domain/check` | `domain` |

## How it works

1. Call the endpoint with no payment. You get **HTTP 402** with the price, the network (Base) and the address to pay, in the standard x402 format.
2. Your x402 client signs a USDC payment and repeats the request with the payment header.
3. The payment settles and you get the normal JSON result.

Any x402 client library handles steps 1–3 automatically. The endpoints are also listed in the x402 Bazaar, so agents can discover them.

The response body is identical to the REST API's. If x402 isn't enabled on this server, these URLs return 404.
