Status reports service liveness, not model availability or payment success.
Start here / One tool
Ask. Get help. Continue.
The only tool call your model needs
ask_expert({"question":"Check my solution. Here are the task, code, and error: …"})
Have an access token?
Connect to the endpoint above with your token in the client’s Authorization header. You are not charged; our provider credits are used. Never put a token in your question.
Set ASK_EXPERT_TOKEN through your host’s secret manager first. Invalid tokens stop the request; they never trigger a payment.
Prefer x402?
Use the included expert bridge with a dedicated wallet and explicit per-call and total spending limits. The bridge handles payment and recovery; your model only sees the question and answer.
A plain MCP connection cannot pay by itself. The owner configures the wallet once, outside the model’s context. No wallet connects from this website.
The router selects a configured expert with recent healthy observations. It can try one fallback before issuing an invoice. Unknown payment outcomes never trigger a new charge. No expert available? You receive a clear error, not a payment request.
Browse configured models, inspect rates, and test an actual text response. A configured model may be unavailable or out of credits; API discovery only lists models with recent healthy observations.
Loading the model catalog…
Status metadata refreshes every 30 seconds while this page is visible, without running tests or payments. Reset times are provider estimates; a reset being due does not confirm recovery. Times use your local timezone.
Configured model status
Model
Status
Last checked
Reset / remaining time
Use arrow keys to browse. IDs are copied exactly as published.
Selected model
No text-answer test yet.
Free for visitors. Sends only “Reply with exactly OK.”, with a 64-token limit. Uses our provider credits. Maximum 20 new public tests per rolling hour across all visitors; results cached for 60 seconds. Empty responses do not count as a successful answer.
Rates are USDC per million tokens, plus the model’s request fee. The published authorization ceiling is 1 USDC per request, not the price. Review the exact invoice before signing.
02 / Advanced access
Choose a model yourself.
Connect Codex or your MCP client
Add the remote server for free model discovery and quotes.
Connecting does not enable payment. Paid chat requires an x402-aware signer for direct Base USDC, including preservation of the exact invoice resource. A generic MCP client cannot pay on its own.
Choose a model and inspect its price
Call list_models, then quote with an exact model ID. Both are free. A quote is a non-payable estimate; it does not generate an answer.
An unsigned chat request consumes provider compute to prepare and meter an answer. It does not charge the buyer or release the answer. Expect HTTP 402 with an exact invoice in PAYMENT-REQUIRED.
Unsigned HTTP example — run only when ready
Select a model above, or replace the placeholder with an ID from the current catalog. This Bash/zsh example needs Node.js to create a private UUID. Keep the same key and body for the paid retry and recovery.
# Run once per NEW request. Keep this shell open.
# Keep the key and returned invoice private.
router_request_id="$(node -p 'crypto.randomUUID()')"
curl -sS -i https://router.paymentrequired.com/v1/chat/completions \
-H 'Content-Type: application/json' \
-H "Idempotency-Key: $router_request_id" \
--data-raw '{"model":"MODEL_ID_FROM_CATALOG","messages":[{"role":"user","content":"Say hello."}],"max_tokens":64,"stream":false}'
This command has no payment signature. Do not use unsigned chat as a health check. Running the whole snippet again creates a new request key.
Have your wallet client verify the invoice’s amount, Base network, USDC asset, recipient and expiry. Approve the exact amount, then retry the identical request with the signed payment and the private invoice resource intact.
03 / Payment & recovery
An invoice for actual usage.
1Prepare
The provider generates an answer.
2Invoice
Actual tokens determine the amount.
3Approve
Your wallet signs the exact invoice.
4Paid retry
Settlement releases the answer and receipt.
Direct USDC on Base
x402 v2 exact, EIP-3009, settled through PayAI. The 1 USDC ceiling limits the invoice; your wallet signs the actual amount. No Gateway deposit. No Lightning route.
Paid responses are buffered JSON, not streamed. The answer is prepared before you approve payment.
Keep your recovery key private
Use a fresh UUID for each new request: Idempotency-Key over HTTP, or request_id over MCP. Preserve it with the exact model, request body and private invoice resource.
A confirmed completed request can be recovered with its original key and body without a new payment. Payment and answer delivery are separate operations.
One tool: ask_expert. Required argument: question. Native clients may supply a private UUIDv4 request_id; the bridge manages it automatically. Token access or the existing x402 payment flow. Answers request at most 2,048 output tokens.
POST/mcp
Stateless Streamable HTTP transport with JSON responses. list_models returns the catalog; quote returns non-payable pricing; chat prepares an invoice or completes a paid request.
Chat arguments: exact model, text messages with system, user or assistant roles, optional max_tokens and private request_id. Signed payments travel in params._meta["x402/payment"]. An unpaid invoice is an isError tool result.
Free catalog. Use data[].id and each model’s payment.pricing, payment requirements and limits. Missing pricing means “not published,” not free inference.
POST/v1/chat/completions
OpenAI-style JSON with an explicit model and messages. Use stream: false; paid output is buffered. Additional options depend on the upstream model.
Unsigned preparation returns 402 and a base64-encoded PAYMENT-REQUIRED header. The signed retry uses PAYMENT-SIGNATURE and the same private Idempotency-Key. Preserve the invoice URL in the signed payload’s resource. A successful response includes the answer, usage and PAYMENT-RESPONSE receipt.