All requests must include an
Authorization: Bearer <secret-key> header. See Authentication for details.How it works
Nango passes through the full response — status code, headers, and body — exactly as the external API returns it.Endpoints
All five HTTP methods are supported:| Method | Endpoint |
|---|---|
GET | GET /proxy/{endpoint} |
POST | POST /proxy/{endpoint} |
PUT | PUT /proxy/{endpoint} |
PATCH | PATCH /proxy/{endpoint} |
DELETE | DELETE /proxy/{endpoint} |
{endpoint} path is appended to the provider’s base URL. For example, /proxy/v3/contacts on a HubSpot connection becomes https://api.hubapi.com/crm/v3/contacts.
Required headers
Bearer <secret-key> — your Nango secret key.The ID of the connection to make the request on behalf of. Nango uses this to look up stored credentials.
The integration ID (unique key) identifying which provider’s base URL and auth scheme to use.
Optional headers
Override the provider’s default base URL. Use this when the target provider is not listed in Nango’s providers.yaml or when a connection requires a custom subdomain (common with Salesforce, ServiceNow, and similar enterprise APIs).
Number of times Nango retries the request on failure (network errors or 5xx responses). Defaults to
0. Maximum is 10.Comma-separated list of additional HTTP status codes that should trigger a retry. For example:
429,503.Set to
true to force decompression of the response body even if the external API does not set a Content-Encoding header.Associates the proxy request with a specific activity log entry in the Nango dashboard. Used internally by Nango function runtimes.
Custom headers to forward to the external API. Strip the
Nango-Proxy- prefix — for example, send Nango-Proxy-X-Custom-Header: value to pass X-Custom-Header: value to the external API.Response
Nango passes the external API’s response through unchanged:- Status code: exactly as returned by the external API.
- Headers: forwarded from the external API response.
- Body: the raw response body, with no transformation.
404, your application receives a 404. If it returns a 429, you receive a 429 (unless Retries is set, in which case Nango retries automatically).
ProxyConfiguration (Node SDK)
The Node SDK’s proxy methods accept aProxyConfiguration object:
Examples
GET request — list GitHub issues
POST request — create a Salesforce record
PUT request — update a HubSpot contact
PATCH request — update a Linear issue
DELETE request — delete a Notion page
Custom base URL (Salesforce instance)
Salesforce uses per-customer subdomain URLs. Override the base URL usingBase-Url-Override (HTTP) or baseUrlOverride (SDK):
With retries on rate limit
Node SDK methods
All five methods are wrappers aroundnango.proxy() that set the HTTP method automatically:
AxiosResponse<T>, so response.data contains the parsed response body and response.status contains the HTTP status code.
Error handling
Connection not found
If theConnection-Id or Provider-Config-Key do not match a known connection, Nango returns 404:
External API errors
Errors from the external API are passed through unchanged. If GitHub returns a422 Unprocessable Entity, you receive the same 422 with GitHub’s original error body.
Credential injection failure
If Nango cannot retrieve or refresh credentials for the connection, it returns401: