Integrations
Any client that speaks HTTP or SOCKS5 works with the Shifter gateway. Below are copy-paste configs for the tools most customers use.
Command line
Section titled “Command line”curl -x customer-USERNAME-country-us-sid-9f3a2b7c-ttl-600:PASSWORD@p.shifter.io:443 \ https://ipinfo.io/jsonhttps_proxy=customer-USERNAME-country-us-sid-9f3a2b7c-ttl-600:PASSWORD@p.shifter.io:443 \ wget -qO- https://ipinfo.io/jsonScrapy
Section titled “Scrapy”Middleware that rotates the proxy URL per request and lets spiders override country via request.meta:
DOWNLOADER_MIDDLEWARES = { "scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware": 110, "your_project.middlewares.ShifterProxyMiddleware": 100,}
# middlewares.pyimport os
class ShifterProxyMiddleware: def process_request(self, request, spider): username = os.environ["SHIFTER_USERNAME"] password = os.environ["SHIFTER_PASSWORD"] country = request.meta.get("shifter_country", "us") request.meta["proxy"] = ( f"http://{username}-country-{country}:{password}@p.shifter.io:443" )Override per request with request.meta["shifter_country"] = "de".
Puppeteer
Section titled “Puppeteer”import puppeteer from 'puppeteer';
const browser = await puppeteer.launch({ args: ['--proxy-server=http://p.shifter.io:443'],});const page = await browser.newPage();
await page.authenticate({ username: 'customer-USERNAME-country-us-sid-s1-ttl-600-sid-9f3a2b7c-ttl-600', password: 'PASSWORD',});
await page.goto('https://ipinfo.io/json');console.log(await page.content());await browser.close();Playwright
Section titled “Playwright”import { chromium } from 'playwright';
const browser = await chromium.launch({ proxy: { server: 'http://p.shifter.io:443', username: 'customer-USERNAME-country-us-sid-s1-ttl-600-sid-9f3a2b7c-ttl-600', password: 'PASSWORD', },});const page = await browser.newPage();await page.goto('https://ipinfo.io/json');SwitchyOmega
Section titled “SwitchyOmega”- Open Options → New Profile → Proxy Profile.
- Protocol:
HTTP, Server:p.shifter.io, Port:443. - Username:
customer-USERNAME-country-us. Password:PASSWORD. - Apply changes and switch to the new profile.
Multilogin / GoLogin
Section titled “Multilogin / GoLogin”In the browser profile settings:
- Connection type: HTTP Proxy
- Host:
p.shifter.io - Port:
443 - Username:
customer-USERNAME-country-us-sid-<profile-id>-ttl-1800 - Password:
PASSWORD
Use the profile id as the session id so each managed browser holds a consistent IP throughout its session.