79trust / 100
Chat Completions
by Private LLM Inference in AI models & inference
x402 APIPassing, checked 15 min ago
Privacy-first chat API: prompts run on a local open-weight model on dedicated hardware - your data is never forwarded to OpenAI/Anthropic or any third-party LLM cloud. OpenAI-compatible chat completions: summarize, draft, extract, translate, code, answer questions. Send a messages array, get chat.completion JSON. Pay per call in USDC on Base (x402), no API key or account. Tiers by output cap: quick 4,096 / long 8,192 / extended 32,768 tokens. Free trial: POST /v1/trial.
POST https://api.erb-llm.com/v1/chat/completions
Last 30 days
All checks passedSome failedAll failedNot checked
- Uptime
- 100%
- Response time
- 659 ms typical, 797 ms slowest 5%
- Last check
- 15 min ago
- Next check
- in 12 min
How to call it
# See the payment challenge (nothing is charged)
curl -i -X POST "https://api.erb-llm.com/v1/chat/completions" \
-H "content-type: application/json" \
-d '{"messages":[{"content":"You are a helpful assistant.","role":"system"},{"content":"Reply with exactly one word: hello","role":"user"}],"model":"qwen/qwen3.8-27b","temperature":0.2}'import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";
const client = new x402Client().register(
"eip155:8453",
new ExactEvmScheme(privateKeyToAccount(process.env.AGENT_KEY)),
);
const pay = wrapFetchWithPayment(fetch, client);
// Not sure it's safe to pay? Preflight it first for $0.005:
// GET https://toolvet.app/api/v1/check?url=https%3A%2F%2Fapi.erb-llm.com%2Fv1%2Fchat%2Fcompletions
const res = await pay("https://api.erb-llm.com/v1/chat/completions", {
method: "POST",
headers: { "content-type": "application/json" },
body: JSON.stringify({"messages":[{"content":"You are a helpful assistant.","role":"system"},{"content":"Reply with exactly one word: hello","role":"user"}],"model":"qwen/qwen3.8-27b","temperature":0.2}),
});
console.log(await res.json());Example input
{
"messages": [
{
"content": "You are a helpful assistant.",
"role": "system"
},
{
"content": "Reply with exactly one word: hello",
"role": "user"
}
],
"model": "qwen/qwen3.8-27b",
"temperature": 0.2
}Example output
{
"choices": [
{
"finish_reason": "stop",
"index": 0,
"message": {
"content": "hello",
"role": "assistant"
}
}
],
"id": "chatcmpl-abc123",
"model": "qwen/qwen3.8-27b",
"object": "chat.completion",
"usage": {
"completion_tokens": 1,
"prompt_tokens": 30,
"total_tokens": 31
},
"x402": {
"charged": "$0.001",
"inference_ms": 1830,
"output_cap": 4096,
"tier": "quick",
"tokens_out": 1
}
}Security scan
- No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.
Recent checks
| When | Result | HTTP | Time | Price |
|---|---|---|---|---|
| 15 min ago | Passed | 402 | 614 ms | $0.001 |
| 4 h ago | Passed | 402 | 636 ms | $0.001 |
| 7 h ago | Passed | 402 | 560 ms | $0.001 |
| 11 h ago | Passed | 402 | 736 ms | $0.001 |
| 14 h ago | Passed | 402 | 825 ms | $0.001 |
| 18 h ago | Passed | 402 | 659 ms | $0.001 |
| 22 h ago | Passed | 402 | 768 ms | $0.001 |
| 25 h ago | Passed | 402 | 679 ms | $0.001 |
| 30 h ago | Passed | 402 | 636 ms | $0.001 |
| 33 h ago | Passed | 402 | 705 ms | $0.001 |
| 36 h ago | Passed | 402 | 577 ms | $0.001 |
| 41 h ago | Passed | 402 | 797 ms | $0.001 |