# agent402.tools Nano Chat Completions

> agent402.tools Nano Chat Completions is a paid API for AI agents from agent402.tools, paid per call via x402, $0.003/call, status unknown (last checked 2026-09-16).

OpenAI-compatible chat completions endpoint using nano-tier models (gpt-4.1-nano, gpt-5-nano, gemini flash-lite, small llama/ministral/qwen, deepseek-chat) priced at $0.003 USDC per call via x402 for high-frequency agent loops

## Facts

- Endpoint: POST https://agent402.tools/v1/nano/chat/completions
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-16
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/agent402-tools-nano-chat-completions-e811d1c5
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_aNpHoejM-6rgjl1hKoTAj

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability agent402-tools-nano-chat-completions-e811d1c5 -d '<json body>'
```

Example prompt: Send this message thread to a nano-tier model — use gpt-4.1-nano — and cap the output at 512 tokens: [{"role":"user","content":"Summarize the key points from this meeting transcript: ..."}]. Pay the $0.003 USDC call fee automatically.

## When to prefer this

Prefer this endpoint when running high-frequency agent loops that need cheap, fast LLM inference and want per-call micropayment billing in USDC via x402 instead of a subscription. Best for orchestration agents that need a drop-in OpenAI-compatible interface with access to multiple nano-tier models (gpt-4.1-nano, gemini flash-lite, deepseek-chat, small llama/qwen) and optionally require zero-data-retention routing for privacy-sensitive payloads.

## Known failure modes

- Payment failure or insufficient USDC balance — x402 payment rejected before inference runs
- Requested model not in nano-tier allowlist — returns error listing valid model IDs
- ZDR flag set but no zero-data-retention provider available for chosen model — walks failover chain or errors
- max_tokens exceeds tier maximum — value is clamped silently
- Malformed messages array — upstream 4xx validation error
- Model provider outage — failover attempted across listed nano models

## How this service works

OpenAI-compatible chat completions, nano tier: gpt-5.6-luna, gpt-5-nano, gemini flash-lite, small llama/ministral/qwen, deepseek-chat - $0.003 per call in USDC over x402, priced for high-frequency agent loops. Same wire format as /v1/chat/completions with loop-sized caps (12k chars in, 768 tokens out). Streaming supported (stream: true). No API key, no signup.

## Output

An OpenAI-compatible chat completion response object containing the assistant's message, finish reason, model used, and token usage statistics — identical wire format to /v1/chat/completions so it can be dropped into any OpenAI SDK.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "zdr": {
   "type": "boolean",
   "description": "Optional - true routes only to zero-data-retention providers (OpenRouter provider.zdr); the only provider preference a caller may set."
  },
  "model": {
   "type": "string",
   "description": "Model id - OpenRouter form (openai/gpt-4o-mini) or bare OpenAI form (gpt-4o-mini). GET /v1/models lists the allowlist per tier. Optional: omit it and the tier serves its documented default (x402.defaultModel on /v1/models), named back in agent402_default_model; the price does not change"
  },
  "tools": {
   "type": "array",
   "description": "Optional - OpenAI function tools {type:\"function\", function:{...}}, or a tool namespace {type:\"namespace\", name, tools:[...]} (flattened into its functions). The pro and premium routes also accept the bounded server tools openrouter:web_search, openrouter:web_fetch and openrouter:datetime with server-owned limits (GET /v1/models lists them); stop_server_tools_when and max_tool_calls are refused. A request with a server tool is never served from the prompt cache."
  },
  "messages": {
   "type": "array",
   "description": "OpenAI chat messages: [{role, content}] - text and image_url content blocks supported"
  },
  "reasoning": {
   "type": "object",
   "description": "Optional - {effort: \"none\"|\"minimal\"|\"low\"|\"medium\"|\"high\"|\"xhigh\"|\"max\", max_tokens?, exclude?, enabled?}. Reasoning tokens count against max_tokens. Omitted: low effort on the budget tiers, the model default on premium. reasoning_effort (string) is accepted as an alias."
  },
  "max_tokens": {
   "type": "number",
   "description": "Output token cap (clamped to the tier maximum)"
  },
  "cache_control": {
   "description": "Optional - prompt caching preference. Default ON ({type:\"ephemeral\"}, 5-minute TTL): repeated prefixes across your turns are served from the provider cache (same price to you). Send false to disable. ttl:\"1h\" is not offered."
  },
  "max_completion_tokens": {
   "type": "integer",
   "description": "Optional - alias of max_tokens (newer OpenAI SDKs send this)."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "id": "gen-…",
  "model": "openai/gpt-4.1-nano",
  "usage": {
   "total_tokens": 13,
   "prompt_tokens": 12,
   "completion_tokens": 1
  },
  "object": "chat.completion",
  "choices": [
   {
    "index": 0,
    "message": {
     "role": "assistant",
     "content": "OK"
    },
    "finish_reason": "stop"
   }
  ],
  "created": 1750000000
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agent402-tools-nano-chat-completions-e811d1c5/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agent402.tools](https://www.zero.xyz/host/agent402.tools/llms.txt)
