<!-- Generated from https://co-relayer.com/agents at build time. Do not edit. -->

For AI agents

# Machines don’t buy gas. They buy outcomes.
Give your agent USDC and a MultiversX key. It finds CoRelayer, picks a plan, pays in USDC and starts sending. No account and no dashboard. Its plan covers the network fee.
Read the agent quickstart See agent plans
Or tell your agent: `Read https://co-relayer.com/llms.txt and set up gasless MultiversX transactions with CoRelayer.`

01 · Why agents

## Why agents use CoRelayer

-
### One balance, in USDC.
Your agent pays in USDC. Its plan covers the network fee on every transaction we send for it.

-
### Pays like software.
Buy over HTTP 402, or sign the purchase itself. No account, no card, no person.

-
### Limits it can’t exceed.
The price ceilings your agent signs are enforced by the contract, not by us.

-
### Made for metered use.
Agent Metered has no monthly fee. Pay per transaction from the USDC you deposit.

02 · Start to finish

## Four steps, start to finish
Paths and fields come from the OpenAPI document. Your agent can read all of it first.

# buy a plan, no account
POST /v1/x402/purchase
402 Payment Required
PAYMENT-SIGNATURE: USDC, signed once
200 OK · plan active
# send a transaction
POST /v1/relay
200 OK · fee covered by the plan
Illustration: an agent buys a plan over HTTP 402, then sends a transaction.

-
### Discover.
Three files on this site, no key needed. They say what it costs, which chain it’s on and where the contract lives. Pin the chain id before you sign anything.

discover.http

Discovery requests ` # 1. discover: three files, no key needed
GET /llms.txt
GET /pricing.json
GET /.well-known/corelayer.json
# -> prices, chain id, contract address, API host `

-
### Price.
Plans and prices come back as data, so your agent can pick a plan for its own traffic. A quote gives the exact amount and the ceiling to sign.

price.http

Pricing requests ` # 2. price
GET {apiBase}/v1/pricing
# -> { tiers, tariff, relayUnit }

# the plan quote
POST {apiBase}/v1/subscribe/prepare
{ address, tierId, months, payWith, gasless }
# -> { quote: { quoteId, maxPrice }, transaction }

# the price of one transaction
POST {apiBase}/v1/quote
{ tx }
# -> { ru, priceMicroUsdc } `

-
### Pay.
Inside an HTTP 402 exchange, or by signing the contract call yourself. Same purchase, same price, either way. No account to create.

pay.http

Purchase requests ` # 3. pay: over x402, or sign the call yourself
POST {apiBase}/v1/x402/purchase
{ tierId, months, payer }
# -> 402 Payment Required names the payment

# or sign the transaction that /v1/subscribe/prepare returns
# and relay it (step 4) `

-
### Relay.
Ask for a relayer, put its address in the transaction, sign once and submit. Running many agents? Add your platform’s sponsor key (`X-Api-Key`) and your account pays for all of them.

relay.http

Relay requests ` # 4. relay: assign, sign once, submit
POST {apiBase}/v1/relay/assign
{ sender, proof }
# -> { relayer, shard, lease }

# set tx.relayer, then sign the transaction ONE time
POST {apiBase}/v1/relay
{ tx, lease, intentKey }
# -> { intentId, txHash, relayer, state }

# the authoritative status of that nonce
GET {apiBase}/v1/intents/{sender}/{nonce}

# many agents: add header X-Api-Key (your sponsor key) `

### The same in code
`{apiBase}` is `https://api.co-relayer.com`. Read it from `/.well-known/corelayer.json` rather than hard-coding it.

Own key Your agent · own key Sponsor key Your platform · sponsor key
send.ts
TypeScript Go Rust Python

