# uRouter > AI inference API. No uRouter markup. Model discovery, key inspection, request accounting and granted reseller controls are available. Deposits, chat completions and streaming are available to enabled accounts during the limited rollout. Accounts without access receive 503 operation_not_enabled before reserving funds. Responses, Messages, embeddings and media generation endpoints are not implemented. Base URL: https://api.urouter.net/v1 Reseller base URL: https://api.urouter.net/control/v1 Use UROUTER_API_KEY from the environment; never embed credentials in source. ## Documentation - [Overview](https://urouter.net/docs): Connect your app, choose a model and make your first request. - [Quickstart](https://urouter.net/docs/quickstart): Connect to the API and inspect a model. - [Authentication](https://urouter.net/docs/authentication): Use an inference key for /v1 and a control key for /control/v1. - [SDK setup](https://urouter.net/docs/guides): Use the API hostname, not the website URL. - [Claude Code setup](https://urouter.net/docs/guides/claude-code): Check compatibility before connecting Claude Code. - [Cursor setup](https://urouter.net/docs/guides/cursor): Configure Cursor’s custom OpenAI endpoint. - [OpenCode setup](https://urouter.net/docs/guides/opencode): Add uRouter as an OpenAI-compatible connection. - [Endpoints](https://urouter.net/docs/api): The published HTTP surface and its current availability. - [Models](https://urouter.net/docs/models): Discover IDs, inputs, options, prices and capacity. - [Prices & capacity](https://urouter.net/docs/pricing): Read the unit before calculating a cost. - [Request accounting](https://urouter.net/docs/requests): Look up a request before deciding whether to retry it. - [Errors & retries](https://urouter.net/docs/errors): Branch on error.code, not the message. - [Chat completions](https://urouter.net/docs/chat-completions): Request fields, message roles and response shape. - [Streaming](https://urouter.net/docs/streaming): Consume events and handle an incomplete response. - [Parameters & tools](https://urouter.net/docs/parameters): Function calls, JSON output and reasoning settings. - [Images & media](https://urouter.net/docs/media): Image input is different from media generation. - [Control API](https://urouter.net/docs/resellers): Customer accounts and key controls through one API. - [Privacy & processing](https://urouter.net/docs/privacy): What happens to requests and credentials. - [Service status](https://urouter.net/docs/status): Independent availability reporting. - [Full documentation](https://urouter.net/llms-full.txt) - [Prices](https://urouter.net/prices) - [OpenAPI](https://api.urouter.net/openapi.json) - [Model discovery](https://api.urouter.net/v1/models) Amounts are decimal USD strings. Check pricing dimensions and their quantities/units. Catalog rates are estimates; catalog capabilities do not grant account access to execution. Branch on error.code. An error.request_id is not automatically an accounting request ID.