-
Notifications
You must be signed in to change notification settings - Fork 654
Description
Summary
Right now, the Nango Proxy REST API supports the Base-Url-Override header (see docs) to override the default base URL for proxied calls.
However, this override is not exposed as a first-class option in the SDKs (Node & TS), which means SDK users cannot configure a custom base API URL directly through the SDK method signatures.
For example, in the Node SDK (@nangohq/node) and the generated TS SDK (speakeasy-sdks/nango-typescript-sdk), methods such as:
nango.proxy({...})nango.get({...})nango.post({...})nango.put({...})nango.patch({...})nango.delete({...})
do not expose a typed baseUrlOverride param to match the underlying API’s support for overriding proxy base URLs.
Problem
When integrating with APIs that are either:
- not defined in
providers.yaml, - or where the base URL must be dynamic (e.g., tenant-specific
instance_url),
the only current workaround is manually injecting theBase-Url-Overrideheader. This is error-prone, lacks type support, and prevents ergonomic SDK use.
Proposal
Add a baseUrlOverride option in the proxy configuration for all relevant methods in:
- The Node backend SDK (
@nangohq/node) - The Typescript SDK (
speakeasy-sdks/nango-typescript-sdk)
This should be added for:
- proxy method (
nango.proxy({...})) - HTTP request helpers (
nango.get({...}),nango.post({...}), etc.) - Any generated SDK clients that wrap proxy calls
The desired behavior is that SDK methods automatically set the Base-Url-Override header when baseUrlOverride is provided, reducing friction and making it explicit in the typing.
Benefits
- Better ergonomics and DX when using the proxy for custom/tenant-specific APIs
- Explicit SDK support aligns with the documented Proxy REST API behavior
- Avoids the need to manually hack headers or custom HTTP clients
Example Use Case
await nango.proxy({
endpoint: '/v1/foo',
providerConfigKey: 'my-provider',
connectionId: 'conn-id',
baseUrlOverride: 'https://api.custom.baz',
});