OpenRouter logo

Integrate OpenRouter with your AI CRM

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.

Explore Triggers and Actions

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.

ActionTry it

Bulk add members to a workspace

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.

ActionTry it

Bulk assign keys to a guardrail

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.

ActionTry it

Bulk assign members to a guardrail

Assign multiple organization members to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Bulk remove members from a workspace

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.

ActionTry it

Bulk unassign keys from a guardrail

Unassign multiple API keys from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Bulk unassign members from a guardrail

Unassign multiple organization members from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Cost per session by harness and model

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.

ActionTry it

Create a batch

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).

ActionTry it

Create a BYOK provider credential

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.

ActionTry it

Create a guardrail

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.

ActionTry it

Create a new API key

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.

ActionTry it

Create a preset from a chat-completions request body

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.

ActionTry it

Create a preset from a messages request body

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.

ActionTry it

Create a preset from a responses request body

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.

ActionTry it

Create a private endpoint

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.

ActionTry it

Create a SCIM group mapping

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.

ActionTry it

Create a workspace

Create a new workspace for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Create an observability destination

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.

ActionTry it

Create authorization code

Create an authorization code for the PKCE flow to generate a user-controlled API key

ActionTry it

Create Chat Completion

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.

ActionTry it

Create Coinbase Charge

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.

ActionTry it

Create Embeddings

Create vector embeddings for text, token, or multimodal inputs.

ActionTry it

Create Message (Anthropic Format)

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.

ActionTry it

Create or update a workspace budget

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.

ActionTry it

Create Speech

Synthesize speech from text or multi-speaker turns.

ActionTry it

Create Transcription

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.

ActionTry it

Create Video Generation

Submit an asynchronous video generation job to OpenRouter.

ActionTry it

Daily token totals for top 50 models

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.

ActionTry it

Delete a batch

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).

ActionTry it

Delete a BYOK provider credential

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.

ActionTry it

Delete a file

Deletes a file owned by the requesting workspace. Deletion is irreversible.

ActionTry it

Delete a guardrail

Delete an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Delete a private endpoint

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.

ActionTry it

Delete a SCIM group mapping

Delete a SCIM group-to-workspace mapping. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Delete a workspace

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.

ActionTry it

Delete a workspace budget

Remove the budget for a given interval. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Delete an API key

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).

ActionTry it

Delete an observability destination

Delete an existing observability destination. This performs a soft delete. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Disable a private endpoint

Stop routing to an active endpoint without deleting it. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Download Container File Content

Download raw file content from an OpenRouter container using its canonical container and file IDs.

ActionTry it

Download File Content

Download raw content of a server-created file. Uploaded files return HTTP 400.

ActionTry it

Enable a private endpoint

Resume routing to a disabled endpoint. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Exchange a workload identity token

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.

ActionTry it

Exchange authorization code for API key

Exchange an authorization code from the PKCE flow for a user-controlled API key

ActionTry it

Generate an image

Generates an image from a text prompt via the image generation router

ActionTry it

Get a batch

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).

ActionTry it

Get a BYOK provider credential

Get a single bring-your-own-key (BYOK) provider credential by its `id`. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Get a guardrail

Get a single guardrail by ID. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Get a model by its slug

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.

ActionTry it

Get a preset

Retrieves a preset by its slug with its currently designated version inline.

ActionTry it

Get a private endpoint

Get one private endpoint with its upstream configuration and current pricing. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Get a SCIM group mapping

Get a SCIM group-to-workspace mapping. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Get a server tool

One server tool by canonical name or any accepted alias, with the models that run it natively.

ActionTry it

Get a single API key

Get a single API key by hash. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Get a specific version of a preset

Retrieves a specific version of a preset by its slug and version number.

ActionTry it

Get a workspace

Get a single workspace by ID or slug. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Get a workspace budget

Retrieve the budget for a given interval. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Get an observability destination

Fetch a single observability destination by its UUID. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Get available analytics metrics and dimensions

Returns the available metrics, dimensions, filter operators, and granularities for the analytics query endpoint. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Get Credits

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.

ActionTry it

Get Current Key

Tool to get information about the currently authenticated API key. Use to check usage limits, spending, and key metadata.

ActionTry it

Get file metadata

Retrieves metadata for a single file owned by the requesting workspace.

ActionTry it

Get Generation

Tool to retrieve a generation result by its unique ID. Use after a generation completes to fetch metadata like token counts, cost, and latency.

ActionTry it

Get Models Count

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.

ActionTry it

Get organization settings

Get the settings of the organization associated with the authenticated management key. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Get SCIM directory sync status

