# OpenRouter on looot

OpenRouter gives your agent 9 jobs through looot: completion llm chat, generate llm image, list llm models and 6 more jobs. 9 endpoints run today, some of them free.

## At a glance

- Category: Other
- Access: Runs on looot's platform key: you do not need your own OpenRouter account
- Price: some free

## Choose it when

- You need to completion llm chat: OpenRouter is the only provider on looot that runs this job today.
- You need to generate llm image: OpenRouter is the only provider on looot that runs this job today.
- You need to list llm models: OpenRouter is the only provider on looot that runs this job today.
- You need to download llm video: OpenRouter is the only provider on looot that runs this job today.
- You need to status llm video: OpenRouter is the only provider on looot that runs this job today.

## Endpoints and jobs

| Endpoint | Job | Price | Runs (30 days) | Benchmark |
|---|---|---|---|---|
| [Chat completion](/public-catalog/openrouter-chat) | `llm.chat.completion` | $0.000006 per result | 99.2% of 1,371 runs without an error, median 1.6 s | no benchmark yet |
| [Generate image](/public-catalog/openrouter-image) | `llm.image.generate` | $1.50 per result | 97% of 133 runs without an error, median 25.1 s | no benchmark yet |
| [List models](/public-catalog/openrouter-models) | `llm.models.list` | free | 100% of 21 runs without an error, median 560 ms | no benchmark yet |
| [Download generated video](/public-catalog/openrouter-video-content) | `llm.video.download` | free | not enough runs to rank | no benchmark yet |
| [Video job status](/public-catalog/openrouter-video-status) | `llm.video.status` | free | not enough runs to rank | no benchmark yet |
| [Create embeddings](/public-catalog/openrouter-embeddings) | `llm.embeddings.create` | $0.000001 per result | not enough runs to rank | no benchmark yet |
| [Speech to text](/public-catalog/openrouter-stt) | `llm.speech.transcribe` | $0.000001 per result | not enough runs to rank | no benchmark yet |
| [Text to speech](/public-catalog/openrouter-tts) | `llm.speech.synthesize` | $0.000212 per result | not enough runs to rank | no benchmark yet |
| [Generate video](/public-catalog/openrouter-video) | `llm.video.generate` | $0.648 per result | not enough runs to rank | no benchmark yet |

## How the numbers are measured

Run numbers are looot's own runs of each endpoint over the last 30 days: the share that completed without an error, and the median time to answer. An endpoint with fewer than 10 runs in that window shows "not enough runs to rank" and is never ranked. Prices are what looot charges per call or per result, fee included, read from the live catalog; you prepay credit and each call is charged when it runs.

Read 2026-11-10 23:22 UTC.

## For agents

The minimal request for Chat completion (`openrouter-chat`). Replace each <placeholder> with your value and send a new idempotency key per run.

### MCP

```json
{
  "endpointId": "openrouter-chat",
  "input": {
    "model": "<model>",
    "messages": "<messages>",
    "max_tokens": "<max_tokens>"
  },
  "idempotencyKey": "<a new id per run>"
}
```

### REST

```bash
curl -X POST https://api.looot.ai/v1/runs \
  -H "Authorization: Bearer $LOOOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"endpointId":"openrouter-chat","input":{"model":"<model>","messages":"<messages>","max_tokens":"<max_tokens>"},"idempotencyKey":"<a new id per run>"}'
```

### CLI

```bash
looot run openrouter-chat --input '{"model":"<model>","messages":"<messages>","max_tokens":"<max_tokens>"}'
```
