Activate a validated private endpoint
Make a validated draft routable. Returns 409 when the endpoint was never validated, the validation is stale, or it is already active. [Management key](/docs/guides/overview/auth/management-api-keys) required.
OpenRouter is a platform that provides a unified API for accessing various large language models (LLMs) from different providers, allowing developers to integrate multiple AI models seamlessly.
Make a validated draft routable. Returns 409 when the endpoint was never validated, the validation is stale, or it is already active. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Add multiple organization members to a workspace. Members are assigned the same role they hold in the organization. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Assign multiple API keys to a specific guardrail. A key may hold at most one guardrail; assigning replaces any existing assignment. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Assign multiple organization members to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Remove multiple members from a workspace. Members with active API keys in the workspace cannot be removed. SCIM-managed members cannot be removed; changes must be made in your identity provider. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Unassign multiple API keys from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Unassign multiple organization members from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Returns weekly refreshed, aggregated cost-per-session cells for the published harnesses. Sessions are never pooled across apps. Medians are of per-session USD spend, and privacy-preserving aggregation never exposes clerk_user_id values or per-session rows. Filter by `app_slug`, `model`, or `turn_range`. Filtering by `model` alone works across apps for harness-vs-harness comparison at a fixed model. Results refresh weekly and include the source snapshot window in `meta`. Licensed under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/): reuse and republish with attribution to OpenRouter. Returns one page; pass the documented pagination parameters for subsequent pages.
Creates a batch of requests that run asynchronously against a single endpoint (`/v1/chat/completions`, `/v1/responses`, `/v1/messages`, `/v1/embeddings`). Returns `202` with `status: "validating"`. Poll `GET /batches/{id}` for progress and results. See the [Batch API Quickstart](https://openrouter.ai/docs/batch-quickstart).
Create a new bring-your-own-key (BYOK) provider credential. The raw key is encrypted at rest and never returned in API responses. When `workspace_id` is omitted, the credential is created in the default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly. Treat the raw key as write-only; it is never returned after creation. Use `allowed_api_key_hashes` to restrict the credential to specific OpenRouter API keys. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Create a new guardrail for the authenticated user. A newly created guardrail enforces nothing until it is assigned to API keys or organization members; `workspace_id` places the guardrail in a workspace but does not apply it to that workspace's traffic. To restrict all traffic in a workspace, update the workspace's default guardrail instead. Set `allowed_data_regions` to enforce [In-Region Routing](/docs/guides/features/in-region-routing#enforcing-in-region-routing-with-guardrails): governed requests must arrive through one of the listed OpenRouter domains and are rejected with a 403 otherwise. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Create a new API key for the authenticated user. The plaintext `key` is returned only in this response. Treat it as a write-only, sensitive value; it cannot be retrieved later. Authenticate with a [management key](/docs/guides/overview/auth/management-api-keys). The optional `external` object associates the key with a partner-defined user and lookup key.
Creates a preset (or a new version of an existing one) from an inference request body. Only fields that overlap with the preset config are persisted; other fields (e.g. `messages`, `stream`, `prompt`) are silently ignored.
Creates a preset (or a new version of an existing one) from an inference request body. Only fields that overlap with the preset config are persisted; other fields (e.g. `messages`, `stream`, `prompt`) are silently ignored.
Creates a preset (or a new version of an existing one) from an inference request body. Only fields that overlap with the preset config are persisted; other fields (e.g. `messages`, `stream`, `prompt`) are silently ignored.
Create a private endpoint as a draft. Drafts are not routable: validate one with `POST /private-endpoints/{id}/validate`, then activate it with `POST /private-endpoints/{id}/activate`. Pass `activate` to do all three in one call; if validation fails the draft is kept and returned with the failed checks. Send an `Idempotency-Key` header to make retries safe: a repeated key with the same request returns the endpoint the first request created; reusing it with different fields returns 422 `idempotency_key_reused`. Returns 400 `parameters_invalid` when `tool_choice` is declared without `tools`. Requires an OpenRouter management key.
Create a SCIM group-to-workspace role mapping. Creating a mapping that already exists with the same role succeeds and re-applies the mapping to the group members. Requesting a different role for an existing mapping returns 409. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Create a new workspace for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Create a new observability destination. A maximum of 5 destinations per type is allowed. Defaults to the authenticated entity's default workspace; use the `workspace_id` body field to scope to a different workspace. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Create an authorization code for the PKCE flow to generate a user-controlled API key
Generate a chat-style completion from messages and a selected model, with function-call request options. The response is parsed as a single JSON object; streaming responses are not returned as partial deltas.
Tool to create a Coinbase charge for crypto payment to add credits to your OpenRouter account. Use when you need to purchase credits using cryptocurrency. Returns calldata needed to fulfill the transaction on the specified blockchain.
Create vector embeddings for text, token, or multimodal inputs.
Create a message using Anthropic Messages API format via OpenRouter, with text, image, PDF, tool, and extended-thinking request options. Response content blocks retain only their type and text.
Create or update the budget for a given interval. Budget limits must strictly decrease as the interval narrows (lifetime > monthly > weekly > daily). The optional `include_byok_in_budgets` flag is a workspace-wide setting: when provided it applies to every budget interval for the workspace, not just the interval in this request. Note that a change made here is applied to budget enforcement immediately, but an already-open workspace settings page in the web dashboard may keep showing the previous value until it is reloaded. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Synthesize speech from text or multi-speaker turns.
Transcribe audio into text using an OpenRouter speech-to-text model. Send JSON input_audio containing raw base64 data and its format, or a public URL downloaded directly by the provider. Use verbose_json for timestamps and speaker labels; diarization and keyterms require a supporting model and may incur additional provider charges. This action does not upload multipart files.
Submit an asynchronous video generation job to OpenRouter.
Returns the top 50 public models per day by total token usage on OpenRouter, plus a single aggregated `other` row per day that sums every model outside that top 50. Token totals are `prompt_tokens + completion_tokens`, matching the public rankings chart on openrouter.ai/rankings. Each row is a distinct `(date, model_permaslug)` pair. The `other` row uses the reserved permaslug `other` and is always returned last within its date, so callers can compute `top-50 traffic / total daily traffic` without a second request. Optional filters slice the dataset. `period` (`day`/`week`/`month`) sets the time grain.
Deletes a batch in a terminal status (`completed`, `failed`, `expired`, or `cancelled`) and its stored requests and results. Batches still in progress return `409`. Billing and usage records are kept. See the [Batch API Quickstart](https://openrouter.ai/docs/batch-quickstart).
Delete (soft-delete) a bring-your-own-key (BYOK) provider credential by its `id`. The encrypted key material is wiped and the record is marked as deleted. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Deletes a file owned by the requesting workspace. Deletion is irreversible.
Delete an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Delete a private endpoint and stop routing to it. Pass `draft_only=true` to refuse (409) when the endpoint has been activated. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Delete a SCIM group-to-workspace mapping. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Delete an existing workspace. Workspaces with active API keys cannot be deleted; remove the keys first. Deleting the default workspace requires confirm_default_workspace_deletion=true. Deleting any workspace permanently deletes its budgets and guardrails and disables its classifiers and broadcast destinations. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Remove the budget for a given interval. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Delete one of the authenticated account's own API keys, revoking the selected key's access. Authenticate with a [management key](/docs/guides/overview/auth/management-api-keys).
Delete an existing observability destination. This performs a soft delete. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Stop routing to an active endpoint without deleting it. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Download raw file content from an OpenRouter container using its canonical container and file IDs.
Download raw content of a server-created file. Uploaded files return HTTP 400.
Resume routing to a disabled endpoint. [Management key](/docs/guides/overview/auth/management-api-keys) required.
RFC 8693 token exchange. Presents a JWT from an issuer your organization trusts (Settings → Workload identity) and receives a short-lived OpenRouter access token that acts as the API key the matching federation policy targets.
Exchange an authorization code from the PKCE flow for a user-controlled API key
Generates an image from a text prompt via the image generation router
Returns a batch with its status and request counts. Batches in a terminal status include `results`. Failed batches report the reason in `error.message`. See the [Batch API Quickstart](https://openrouter.ai/docs/batch-quickstart).
Get a single bring-your-own-key (BYOK) provider credential by its `id`. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Get a single guardrail by ID. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Returns full details for a single model identified by its author and slug (e.g. openai/gpt-4). Supports variant suffixes (e.g. openai/gpt-4:free) and resolves known slug aliases.
Retrieves a preset by its slug with its currently designated version inline.
Get one private endpoint with its upstream configuration and current pricing. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Get a SCIM group-to-workspace mapping. [Management key](/docs/guides/overview/auth/management-api-keys) required.
One server tool by canonical name or any accepted alias, with the models that run it natively.
Get a single API key by hash. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Retrieves a specific version of a preset by its slug and version number.
Get a single workspace by ID or slug. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Retrieve the budget for a given interval. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Fetch a single observability destination by its UUID. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Returns the available metrics, dimensions, filter operators, and granularities for the analytics query endpoint. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Tool to get the current API credit balance for the authenticated user. Use before large or batch jobs to verify sufficient balance. A successful response may return total_credits=0, which confirms authentication but will cause all paid model generations to fail. Avoid polling this endpoint; call only as needed.
Tool to get information about the currently authenticated API key. Use to check usage limits, spending, and key metadata.
Retrieves metadata for a single file owned by the requesting workspace.
Tool to retrieve a generation result by its unique ID. Use after a generation completes to fetch metadata like token counts, cost, and latency.
Tool to get the total count of available models on OpenRouter. Use when you need to know how many models are available without fetching the full list.
Get the settings of the organization associated with the authenticated management key. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Get SCIM directory sync status. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Get stored prompt, completion, and error content for a generation
Returns user activity data grouped by endpoint for the last 30 (completed) UTC days. Pass `workspace_id` to scope the response to a single workspace. Pass `group_by=workspace` to split each row per workspace and include `workspace_id` on every item; by default rows are aggregated across workspaces and `workspace_id` is not returned. Activity recorded before workspace resolution existed is permanently attributed to the account default workspace (no backfill is possible). [Management key](/docs/guides/overview/auth/management-api-keys) required.
Download one output from a completed OpenRouter video generation job.
Poll a video generation job for its status, outputs, and usage.
List all API key guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required. Returns one page; pass the documented pagination parameters for subsequent pages.
List all organization member guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required. Returns one page; pass the documented pagination parameters for subsequent pages.
List all API keys for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required. Returns one page; pass the documented pagination parameters for subsequent pages.
List available OpenRouter models, optionally filtered by category. Returns at most the first three models from the response, with their IDs, capabilities and pricing metadata.
Lists batches in the workspace of the authenticating API key, newest first. To fetch the next page, pass the previous page's `last_id` as `after`. List items omit `results`. Use `GET /batches/{id}` to get them. See the [Batch API Quickstart](https://openrouter.ai/docs/batch-quickstart). Returns one page; pass the documented pagination parameters for subsequent pages.
Unified benchmark endpoint that aggregates scores from multiple benchmark sources (Artificial Analysis, Design Arena, and OpenRouter's own tau-bench, GPQA, and web-search evals). Filter by source to reproduce the exact shapes from the legacy per-source endpoints, or use task_type to find models suited for specific workloads. Use task_type=search (or a search_* benchmark_type) for OpenRouter's search benchmarks, which publish each model's highest-scoring eligible evaluation configuration with same-configuration runs combined by task-weighted mean. Authenticate with any valid OpenRouter API key. Rate-limited to 30 requests/minute per key and 500 requests/day per account.
List the bring-your-own-key (BYOK) provider credentials for the authenticated entity's default workspace. Use the `workspace_id` query parameter to scope the result to a different workspace, or the `provider` query parameter to filter by upstream provider. [Management key](/docs/guides/overview/auth/management-api-keys) required. Returns one page; pass the documented pagination parameters for subsequent pages.
Lists the files in a container, in lexicographic path order. The container id is the canonical id returned in bash/shell tool results; a restarted session is a separate container with its own id. Paginate with `limit` and `after` (pass the previous page’s `last_id`); `has_more: true` always means the next page is fetchable that way. `last_id` is the resume cursor: it is the last listed file’s id, except when a page ends at the per-request scan bound on hidden bookkeeping objects, where it names the scan position instead and may not appear in `data` (which can then be empty). Returns one page; pass the documented pagination parameters for subsequent pages.
List available OpenRouter embedding models with properties including architecture, pricing, and capabilities. Returns at most the first three models from the response.
Returns the full per-endpoint records for an image model: each endpoint's definitive supported parameters, pricing, and passthrough allowlist.
Lists files belonging to the workspace of the authenticating API key. Returns one page; pass the documented pagination parameters for subsequent pages.
List all guardrails for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required. Returns one page; pass the documented pagination parameters for subsequent pages.
Lists every image generation model with its top-level supported-parameter superset and a URL to its full per-endpoint records.
List all API key assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required. Returns one page; pass the documented pagination parameters for subsequent pages.
List all organization member assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required. Returns one page; pass the documented pagination parameters for subsequent pages.
List the observability destinations configured for the authenticated entity's default workspace. Use the `workspace_id` query parameter to scope the result to a different workspace. Only destinations with stable release status are surfaced — destinations of other types are excluded. [Management key](/docs/guides/overview/auth/management-api-keys) required. Returns one page; pass the documented pagination parameters for subsequent pages.
List all members of the organization associated with the authenticated management key. [Management key](/docs/guides/overview/auth/management-api-keys) required. Returns one page; pass the documented pagination parameters for subsequent pages.
Lists all presets for the authenticated user, ordered by most recently updated first. Returns one page; pass the documented pagination parameters for subsequent pages.
List the organization's private endpoints, including drafts. Requires the private endpoints entitlement. [Management key](/docs/guides/overview/auth/management-api-keys) required.
List SCIM group-to-workspace mappings for the organization. [Management key](/docs/guides/overview/auth/management-api-keys) required. Returns one page; pass the documented pagination parameters for subsequent pages.
List SCIM groups for the organization. [Management key](/docs/guides/overview/auth/management-api-keys) required. Returns one page; pass the documented pagination parameters for subsequent pages.
Lists every server tool OpenRouter can run on behalf of a model: accepted `tools[].type` spellings per API format, the engines behind it with their pricing, and how many endpoints run it natively. Returns one page; pass the documented pagination parameters for subsequent pages.
List models filtered by user provider preferences, privacy settings, and guardrails. Returns at most the first three models from the response.
Lists all versions of a preset, ordered by version number ascending (oldest first). Returns one page; pass the documented pagination parameters for subsequent pages.
List video generation models and their supported capabilities.
List all budgets configured for a workspace. [Management key](/docs/guides/overview/auth/management-api-keys) required.
List all members of a workspace. Returns paginated results. For the default workspace, returns all organization members (implicit membership). [Management key](/docs/guides/overview/auth/management-api-keys) required. Returns one page; pass the documented pagination parameters for subsequent pages.
List all workspaces for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required. Returns one page; pass the documented pagination parameters for subsequent pages.
RFC 7517 JWK Set containing the public keys OpenRouter signs access tokens with.
Tool to list endpoints for a specific model. Use after specifying model author and slug to get endpoint details including pricing, context length, and supported parameters. Some metadata fields (e.g., latency, pricing) may be null or approximate; handle missing values in routing logic.
Tool to list all AI model providers available through the OpenRouter API. Use after authentication to retrieve available provider options for routing configuration. Providers differ in latency, context window sizes, and rate limits — switching providers affects these constraints. Newly added providers may not appear immediately due to catalog propagation delays.
Tool to preview the impact of Zero Data Retention (ZDR) on the available endpoints. Use to see which model endpoints remain accessible when ZDR is enabled.
Copies a file from the container's sandbox prefix into the workspace's durable document storage, so it outlives the container. Returns the new document in the Files API shape, with a durable file id in the documents namespace. The copy counts against the workspace's storage quota. Unlike a direct upload, promoted files are downloadable.
Execute an analytics query with specified metrics, dimensions, filters, and time range. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Rank text or multimodal documents by relevance to a query.
Returns the metadata of a single file in a container.
Start a SCIM directory sync. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Sends state and typed questions to a System One model such as Jev and returns its answers. Compatible with the TypeSafe SDKs. Bare System One model IDs such as `jev-1.13` and `jev-latest` are mapped onto the `typesafe/` namespace.
Submit structured feedback on a generation the authenticated user made. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Returns the market-share breakdown of OpenRouter traffic by task classification (e.g. code generation, web search, summarization) over a trailing time window. Each classification reports its share of classified sampled requests (`usage_share`) and classified sampled token volume (`token_share`) as fractions between 0 and 1. The unclassified `other` bucket is excluded.
Returns the top public apps on OpenRouter ranked by token usage inside the requested date window, matching the public apps marketplace on openrouter.ai/apps. Token totals are `prompt_tokens + completion_tokens`; hidden and private apps are excluded and traffic from related app aliases is merged into the canonical visible app. `sort=popular` (default) ranks by total token volume inside the window. `sort=trending` ranks by absolute excess token growth: window volume minus the average volume of the three equal-length periods immediately preceding the window. Returns one page; pass the documented pagination parameters for subsequent pages.
Update an existing bring-your-own-key (BYOK) provider credential by its `id`. Include the `key` field to rotate the raw provider API key in-place (the previous key material is overwritten). Use `allowed_api_key_hashes` to restrict the credential to specific OpenRouter API keys (`null` clears the restriction). [Management key](/docs/guides/overview/auth/management-api-keys) required.
Update an existing guardrail, or materialize an unconfigured workspace default guardrail. Collection fields use replace semantics: send the full desired set on every update. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Change any of the endpoint fields you own in one call; only the fields present change, and the response is the whole endpoint. `pricing` and `declared_parameters` replace their stored value, `settings` changes only the fields it names (`null` clears a limit or restores the provider default); routing picks these up for subsequent requests on drafts and active endpoints alike. `upstream_model_id`, `base_url`, `declared_zdr` and `declared_region` re-point a draft: an omitted `upstream_model_id` or `base_url` keeps the stored one, omitted data-policy declarations are kept while the upstream is unchanged and cleared when it changes, and any upstream change clears earlier validation. Requires an OpenRouter management key.
Update a SCIM group mapping role. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Update an existing workspace by ID or slug. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Update one of the authenticated account's own API keys. Authenticate with a [management key](/docs/guides/overview/auth/management-api-keys). Setting `disabled=true` disables the selected key. Set `workspace_id` to move the key to another workspace. <Warning> The request body accepts only the fields listed below, and unrecognized fields are ignored. If the body contains none of the accepted fields, the request fails with `400` and the message `No update fields provided`. </Warning>
Update an existing observability destination. Only the fields provided in the request body are updated. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Update the settings of the organization associated with the authenticated management key. [Management key](/docs/guides/overview/auth/management-api-keys) required.
Upload a file for future API calls under the authenticating key's workspace. Accepts PDF, PNG/JPEG/GIF/WebP, DOCX/XLSX/PPTX, MP3/WAV/FLAC/OGG, or UTF-8 text. OpenRouter detects MIME type from contents, not the filename or declared MIME type. Maximum file size is 100 MB; empty files are rejected. Returns the stored file's metadata and identifier.
Send a live test request to the draft endpoint using the given workspace's BYOK credential for its provider. A passing validation is required before activation. Failed checks return 200 with `passed: false`. [Management key](/docs/guides/overview/auth/management-api-keys) required.
The OpenRouter integration connects your Dench AI CRM directly to OpenRouter, so agents can read and act on your OpenRouter data as part of everyday work — answering questions in chat, keeping your CRM in sync, and running automations without anyone copying data between tools.
122 actions are available for agents to invoke on your behalf. Every call runs through OpenRouter's own authorization, scoped to the account you connect.
Sign in to your Dench workspace and open Integrations.
Find OpenRouter and click Connect — you'll authorize access through OpenRouter's own sign-in flow. No API keys or code required.
Ask an agent to use OpenRouter in chat, or call it from an automation.
Manage or disconnect the connection any time from workspace settings.
The Dench OpenRouter integration connects your AI CRM to OpenRouter, so AI agents can work with your OpenRouter data as part of chats, automations, and CRM workflows. You connect your account once, and every agent in your workspace can use it — governed by your workspace permissions.
The OpenRouter integration currently exposes 122 actions, including Activate a validated private endpoint, Bulk add members to a workspace, Bulk assign keys to a guardrail, Bulk assign members to a guardrail, Bulk remove members from a workspace, and Bulk unassign keys from a guardrail. Agents invoke them on your behalf from chat or from automations.
No. You connect OpenRouter from your Dench workspace using OpenRouter's own sign-in and authorization flow — no API keys to copy, no glue code to maintain.
Connections are authorized through OpenRouter's own authentication flow, and Dench stores only the authorization needed to act on your behalf. You can review and disconnect the OpenRouter connection from your workspace settings at any time.