Get SCIM directory sync status. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Get stored prompt, completion, and error content for a generation

Get stored prompt, completion, and error content for a generation

ActionTry it

Get user activity grouped by endpoint

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.

ActionTry it

Get Video Content

Download one output from a completed OpenRouter video generation job.

ActionTry it

Get Video Generation

Poll a video generation job for its status, outputs, and usage.

ActionTry it

List all key assignments

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.

ActionTry it

List all member assignments

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.

ActionTry it

List API keys

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.

ActionTry it

List Available Models

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.

ActionTry it

List batches

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.

ActionTry it

List Benchmarks

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.

ActionTry it

List BYOK provider credentials

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.

ActionTry it

List container files

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.

ActionTry it

List Embedding Models

List available OpenRouter embedding models with properties including architecture, pricing, and capabilities. Returns at most the first three models from the response.

ActionTry it

List endpoints for an image model

Returns the full per-endpoint records for an image model: each endpoint's definitive supported parameters, pricing, and passthrough allowlist.

ActionTry it

List files

Lists files belonging to the workspace of the authenticating API key. Returns one page; pass the documented pagination parameters for subsequent pages.

ActionTry it

List guardrails

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.

ActionTry it

List image generation models

Lists every image generation model with its top-level supported-parameter superset and a URL to its full per-endpoint records.

ActionTry it

List key assignments for a guardrail

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.

ActionTry it

List member assignments for a guardrail

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.

ActionTry it

List observability destinations

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.

ActionTry it

List organization members

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.

ActionTry it

List presets

Lists all presets for the authenticated user, ordered by most recently updated first. Returns one page; pass the documented pagination parameters for subsequent pages.

ActionTry it

List private endpoints

List the organization's private endpoints, including drafts. Requires the private endpoints entitlement. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

List SCIM group mappings

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.

ActionTry it

List SCIM groups

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.

ActionTry it

List server tools

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.

ActionTry it

List User Models

List models filtered by user provider preferences, privacy settings, and guardrails. Returns at most the first three models from the response.

ActionTry it

List versions of a preset

Lists all versions of a preset, ordered by version number ascending (oldest first). Returns one page; pass the documented pagination parameters for subsequent pages.

ActionTry it

List Video Models

List video generation models and their supported capabilities.

ActionTry it

List workspace budgets

List all budgets configured for a workspace. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

List workspace members

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.

ActionTry it

List workspaces

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.

ActionTry it

OpenRouter access token signing keys

RFC 7517 JWK Set containing the public keys OpenRouter signs access tokens with.

ActionTry it

OpenRouter List Model Endpoints

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.

ActionTry it

OpenRouter List Providers

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.

ActionTry it

OpenRouter List ZDR Endpoints

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.

ActionTry it

Promote a container file into workspace documents

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.

ActionTry it

Query analytics data

Execute an analytics query with specified metrics, dimensions, filters, and time range. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Rerank Content

Rank text or multimodal documents by relevance to a query.

ActionTry it

Retrieve a container file

Returns the metadata of a single file in a container.

ActionTry it

Start a SCIM directory sync

Start a SCIM directory sync. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Submit a System One request

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.

ActionTry it

Submit feedback for a generation

Submit structured feedback on a generation the authenticated user made. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Task classification market share

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.

ActionTry it

Top apps by token usage

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.

ActionTry it

Update a BYOK provider credential

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.

ActionTry it

Update a guardrail

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.

ActionTry it

Update a private endpoint

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.

ActionTry it

Update a SCIM group mapping

Update a SCIM group mapping role. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Update a workspace

Update an existing workspace by ID or slug. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Update an API key

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>

ActionTry it

Update an observability destination

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.

ActionTry it

Update organization settings

Update the settings of the organization associated with the authenticated management key. [Management key](/docs/guides/overview/auth/management-api-keys) required.

ActionTry it

Upload File

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.

ActionTry it

Validate a draft private endpoint

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.

ActionTry it

How the OpenRouter integration works

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.

Set up OpenRouter in Dench

  1. 1

    Sign in to your Dench workspace and open Integrations.

  2. 2

    Find OpenRouter and click Connect — you'll authorize access through OpenRouter's own sign-in flow. No API keys or code required.

  3. 3

    Ask an agent to use OpenRouter in chat, or call it from an automation.

  4. 4

    Manage or disconnect the connection any time from workspace settings.

Frequently asked questions

How does the OpenRouter integration work with Dench?

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.

What actions can AI agents perform with OpenRouter via Dench?

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.

Do I need to write code to connect OpenRouter to Dench?

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.

Is the OpenRouter integration secure?

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.

OpenRouter | Dench AI CRM