> ## Documentation Index
> Fetch the complete documentation index at: https://docs.arouter.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# For Providers

> Integrate your models and endpoints with ARouter to reach developers using the unified API.

ARouter provides developers access to hundreds of models through a single API. If you operate an AI model or inference provider, integrating with ARouter lets you reach developers who are already building on the ARouter API — without requiring them to change their code.

## Why Partner with ARouter

* **Instant developer reach** — Developers using ARouter can access your models immediately without signing up for a separate account or SDK
* **Zero-friction switching** — Developers can try your model by changing a single string (`model: "yourprovider/your-model"`)
* **Traffic growth** — Your models appear in the ARouter model catalog and are accessible via the unified `/v1/models` endpoint
* **Transparent pricing** — You set your prices; ARouter reflects them accurately to end users

***

## Integration Requirements

To integrate with ARouter, your API must provide:

### 1. OpenAI-Compatible Endpoints

ARouter routes requests using the OpenAI API format. Your endpoint should accept:

```
POST /v1/chat/completions
```

With standard OpenAI request/response format including streaming via Server-Sent Events (SSE).

### 2. Model IDs

Each model you expose should have a unique, stable model ID. ARouter uses the `provider/model` convention:

```
yourprovider/your-model-name
```

### 3. Usage Reporting

Your response must include the `usage` object with accurate token counts:

```json theme={null}
{
  "usage": {
    "prompt_tokens": 100,
    "completion_tokens": 50,
    "total_tokens": 150
  }
}
```

***

## What ARouter Handles

Once integrated, ARouter handles the following transparently for your users:

| Responsibility             | ARouter                                   | Your API                  |
| -------------------------- | ----------------------------------------- | ------------------------- |
| API key management         | Routes requests with injected credentials | Validates credentials     |
| Provider health monitoring | Circuit breaker + key pool health checks  | Responds to requests      |
| Rate limiting              | Tracks per-key and per-user limits        | Enforces your rate limits |
| Usage recording            | Records tokens and cost                   | Returns usage in response |
| Streaming                  | Passes through SSE stream                 | Produces SSE stream       |
| Error normalization        | Standardizes error codes                  | Returns native errors     |

***

## Model Metadata

ARouter exposes rich model metadata to developers via the `/v1/models` endpoint. For each model you provide, you can supply:

```json theme={null}
{
  "id": "yourprovider/your-model",
  "name": "Your Model Name",
  "description": "A brief description of capabilities.",
  "context_length": 128000,
  "architecture": {
    "input_modalities": ["text", "image"],
    "output_modalities": ["text"],
    "tokenizer": "cl100k_base",
    "instruct_type": "chatml"
  },
  "pricing": {
    "prompt": "0.000002",
    "completion": "0.000006"
  },
  "supported_parameters": ["tools", "temperature", "max_tokens", "structured_outputs"]
}
```

***

## Supported Endpoint Types

| Endpoint Type           | Description                                       |
| ----------------------- | ------------------------------------------------- |
| OpenAI Chat Completions | Standard chat with streaming                      |
| OpenAI Embeddings       | Text embeddings via `/v1/embeddings`              |
| Anthropic Messages      | Native Anthropic message format                   |
| Gemini GenerateContent  | Native Gemini format                              |
| Custom endpoints        | Via the Provider Proxy (`/{yourprovider}/{path}`) |

***

## Provider Proxy

Developers can also send requests directly to your API through ARouter's provider proxy, bypassing the model-routing layer entirely:

```
POST /{yourprovider}/v1/chat/completions
```

This is useful for developers who want to use your native API format while still benefiting from ARouter's key management and billing.

***

## Getting Started

To integrate your models with ARouter:

1. **Contact us** at [providers@arouter.ai](mailto:providers@arouter.ai) with your API documentation and model catalog
2. **Provide credentials** — API keys or OAuth credentials for ARouter to use
3. **Review model metadata** — Confirm model IDs, pricing, context lengths, and supported parameters
4. **Test integration** — ARouter team validates routing and response format compatibility
5. **Go live** — Your models appear in the ARouter catalog and are accessible immediately

***

## Data Handling

ARouter respects your data policies:

* Request/response data is **not stored by default** — see [Data Collection](/en/guides/privacy/data-collection)
* You can specify whether your endpoints support **Zero Data Retention (ZDR)**
* Developers can opt into or out of data collection per request

***

## Pricing and Revenue

ARouter reflects your pricing accurately to developers. You set the per-token prices; ARouter adds no markup for standard routing.

Developers are billed by ARouter and you are compensated according to your agreed rate. Contact [providers@arouter.ai](mailto:providers@arouter.ai) for commercial terms.
