Replace ACCOUNT_ID and PROXY_PASSWORD with the values from GET https://api.proxies.sx/v1/gateway/credentials (header X-API-Key: psx_...). The proxy password is set once in the portal and is not your login password.
{
"nodes": [
{
"name": "Fetch via Proxies.sx",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [0, 0],
"parameters": {
"url": "https://api.ipify.org?format=json",
"options": {
"proxy": "=http://psx_ACCOUNT_ID-peer-fr-rot-sticky-sid-{{ $execution.id }}:PROXY_PASSWORD@gw.proxies.sx:7000"
}
}
}
],
"connections": {}
}
Paste the JSON into the n8n canvas, or set Options > Proxy on any HTTP Request node by hand. The leading = marks an expression. Keep credentials in an n8n credential or environment variable rather than inline.
Use: sticky per execution: -sid-{{ $execution.id }}. The execution id is unique per workflow run and stable across every node in it, so all HTTP Request nodes in one run share one exit. For a stateless poll use -rot-ondemand and drop the sid.
Sticky pins the device for that session id, not the exit IP - mobile carriers re-NAT on their own schedule, so a pinned modem can still surface a new address. Without a -sid-, sticky and auto modes do nothing across connections. Unknown tokens are dropped silently, so -session- is not a substitute for -sid-.
Edit the username only: peer-us, peer-jp, mbl-gb. peer covers ~127 countries; mbl is carrier modems in US, GB, FR, NL, PL and GE (Georgia). Check stock before you pick: GET https://api.proxies.sx/v1/gateway/pool/stock. $4/GB, $2.40/GB at 250 GB+, duration free.
/pool/skill.md (full username DSL and API contract) · /pool/ (Pool Gateway) · all integrations · skill.md for this section