Give Relay.app a Static Outbound IP With a Relay Function

QuotaGuard Engineering
August 4, 2026
5 min read
Pattern

Relay.app can't set an outbound proxy, so route its Custom HTTP request action through a small relay function that egresses via QuotaGuard's two static IPs.

Relay.app runs your automations on shared infrastructure. Outbound API calls leave from IP addresses that rotate, so an API that only accepts allowlisted traffic will reject them. QuotaGuard fixes this by giving your requests two static IPs you can allowlist. Relay.app's Custom HTTP request action has no proxy field, so the fix is a small relay function you host, and this post shows the exact setup.

Relay.app Sends Outbound Calls From Rotating IPs

The Custom HTTP request action lets you set a URL, a method, custom headers as key-value pairs, and a JSON or form payload. What it does not let you set is an HTTP proxy. There's no field for HTTP_PROXY, no place to point traffic through a fixed egress, and no sidecar you can run next to the automation. That means the destination API sees whatever IP Relay.app's platform happens to use, and that IP is not stable enough to allowlist.

When your target API enforces IP allowlisting, that's a hard block. The call works one day and fails the next because the source IP changed. You need a fixed egress that you control.

A Relay Function Gives Relay.app a Fixed Egress

Because Relay.app can't set a proxy or run a sidecar, you host a small relay function that does the proxying for it. The relay is an AWS Lambda or a Google Cloud Function that egresses through QuotaGuard. Relay.app calls the relay's URL. The relay forwards your request through the QUOTAGUARDSTATIC_URL connection, and the target API sees one of your two static IPs.

QuotaGuard publishes a ready-to-run example so you don't build this from scratch. It reads two headers on the incoming request. X-Relay-Key is a shared secret that stops strangers from using your relay. X-Target-URL is the real API you want to reach. The relay validates the key, then forwards the request to the target through QuotaGuard.

Deploy the example from the QuotaGuard lambda-relay repo and set its QUOTAGUARDSTATIC_URL environment variable to your subscription's connection string. The full reusable pattern is documented at the QuotaGuard static IP relay guide.

Point the Custom HTTP Request Action at the Relay URL With Two Headers

In your Relay.app workflow, add a Custom HTTP request action. Set the URL to your deployed relay function's URL, keep the method your API needs, and add two headers. Put your target API in X-Target-URL and your shared secret in X-Relay-Key. The body stays the same payload your API expects. The relay passes it straight through.

Action: Custom HTTP request
Method: POST
URL:    https://your-relay-function-url.example.com

Headers:
  X-Relay-Key:  your-shared-secret
  X-Target-URL: https://api.example.com/v1/resource
  Content-Type: application/json

Body (JSON):
  { "your": "payload" }

Here's the same call as a curl command, which is useful for testing the relay before you wire it into Relay.app.

curl -X POST "https://your-relay-function-url.example.com" \
  -H "X-Relay-Key: your-shared-secret" \
  -H "X-Target-URL: https://api.example.com/v1/resource" \
  -H "Content-Type: application/json" \
  -d '{"your":"payload"}'

The relay forwards through QuotaGuard, so the target API sees your subscription's static IP instead of Relay.app's rotating address.

Confirm the Static IP by Pointing X-Target-URL at ip.quotaguard.com

Test the whole path before you trust it. Set X-Target-URL to https://ip.quotaguard.com and send the request. The response returns one of your two static IPs. Run it a few times and you'll see both addresses, because QuotaGuard load-balances across the pair.

curl -X GET "https://your-relay-function-url.example.com" \
  -H "X-Relay-Key: your-shared-secret" \
  -H "X-Target-URL: https://ip.quotaguard.com"

Every QuotaGuard subscription includes two load-balanced static IPs. Allowlist both on your target API. If you allowlist only one, the requests that leave from the other IP will fail. QuotaGuard runs this relay egress on AWS infrastructure, so the two IPs stay fixed for the life of your subscription.

QuotaGuard Static Pricing Starts at $19/Month

QuotaGuard Static is the right product for standard HTTPS API calls. On outbound HTTPS it uses a standard CONNECT tunnel, so your payload is tunneled end to end and never decrypted at the proxy. Bandwidth is bundled and there are no per-GB overage fees. Most Relay.app automations sit well inside the entry plan's allowance. Direct pricing for QuotaGuard Static starts at $19/month. Dedicated IPs are available on Enterprise and above. On lower tiers your two assigned IPs are still static, but shared with other customers.

QuotaGuard Shield Pricing Starts at $29/Month

QuotaGuard Shield uses SSL passthrough, which keeps the TLS connection end to end so QuotaGuard doesn't decrypt your data in ordinary operation. Reach for Shield only when you move regulated data such as HIPAA, PCI-DSS, or SOC 2 workloads. Direct pricing for QuotaGuard Shield starts at $29/month. It costs slightly more than Static at each tier because SSL passthrough adds routing overhead. For standard API calls, Static is the correct choice.

All plans include a 3-day trial. Enterprise plans include a 7-day trial. Credit card required.

Get Your Two Static IPs and Wire Up the Relay

Give your Relay.app automations a static outbound IP in two moves. Deploy the relay function, then point your Custom HTTP request action at it with the two headers. Sign up and see the full pricing table at quotaguard.com/products/pricing. Grab the ready-to-run relay from the QuotaGuard lambda-relay repo, and follow the full walkthrough at the QuotaGuard static IP relay guide. Allowlist both IPs on your target API and your calls leave from the same two addresses every time.

QuotaGuard Static IP Blog

Practical notes on routing cloud and AI traffic through Static IPs.

Reliability Engineered for the Modern Cloud

For over a decade, QuotaGuard has provided reliable, high-performance static IP and proxy solutions for cloud environments like Heroku, Kubernetes, and AWS.

Get the fixed identity and security your application needs today.