Documentation

Residential proxy quick start

Use the endpoint values issued to your account. The examples below intentionally use placeholders and will not work until they are replaced with real credentials.

1. Gather the connection inputs

After a quote and use-case review, keep the gateway hostname, port, username, and password in a secret manager or environment variables. Do not commit credentials to source control.

LIVO_PROXY_HOST=your-issued-gateway.example
LIVO_PROXY_PORT=0000
LIVO_PROXY_USERNAME=your-issued-username
LIVO_PROXY_PASSWORD=your-issued-password

2. Run a bounded connectivity test

Replace the placeholders and test against a public endpoint that you are authorized to access. Avoid placing a real password in shell history.

curl --proxy "http://USERNAME:PASSWORD@HOST:PORT" \
  --max-time 30 \
  "https://example.com/"

A successful connection does not by itself prove production fit. Record status code, response time, response size, selected geography, and whether the returned content is usable.

3. Configure a compatible client

These examples demonstrate standard proxy configuration with placeholders. Install and review the referenced client package separately, then use the endpoint values issued to your account.

Python with Requests

import os
import requests

proxy_url = (
    f"http://{os.environ['LIVO_PROXY_USERNAME']}:"
    f"{os.environ['LIVO_PROXY_PASSWORD']}@"
    f"{os.environ['LIVO_PROXY_HOST']}:"
    f"{os.environ['LIVO_PROXY_PORT']}"
)

response = requests.get(
    "https://example.com/",
    proxies={"http": proxy_url, "https": proxy_url},
    timeout=30,
)
response.raise_for_status()

Node.js with Undici

import { ProxyAgent, request } from "undici";

const proxyUrl = new URL(
  `http://${process.env.LIVO_PROXY_HOST}:${process.env.LIVO_PROXY_PORT}`,
);
proxyUrl.username = process.env.LIVO_PROXY_USERNAME;
proxyUrl.password = process.env.LIVO_PROXY_PASSWORD;

const { statusCode } = await request("https://example.com/", {
  dispatcher: new ProxyAgent(proxyUrl.toString()),
  headersTimeout: 30_000,
  bodyTimeout: 30_000,
});

if (statusCode >= 400) throw new Error(`HTTP ${statusCode}`);

Playwright browser context

const context = await browser.newContext({
  proxy: {
    server: `http://${process.env.LIVO_PROXY_HOST}:${process.env.LIVO_PROXY_PORT}`,
    username: process.env.LIVO_PROXY_USERNAME,
    password: process.env.LIVO_PROXY_PASSWORD,
  },
});

4. Choose rotation or continuity

Use rotating sessions when requests are independent. Use a sticky session when several related requests should keep one route for up to 30 minutes. A route can still change if it becomes unavailable, so clients must recover safely.

Do not guess location or session username parameters from examples published by another provider; use the account-specific format supplied by LivoProxy.

5. Prepare for production

  • Set connection, read, and overall timeouts.
  • Use bounded retries with exponential backoff.
  • Limit concurrency to the agreed workload.
  • Track traffic usage and unexpected spikes.
  • Redact credentials and personal data from logs.
  • Respect site terms, access controls, robots guidance, and applicable law.