Skip to main content
Authentication on this API is one header on every request, REST or MCP.
The value is your own Monid API key. It is not a key we issue. The server takes the header off your request and passes it straight through to Monid on the underlying provider call, so Monid bills your wallet for that call. We never write the key to a log or a database, and there is no separate account or billing relationship with us.
1

Create a Monid account

Sign up at monid.ai.
2

Generate an API key

Get a key from the Monid dashboard.
3

Fund your wallet

Add credit to your Monid wallet. That balance is what individual calls draw against, usually a fraction of a cent each.
4

Send it on every request

Set X-API-KEY on each REST call and each MCP client config.
curl

What a rejected key looks like

An empty, missing, or malformed X-API-KEY header gets a 401 before the request reaches Monid.
A key that is well formed but that Monid itself rejects, revoked or otherwise invalid on Monid’s side, answers the same 401 and the same unauthorized code, once the call reaches Monid.
A key that Monid accepts but whose wallet is empty or blocked answers 402 with {"error": "payment_required", ...}. That is not a bug in your request. Check your Monid wallet balance.

MCP uses the same header

The MCP transport at /mcp (and its alias /api) reads X-API-KEY the same way REST does. Set it as a header on the client’s HTTP transport config. See MCP Server for exact client configs.
Each key is rate limited to 60 requests per minute by default. See Rate limits.