Your agent · own key in TypeScript ` import { relayOnce } from '@corelayer/sdk';

type Opts = Parameters<typeof relayOnce>[0];
// The agent's own key: its address and the two things it signs.
type AgentKey = Pick<Opts, 'sender' | 'signProof' | 'signOnce'>;
// The client, the transaction builder and one key per action.
type Job = Pick<Opts, 'client' | 'buildTransaction' | 'intentKey'>;

// Your agent signs once, with its own key. Its plan covers the fee.
export function relayAsAgent(agent: AgentKey, job: Job) {
return relayOnce({ ...job, ...agent });
} `
SDK guide →

03 · Who pays

## Pay for yourself, or for every agent you run

How sponsoring works →

-
### Your agent pays for itself.
Every agent plan. Its own account, plus named wallets with no fee: 1 on Agent Metered, 25 on Agent Pro and 1,000 on Agent Fleet; more at 5 credits each, up to 10,000 per account.
`proof.kind "key"`

-
### Your platform pays for every agent.
Agent Pro and Agent Fleet. One sponsor key on your server covers any agent address, within the contracts you allow and an optional daily limit per agent.
`X-Api-Key`

04 · Plans

## Agent plans

Or buy over x402 → All plans →

-
### Agent Metered

For one agent getting started
No monthly fee
$0.015 per transaction

Pay per transaction from the USDC you deposit

- Your agent + 1 named wallet included

- Buy over HTTP 402, no account needed

- Spends only what you deposit

- Shared relayers, best effort

Start paying per transaction

- Best for platforms

### Agent Pro

For platforms running many agents
$85 per 30 days
$0.0085 per transaction

10,000 transactions included, then $0.012 each with pay-as-you-go

- Sponsor any agent you run + 25 named wallets included

- Shared relayers

- Pay-as-you-go if you turn it on

Choose Agent Pro

- Available on request

### Agent Fleet

For fleets of agents and devices
$650 per 30 days
$0.0065 per transaction

100,000 transactions included, then $0.011 each with pay-as-you-go

- Sponsor any agent you run + 1,000 named wallets included

- Priority lane

- Pay-as-you-go if you turn it on

Talk to us

05 · Spending limits

## Autonomy with boundaries
Let your agent spend without asking, and never more than you allowed.

** The most a purchase may cost
`max_price`

** The most a renewal may cost. Above it, the renewal is skipped.
`max_renew_price`

** The most one extra transaction may cost. Leave it at 0 and there’s no ceiling, so set one.
`max_payg_price`

** The budget for extra transactions. Sending pauses when it’s spent.
`pay-as-you-go budget`

Each limit is part of the transaction your agent signs, so the contract enforces it.

06 · Integrations

## Ways in

-

### x402
Buy a plan or top up credits inside an HTTP 402 exchange.

-

### MCP
Read prices, network status, relayers and your quota as MCP tools.

-

### SDKs
TypeScript, Go, Rust and Python, with one-signature relaying built in.

-

### Drop-in endpoints
Already on another agent relayer kit? Change one base URL.

- llms.txt

- agents.md

- OpenAPI

- pricing.json

07 · Errors

## When something goes wrong

Every error comes back with a stable code and says whether to retry.

- RESIGN_REQUIRED

- NONCE_IN_FLIGHT

- QUOTA_EXHAUSTED
Errors and retries →

08 · FAQ

## Questions before you start

Does my agent need an account? No. Its wallet is its account.

What does one transaction cost? $0.015 on Agent Metered, less on a plan.

Can my agent overspend? No. It can spend only the USDC it deposited, and you can sign a per-transaction ceiling (max_payg_price).

Can one account pay for many agents? Yes. A sponsor key on Agent Pro or Agent Fleet pays for any agent you run.
How sponsoring works →
How does my agent know it’s the real CoRelayer? It pins the chain id and contract address from /.well-known/corelayer.json. The SDKs can check each relayer against the on-chain list before signing: pass verifyRelayer.
Discovery for agents →

Get started

## Start with the wallet you have

Connect a MultiversX wallet and pay a plan in USDC. Buying your plan is already a gasless transaction.
Get started See agent plans

Or point your agent at https://co-relayer.com /llms.txt
Questions? support@co-relayer.com
