Skip to content

feat: add Requesty provider#1729

Open
Thibaultjaigu wants to merge 1 commit into
Portkey-AI:mainfrom
Thibaultjaigu:feat/add-requesty-provider
Open

feat: add Requesty provider#1729
Thibaultjaigu wants to merge 1 commit into
Portkey-AI:mainfrom
Thibaultjaigu:feat/add-requesty-provider

Conversation

@Thibaultjaigu

Copy link
Copy Markdown

Summary

Adds Requesty as a dedicated provider, mirroring the existing openrouter provider.

Requesty (https://requesty.ai, https://docs.requesty.ai) is an OpenAI-compatible LLM router. Like OpenRouter it uses provider/model naming (e.g. openai/gpt-4o-mini, anthropic/claude-sonnet-4-5) and a single chat completions endpoint.

Changes

  • src/providers/requesty/api.ts - base URL https://router.requesty.ai/v1 (base https://router.requesty.ai + /v1/chat/completions endpoint), Authorization: Bearer <apiKey>, and optional HTTP-Referer / X-Title analytics headers (same header names OpenRouter uses).
  • src/providers/requesty/chatComplete.ts - request config and response/stream transforms mirroring the OpenRouter provider, including reasoning and usage handling. OpenRouter-specific request params that Requesty does not use (transforms, provider, models) and the OpenRouter-only OPENROUTER PROCESSING stream keepalive branch are omitted. Default model is openai/gpt-4o-mini.
  • src/providers/requesty/utils.ts - transformReasoningParams / transformUsageOptions helpers mirroring OpenRouter.
  • src/providers/requesty/index.ts - provider config wiring.
  • src/providers/index.ts - registers requesty in the provider map.
  • src/globals.ts - adds the REQUESTY constant and its VALID_PROVIDERS entry.
  • src/data/providers.json - adds the Requesty provider entry.

Testing

  • tsc --noEmit: no new type errors introduced by these files (only the two pre-existing errors in bytez and open-ai-base remain).
  • jest src/: 47 tests pass, same as on a clean checkout (the failing suites are pre-existing and caused by missing .creds.json / an absent hooksService module, unrelated to this change).
  • prettier --check passes on all edited files.
  • Live check against the Requesty endpoint (POST https://router.requesty.ai/v1/chat/completions, model openai/gpt-4o-mini) confirms the base URL, Bearer auth, and provider/model naming work end to end.

Reference: https://app.requesty.ai/router/list , keys at https://app.requesty.ai/api-keys

I work at Requesty. This mirrors the existing OpenRouter provider as closely as possible. Happy to adjust or close it if it's not a fit.

Add Requesty as a dedicated provider mirroring the existing OpenRouter
provider. Requesty is an OpenAI-compatible LLM router that uses
provider/model naming.

- src/providers/requesty/{api,chatComplete,utils,index}.ts
- register 'requesty' in src/providers/index.ts
- add REQUESTY constant and VALID_PROVIDERS entry in src/globals.ts
- add Requesty entry to src/data/providers.json

Base URL https://router.requesty.ai/v1 with Authorization: Bearer auth.

Signed-off-by: Thibault Jaigu <thibault.jaigu@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant