diff --git a/docs/reference/PROVIDER_REFERENCE.md b/docs/reference/PROVIDER_REFERENCE.md index fa597a551d..0904ac7ba1 100644 --- a/docs/reference/PROVIDER_REFERENCE.md +++ b/docs/reference/PROVIDER_REFERENCE.md @@ -1,16 +1,16 @@ --- title: "Provider Reference" version: 3.8.49 -lastUpdated: 2026-07-28 +lastUpdated: 2026-08-25 --- # Provider Reference > **Auto-generated** from `src/shared/constants/providers.ts` — do not edit by hand. > Regenerate with: `npm run gen:provider-reference` -> **Last generated:** 2026-07-28 +> **Last generated:** 2026-08-25 -Total providers: **290**. See category breakdown below. +Total providers: **291**. See category breakdown below. ## Categories @@ -97,7 +97,7 @@ Use the dashboard at `/dashboard/providers` to enable, configure, and test each | `zai-web` | `zw` | Z.ai Web (Free) | Web cookie | [link](https://chat.z.ai) | Paste the full Cookie header from chat.z.ai (must include the token= cookie) | — | | `zenmux-free` | `zmf` | ZenMux Free (Web) | Web cookie | [link](https://zenmux.ai) | Login at zenmux.ai, then export all cookies using EditThisCookie or Cookie-Editor and paste the full Cookie header string here. Refresh every ~30 days. | — | -## API Key Providers (paid / paid-with-free-credits) (195) +## API Key Providers (paid / paid-with-free-credits) (196) | ID | Alias | Name | Tags | Website | Notes | |----|-------|------|------|---------|-------| @@ -233,6 +233,7 @@ Use the dashboard at `/dashboard/providers` to enable, configure, and test each | `opencode-zen` | `opencode-zen` | OpenCode Zen | API key | [link](https://opencode.ai/zen) | — | | `openrouter` | `openrouter` | OpenRouter | API key, aggregator | [link](https://openrouter.ai) | Free models at $0/token with :free suffix - 20 RPM / 200 RPD | | `openvecta` | `openvecta` | OpenVecta | API key | [link](https://openvecta.com) | Free credits on signup for OpenAI-compatible inference across LLMs, embeddings, and reasoning models | +| `opper` | `opper` | Opper | API key, aggregator | [link](https://opper.ai) | — | | `orcarouter` | `orcarouter` | OrcaRouter | API key | [link](https://www.orcarouter.ai) | — | | `ovhcloud` | `ovh` | OVHcloud AI | API key | [link](https://www.ovhcloud.com) | — | | `perplexity` | `pplx` | Perplexity | API key | [link](https://www.perplexity.ai) | — | diff --git a/public/providers/opper.svg b/public/providers/opper.svg new file mode 100644 index 0000000000..29474dc4d7 --- /dev/null +++ b/public/providers/opper.svg @@ -0,0 +1 @@ +Opper diff --git a/src/shared/constants/providers.ts b/src/shared/constants/providers.ts index 306a91d0f1..9ee8e7b3c3 100644 --- a/src/shared/constants/providers.ts +++ b/src/shared/constants/providers.ts @@ -70,6 +70,7 @@ export const AGGREGATOR_PROVIDER_IDS = new Set([ "kilo-gateway", "aimlapi", "novita", + "opper", "piapi", "getgoapi", "laozhang", diff --git a/tests/snapshots/provider/translate-path.json b/tests/snapshots/provider/translate-path.json index 7f2d7ae323..4485993dda 100644 --- a/tests/snapshots/provider/translate-path.json +++ b/tests/snapshots/provider/translate-path.json @@ -3828,6 +3828,29 @@ "stream": "https://api.openvecta.com/v1/chat/completions" } }, + "opper": { + "format": "openai", + "headers": { + "apiKey": { + "Accept": "text/event-stream", + "Authorization": "Bearer ", + "Content-Type": "application/json" + }, + "nonStream": { + "Authorization": "Bearer ", + "Content-Type": "application/json" + }, + "oauth": { + "Accept": "text/event-stream", + "Authorization": "Bearer ", + "Content-Type": "application/json" + } + }, + "url": { + "nonStream": "https://api.opper.ai/v3/compat/chat/completions", + "stream": "https://api.opper.ai/v3/compat/chat/completions" + } + }, "orcarouter": { "format": "openai", "headers": {