# Ramp Router — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Route OpenAI-compatible AI requests across leading model providers with one endpoint and transparent Ramp base pricing.

**Category:** AI / LLM | **Website:** [router.com](https://router.com) | **Docs:** [docs.router.com](https://docs.router.com)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/ramp-router/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### List models

List every model available to the configured Ramp Router account, including callable IDs, capabilities, context limits, and current base rates.

**Estimated cost:** $0.001 Locus minimum · Ramp base $0

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/ramp-router/models \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Create response

Create a buffered, text-input OpenAI Responses result through Ramp Router with tools and reasoning controls.

**Estimated cost:** Ramp base-rate authorization · UTF-8 input ceiling plus output budget

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `model` | string | Yes | Ramp Router model ID. Availability is key-scoped; call this provider's List models endpoint for active IDs and current rates. Examples: gpt-5.6-luna, gpt-5.6-terra, claude-sonnet-5, accounts/fireworks/models/deepseek-v4-flash, grok-4.6. |
| `input` | string \| array | Yes | Text or OpenAI Responses input items to send to the selected model. |
| `max_output_tokens` | number | No | Positive output-token budget; defaults to 4096 and is capped at 16384. |
| `instructions` | string | No | System or developer guidance for the response. |
| `tools` | array | No | OpenAI-compatible tool definitions available to the model. |
| `reasoning` | object | No | Model-specific reasoning controls such as effort. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/ramp-router/responses \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"<string>","input":"<string | array>","max_output_tokens":"<number>","instructions":"<string>","tools":"<array>","reasoning":"<object>"}'
```

### Chat completion

Run a buffered OpenAI Chat Completions request through the same Ramp model catalog and routing layer.

**Estimated cost:** Ramp base rate · input plus requested output tokens

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `model` | string | Yes | Ramp Router model ID. Availability is key-scoped; call this provider's List models endpoint for active IDs and current rates. Examples: gpt-5.6-luna, gpt-5.6-terra, claude-sonnet-5, accounts/fireworks/models/deepseek-v4-flash, grok-4.6. |
| `messages` | array | Yes | Non-empty OpenAI-compatible chat message array. |
| `max_completion_tokens` | number | No | Positive output-token budget; defaults to 4096 and is capped at 16384. |
| `tools` | array | No | OpenAI-compatible function tool definitions available to the model. |
| `response_format` | object | No | OpenAI-compatible structured output configuration. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/ramp-router/chat \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"<string>","messages":"<array>","max_completion_tokens":"<number>","tools":"<array>","response_format":"<object>"}'
```
