node-fetch / undici proxy setup
fetch() in Node — the built-in one and the node-fetch package. Point it at the Eveses residential pool with the configuration below — the geo lives in the username, so nothing else in your setup has to change to move country.
proxy.eveses.com:12321 · SOCKS5 on 32325 · 199 countries · from $7.35/GB
Node's global `fetch` is undici, which does not read `HTTPS_PROXY` and does not accept an `agent` option. It needs `ProxyAgent` passed as `dispatcher`. node-fetch (the package) is the opposite — it wants `agent`.
Configuration
// Node 18+ built-in fetch (undici)
import { ProxyAgent } from "undici";
const dispatcher = new ProxyAgent({
uri: "http://proxy.eveses.com:12321",
token: "Basic " + Buffer.from(
"eveses_user_country-us:YOUR_PROXY_PASSWORD").toString("base64"),
});
const res = await fetch("https://target-site.com", { dispatcher });
// node-fetch package
import fetch from "node-fetch";
import { HttpsProxyAgent } from "https-proxy-agent";
const agent = new HttpsProxyAgent(
"http://eveses_user_country-us:[email protected]:12321");
await fetch("https://target-site.com", { agent });Change country without touching node-fetch / undici
eveses_user_country-deeveses_user_country-de_session-ab12cd34_lifetime-30mThe geo and the session live in the username, not in the host or the port. Every configuration on this page stays exactly as it is when you move country — you edit one string. 199 countries are addressable, with city and state tokens inside most of them.
FAQ
How do I set a proxy in node-fetch / undici?›
How do I choose the country node-fetch / undici exits from?›
How do I keep the same IP across requests in node-fetch / undici?›
What does this cost?›
Other integrations
Run node-fetch / undici through residential IPs
$7.35/GB at 1 GB, $2.57/GB in volume — same credentials in every tool.
Get proxies →