Skip to content
Get Started
G2G2
4.7/5
Excellent
Trustpilot

How to add CleanProxies to Kameleo

In Kameleo, open the profile, choose HTTP as the proxy type and paste USERNAME:PASSWORD@HOST:PORT; Kameleo splits it into host, port, username and password. Click Test Proxy, then start the profile. With the Local API, pass a ProxyChoice with value="http" when you create the profile.

  • Session Control
  • High Speed
  • Privacy First

What you need

Kameleo is often driven from code: the desktop app runs a Local API on localhost:5050 that Playwright, Puppeteer and Selenium scripts use to start profiles. Each profile carries its own proxy and resolves DNS through it, so a dedicated CleanProxies static ISP IP per profile keeps automated runs on a stable, clean address.

Your credential line

From the dashboard's proxy manager: host (or IP), port, username and password. Convert lists with the proxy list formatter.

Kameleo ready

  • The Kameleo app running (it serves the Local API at http://localhost:5050).
  • For code: pip install kameleo.local-api-client or npm i @kameleo/local-api-client, matching your Kameleo version.

Which proxy fits Kameleo?

Both products use the same setup in Kameleo. What changes is how long an IP stays with you.

Recommended for automated and long-lived profiles: one dedicated US ISP IP per profile, static all month, with unlimited bandwidth and threads for repeated Playwright or Selenium runs.

starting from$0.75/IP

Dedicated static IPs registered to US and Canadian ISPs. The address stays the same for as long as you hold it, with unlimited bandwidth and HTTP(S) or SOCKS5 access.

Use sticky residential lines (HTTP, username and password) and keep each run inside the session length you generated. Kameleo advises against switching IP mid-session, so start a new run instead of rotating while a profile is open.

starting from$0.63/GB

Residential IPs in 190+ countries with country, state and city targeting. Rotate on every request or hold a sticky session for up to 90 minutes; GB never expire.

credentials

Your CleanProxies credentials

Every product connects over HTTP(S); static ISP and ISP subnet proxies also run SOCKS5 and IP whitelisting. This is what the dashboard gives you to paste into Kameleo.

Static ISP and ISP subnetHTTP(S)SOCKS5IP whitelist
IP:PORT:USER:PASS

One line per dedicated IP. With IP whitelisting on, the line is just IP:PORT and no password is sent.

Rotating residential and mobileHTTP(S)User:pass
HOST:PORT:USER:PASS

Generated in the proxy manager. The username carries the location and session you pick, so generate a new list to change them.

As a URL, for code and most toolshttp://USERNAME:PASSWORD@HOST:PORTsocks5://USERNAME:PASSWORD@HOST:PORT

Use http:// even for HTTPS websites; the TLS session still runs end to end. The socks5:// form is for static ISP and ISP subnet proxies.

How to set up CleanProxies in Kameleo

Four steps, then check the exit IP with the free proxy checker.

  1. 1

    Open the profile

    Create a profile or open an existing one on the profile edit page and go to its proxy settings.

  2. 2

    Choose the proxy type

    Select HTTP for the standard CleanProxies line. Choose SOCKS5 only for an ISP list with SOCKS5 switched on in the dashboard.

  3. 3

    Paste the connection string

    Paste USERNAME:PASSWORD@HOST:PORT and Kameleo fills Host, Port, Username and Password, or enter them one by one. For a whitelisted ISP IP, fill only Host and Port.

  4. 4

    Test Proxy and start

    Click Test Proxy: it connects through the proxy to Google, Archive.org or Wikipedia without launching the profile. Then start the profile.

settings

Kameleo proxy settings

Replace the highlighted placeholders with the values from your dashboard. Pick an example to see its code.

Kameleo + CleanProxies

Set the proxy with the Local API

Create the profile with its proxy attached, test it, then start it. The same ProxyChoice shape is used by the Python and JavaScript SDKs:

PythonPython
from kameleo.local_api_client import KameleoLocalApiClient
from kameleo.local_api_client.models import CreateProfileRequest, ProxyChoice, Server

client = KameleoLocalApiClient(endpoint="http://localhost:5050")
client.verify_engine_ready()

fps = client.fingerprint.search_fingerprints(device_type="desktop", browser_product="chrome")
profile = client.profile.create_profile(CreateProfileRequest(
    fingerprint_id=fps[0].id,
    name="us-isp-01",
    proxy=ProxyChoice(
        value="http",
        extra=Server(host="HOST", port=PORT, id="USERNAME", secret="PASSWORD"),
    ),
))

result = client.profile.test_profile_proxy(profile.id)
print("Proxy test:", result.result)
client.profile.start_profile(profile.id)
  • PORT is a number, not a string. Run the JavaScript as an ES module (a .mjs file) for top-level await. To change a proxy later, stop the profile first, then call update_profile with a new ProxyChoice.

How Kameleo handles the proxy

  • Kameleo tests the proxy before launch and won't start the browser if the test fails, so a dead line shows up before any site sees the profile.
  • A test result of partial_success usually means the proxy has no IPv6 route, which is fine for most sites.
  • Kameleo masks the WebRTC IP to the proxy IP. CleanProxies carries no UDP, so for automation you can also set the Chroma preference webrtc.ip_handling_policy to disable_non_proxied_udp.
  • Default proxy details in Settings pre-fill every new profile, and groups share cloud profiles with team members by role.
fix it fast

Troubleshooting Kameleo proxy errors

Verify your exit IP

Test Proxy in the app, or test_profile_proxy in code, reports whether the proxy connects and where the IP is located. You can also test a line before creating any profile:

Open What is my IP? through the proxy to see the address and headers a website receives, or paste up to ten lines into the free proxy checker to test connectivity, latency and exit IP.

Still stuck? Our 24/7 support team answers fast: contact us with the error and the line you used (leave the password out).

Kameleo error fixes
  • The profile won't startWhy: The proxy test failed, so Kameleo blocked the launch. Through the API a failed test arrives as a 503 error.Check the type (HTTP for the standard line) and the credentials, then run Test Proxy again. Wrap API calls in try/except to handle a dead line.
  • Test Proxy fails although the proxy works elsewhereWhy: Only the direct_* steps failed, which test your own connection, not the proxy.Fix the local network first; the proxy steps are proxy_ipv4, proxy_website and proxy_location.
  • SDK call fails with a missing field or methodWhy: The SDK version doesn't match the Kameleo app version.Install an SDK whose major and minor version match the running Kameleo engine.
  • The site flags a new profile anywayWhy: The same IP is shared by several profiles, or the fingerprint's timezone and language don't match the IP.Give every profile its own dedicated ISP IP and let the browser match timezone, geolocation and WebRTC to the proxy.
  • 407 or an authentication prompt inside the profileWhy: The password was pasted with a trailing space, or the line was split in the wrong order.Paste the full HOST:PORT:USERNAME:PASSWORD line again from the dashboard.

Kameleo proxy guides

Setup guides and best practices from the CleanProxies blog.

Get the latest insightsAll Blogs

More integrations

Setup guides for tools people run next to Kameleo.

Proxies for sites people reach with Kameleo
All integrations

Kameleo proxy FAQs

Straight answers about running CleanProxies in Kameleo.

HTTP/HTTPS, SOCKS5 and SSH. Kameleo does not support UDP-based proxies. CleanProxies static ISP proxies work over HTTP or SOCKS5; residential and mobile lines are HTTP only.

Got more questions?All FAQs