Getting started
Quickstart: making your first proxied request
Create a proxy credential, build the connection string, and send a request over HTTP or SOCKS5.
1. Create a credential
Go to Credentials in the dashboard and click Create. A label is optional. You get back:
- A username, like
mlabs_a1f9c3 - A password, shown once
Copy the password now. It is not stored and cannot be shown again. If you lose it, you can click rotate password to generate a new one.
2. Connection details
| Host | proxy.masklabs.io |
| HTTP | port 8080 |
| HTTPS | port 443 |
| SOCKS5 | port 1080 |
Session behavior is set per request by a suffix on the username:
<username>[_loc_<CODE>][_sticky]
- No suffix: rotating. A new exit IP on every request.
_sticky: keep the same exit IP for about 5 minutes._loc_<CODE>: only use exits in one US location, for example_loc_ORDfor Chicago. Put the location before_stickywhen combining them:mlabs_a1f9c3_loc_ORD_sticky.
See Rotating vs sticky sessions, and location targeting for the full list of location codes.
3. Send a request
Rotating, over HTTP:
curl -x "http://mlabs_a1f9c3:<PASSWORD>@proxy.masklabs.io:8080" \
https://ipinfo.io/json
Run it multiple times and you will see the ip field change with every new connection.
Sticky, pinned to one location, over SOCKS5:
curl -x "socks5h://mlabs_a1f9c3_loc_ORD_sticky:<PASSWORD>@proxy.masklabs.io:1080" \
https://ipinfo.io/json
Use socks5h, not socks5. The h makes the client resolve DNS through the
proxy, so lookups happen from the exit location instead of your own network.
4. Use it from your code
Anything that accepts a proxy URL takes the same string. Setup for common clients:
- Python:
requestsandhttpx - Node.js:
fetchwith undici, and axios - Browser automation: Playwright and Puppeteer
5. Usage and limits
Traffic is metered per credential and drawn from your organization's data allowance. The dashboard shows usage for the whole organization and usage per credential. You can set a daily or monthly cap on any credential, disable it, rotate its password, or delete it from its settings. See Billing and data usage for more information.
6. API
Everything above can also be done over the API: create credentials, set usage limits, and read usage. Keys are created on your Account page.