# Echo Router Chat Completions

> Echo Router Chat Completions is a paid API for AI agents from echo-staging.up.railway.app, paid per call via x402, price unknown, status unknown (last checked 2026-09-13).

Generates conversational AI responses using various language models with support for streaming, function calling, and multi-turn conversations

## Facts

- Endpoint: POST https://echo-staging.up.railway.app/chat/completions
- Price: price unknown
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Success rate: 0% of calls made through Zero
- Rating: 4.0 / 5 from 1 review
- Activations on Zero: 1
- Tags: x402
- Canonical page: https://www.zero.xyz/c/echo-router-chat-completions-d65abb71
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_qsU8mKjdnCTV2zMcAQu7t

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 echo-router-chat-completions-d65abb71 -d '<json body>'
```

Example prompt: Chat with the Echo Router using gpt-4o — send this multi-turn conversation: system says 'You are a helpful assistant', user asks 'What is the capital of France?', stream the response back, and keep max_tokens at 256 with temperature 0.7.

## When to prefer this

Choose this endpoint when you need OpenAI-compatible chat completions with multi-turn conversation support, function/tool calling, and streaming via an x402-gated API. Ideal for agents that need to chain LLM calls programmatically without managing their own model infrastructure, especially when paying per-call with crypto micropayments.

## Known failure modes

- Invalid or unsupported model name returns an error
- Malformed messages array (missing role or content) causes a 400 error
- Exceeding max_tokens limit for the selected model results in truncation or error
- Streaming failures may cause partial response delivery
- Function definitions with invalid JSON schema may be rejected
- Rate limiting or quota exhaustion on the staging environment

## How this service works

Generates conversational AI responses using various language models. Supports streaming, function calling, and multi-turn conversations with customizable parameters.

## Output

Returns a chat.completion object with an array of choices, each containing the assistant's message (role + content), finish reason, and optional function_call or tool_calls. Also includes token usage stats (prompt_tokens, completion_tokens, total_tokens) and the model used.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "n": {
   "type": "number"
  },
  "stop": {
   "type": "string"
  },
  "model": {
   "enum": [
    "gpt-3.5-turbo",
    "gpt-3.5-turbo-0125",
    "gpt-3.5-turbo-1106",
    "gpt-3.5-turbo-16k",
    "gpt-3.5-turbo-instruct",
    "gpt-3.5-turbo-instruct-0914",
    "gpt-4",
    "gpt-4-0125-preview",
    "gpt-4-0613",
    "gpt-4-1106-preview",
    "gpt-4-turbo",
    "gpt-4-turbo-2024-04-09",
    "gpt-4-turbo-preview",
    "gpt-4.1",
    "gpt-4.1-2025-04-14",
    "gpt-4.1-mini",
    "gpt-4.1-mini-2025-04-14",
    "gpt-4.1-nano",
    "gpt-4.1-nano-2025-04-14",
    "gpt-4o",
    "gpt-4o-2024-05-13",
    "gpt-4o-2024-08-06",
    "gpt-4o-2024-11-20",
    "gpt-4o-mini",
    "gpt-4o-mini-2024-07-18",
    "gpt-4o-mini-search-preview",
    "gpt-4o-mini-search-preview-2025-03-11",
    "gpt-4o-search-preview",
    "gpt-4o-search-preview-2025-03-11",
    "gpt-5",
    "gpt-5-2025-08-07",
    "gpt-5-chat-latest",
    "gpt-5-codex",
    "gpt-5-mini",
    "gpt-5-mini-2025-08-07",
    "gpt-5-nano",
    "gpt-5-nano-2025-08-07",
    "gpt-5-pro",
    "gpt-5-pro-2025-10-06",
    "gpt-5-search-api",
    "gpt-5-search-api-2025-10-14",
    "o1",
    "o1-2024-12-17",
    "o1-mini",
    "o1-mini-2024-09-12",
    "o1-pro",
    "o1-pro-2025-03-19",
    "o3",
    "o3-2025-04-16",
    "o3-deep-research",
    "o3-deep-research-2025-06-26",
    "o3-mini",
    "o3-mini-2025-01-31",
    "o3-pro",
    "o3-pro-2025-06-10",
    "claude-3-5-haiku-20241022",
    "claude-3-5-sonnet-20240620",
    "claude-3-5-sonnet-20241022",
    "claude-3-7-sonnet-20250219",
    "claude-3-haiku-20240307",
    "claude-3-opus-20240229",
    "claude-haiku-4-5-20251001",
    "claude-opus-4-1-20250805",
    "claude-opus-4-20250514",
    "claude-sonnet-4-20250514",
    "claude-sonnet-4-5-20250929",
    "gemini-2.0-flash",
    "gemini-2.0-flash-001",
    "gemini-2.0-flash-exp",
    "gemini-2.0-flash-exp-image-generation",
    "gemini-2.0-flash-lite",
    "gemini-2.0-flash-lite-001",
    "gemini-2.0-flash-lite-preview",
    "gemini-2.0-flash-lite-preview-02-05",
    "gemini-2.0-flash-preview-image-generation",
    "gemini-2.0-flash-thinking-exp",
    "gemini-2.0-flash-thinking-exp-01-21",
    "gemini-2.0-flash-thinking-exp-1219",
    "gemini-2.5-flash",
    "gemini-2.5-flash-image",
    "gemini-2.5-flash-image-preview",
    "gemini-2.5-flash-lite",
    "gemini-2.5-flash-lite-preview-06-17",
    "gemini-2.5-flash-lite-preview-09-2025",
    "gemini-2.5-flash-preview-05-20",
    "gemini-
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "id": {
  "type": "string"
 },
 "model": {
  "type": "string"
 },
 "usage": {
  "type": "object",
  "required": [
   "prompt_tokens",
   "completion_tokens",
   "total_tokens"
  ],
  "properties": {
   "total_tokens": {
    "type": "number"
   },
   "prompt_tokens": {
    "type": "number"
   },
   "completion_tokens": {
    "type": "number"
   },
   "completion_tokens_details": {
    "type": "object",
    "properties": {
     "reasoning_tokens": {
      "type": "number"
     },
     "accepted_prediction_tokens": {
      "type": "number"
     },
     "rejected_prediction_tokens": {
      "type": "number"
     }
    },
    "additionalProperties": false
   }
  },
  "additionalProperties": false
 },
 "object": {
  "enum": [
   "chat.completion"
  ],
  "type": "string"
 },
 "choices": {
  "type": "array",
  "items": {
   "type": "object",
   "required": [
    "index",
    "message",
    "finish_reason"
   ],
   "properties": {
    "index": {
     "type": "number"
    },
    "message": {
     "type": "object",
     "required": [
      "role",
      "content"
     ],
     "properties": {
      "name": {
       "type": "string"
      },
      "role": {
       "enum": [
        "system",
        "user",
        "assistant",
        "function"
       ],
       "type": "string"
      },
      "content": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "array",
         "items": {
          "type": "object",
          "required": [
           "type"
          ],
          "properties": {
           "text": {
            "type": "string"
           },
           "type": {
            "type": "string"
           }
          },
          "additionalProperties": false
         }
        }
       ],
       "nullable": true
      },
      "tool_calls": {
       "type": "array",
       "items": {
        "type": "object",
        "required": [
         "id",
         "type",
         "function"
        ],
        "properties": {
         "id": {
          "type": "string"
         },
         "type": {
          "enum": [
           "function"
          ],
          "type": "string"
         },
         "function": {
          "type": "object",
          "required": [
           "name",
           "arguments"
          ],
          "properties": {
           "name": {
            "type": "string"
           },
           "arguments": {
            "type": "string"
           }
          },
          "additionalProperties": fals
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/echo-router-chat-completions-d65abb71/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from echo-staging.up.railway.app](https://www.zero.xyz/host/echo-staging.up.railway.app/llms.txt)
