Dokumentacja

Dokumentacja dla deweloperów

Przewodniki integracyjne, działające przykłady i REST API reference dla sieci proxy mobilnych mobileproxy.space — Python, Node.js, Go, cURL, Playwright, Selenium.

Szybki start

Uruchom pierwsze zapytanie przez proxy w mniej niż minutę. Potrzebujesz: aktywnego proxy na koncie i tokenu API z panelu sterowania.

  1. Zarejestruj się na mobileproxy.space.
  2. Kup proxy — wybierz kraj i operatora na stronie zakupu.
  3. Skopiuj swój token API ze strony API będąc zalogowanym.
  4. Wykonaj pierwsze zapytanie — wybierz język poniżej.
curl --request GET \ --url 'https://mobileproxy.space/api.html?command=get_my_proxy' \ --header 'Authorization: Bearer YOUR_API_TOKEN'
import requests r = requests.get( "https://mobileproxy.space/api.html", params={"command": "get_my_proxy"}, headers={"Authorization": "Bearer YOUR_API_TOKEN"}, timeout=10, ) print(r.json())
const res = await fetch( "https://mobileproxy.space/api.html?command=get_my_proxy", { headers: { Authorization: "Bearer YOUR_API_TOKEN" } } ); console.log(await res.json());
req, _ := http.NewRequest("GET", "https://mobileproxy.space/api.html?command=get_my_proxy", nil) req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN") resp, _ := http.DefaultClient.Do(req) defer resp.Body.Close() body, _ := io.ReadAll(resp.Body) fmt.Println(string(body))
Limit żądań: 3 req/sec × N aktywnych proxy. Cooldown identycznego żądania: 3 sek. HTTP 429 po przekroczeniu.

Uwierzytelnianie

Wszystkie wywołania API uwierzytelniają się osobistym tokenem Bearer. Token jest powiązany z kontem, nie z pojedynczym proxy.

Gdzie zdobyć token

Zaloguj się do panelu i otwórz API. Pole tokenu jest na górze. Token można obrócić w dowolnym momencie — stary jest natychmiast unieważniony.

Wysyłanie tokenu

Authorization: Bearer YOUR_API_TOKEN

IP allowlist (opcjonalnie)

Dla dodatkowego bezpieczeństwa możesz ograniczyć wywołania API do jednego IP. Ustaw w polu Dozwolone IP na stronie API. Żądania z innych IP są odrzucane nawet z prawidłowym tokenem.

Uwierzytelnianie samego proxy

Proxy używają loginu/hasła (domyślnie) lub autoryzacji IP. Ustawiane w panelu dla każdego proxy. Przy autoryzacji IP poświadczenia nie są wysyłane w połączeniu.

Podstawowe pojęcia

IP operatorów mobilnych

Każde proxy w sieci to prawdziwy modem 4G/5G podłączony do prawdziwego operatora mobilnego (MTS, Beeline, T-Mobile, Vodafone itp.). Strony docelowe widzą ruch jakby pochodził ze zwykłego smartfona w sieci komórkowej — nie z datacenter.

CGNAT — dlaczego mobilne IP są «współdzielone»

Operatorzy mobilni routują tysiące abonentów przez to samo publiczne IP za pomocą Carrier-Grade NAT. Zbanowanie jednego IP zablokowałoby prawdziwych klientów, więc systemy antyfraud traktują mobilne IP łagodniej niż rezydenckie czy datacenter. To strukturalna przyczyna wyższego poziomu zaufania mobilnych proxy.

Rotacja

Zmiana zewnętrznego IP na żądanie poprzez ponowne połączenie modemu:

  • Przez link — żądanie GET na unikalny URL (changeip.host/?proxy_key=…) wyzwala rotację. Zwraca nowe IP w JSON.
  • Przez timer — automatyczna rotacja co N minut (konfigurowalne na proxy).
  • Bez rotacji (sticky) — IP zachowane do czasu żądania zmiany.

Sesje sticky

Sesja «sticky» to po prostu proxy z wyłączoną rotacją (lub długim timerem). Wszystkie żądania przez to proxy dzielą jedno IP podczas sesji. Przydatne dla wieloetapowych przepływów (login → koszyk → płatność, parsing wielu stron jednej sesji).

Persystencja sesji między rotacjami

Cookies, localStorage i sesje TLS żyją na kliencie — nie na proxy. Po rotacji bieżąca sesja w przeglądarce/bibliotece przetrwa; zmienia się tylko source IP.

Integracje

Gotowe snippety dla najpopularniejszych stacków. Zastąp PROXY_HOST, PROXY_PORT, LOGIN, PASSWORD wartościami z odpowiedzi get_my_proxy.

import requests proxy = "http://LOGIN:PASSWORD@PROXY_HOST:PROXY_PORT" r = requests.get("https://httpbin.org/ip", proxies={"http": proxy, "https": proxy}, timeout=15) print(r.json())
import { HttpsProxyAgent } from "https-proxy-agent"; const agent = new HttpsProxyAgent("http://LOGIN:PASSWORD@PROXY_HOST:PROXY_PORT"); const res = await fetch("https://httpbin.org/ip", { agent }); console.log(await res.json());
proxyURL, _ := url.Parse("http://LOGIN:PASSWORD@PROXY_HOST:PROXY_PORT") client := &http.Client{Transport: &http.Transport{Proxy: http.ProxyURL(proxyURL)}} resp, _ := client.Get("https://httpbin.org/ip") defer resp.Body.Close() body, _ := io.ReadAll(resp.Body) fmt.Println(string(body))
curl -x http://LOGIN:PASSWORD@PROXY_HOST:PROXY_PORT https://httpbin.org/ip # SOCKS5 curl --socks5 LOGIN:PASSWORD@PROXY_HOST:SOCKS_PORT https://httpbin.org/ip
import { chromium } from "playwright"; const browser = await chromium.launch({ proxy: { server: "http://PROXY_HOST:PROXY_PORT", username: "LOGIN", password: "PASSWORD", }, }); const page = await browser.newPage(); await page.goto("https://httpbin.org/ip"); console.log(await page.content()); await browser.close();
from seleniumwire import webdriver opts = {"proxy": { "http": "http://LOGIN:PASSWORD@PROXY_HOST:PROXY_PORT", "https": "http://LOGIN:PASSWORD@PROXY_HOST:PROXY_PORT", "no_proxy": "localhost,127.0.0.1", }} driver = webdriver.Chrome(seleniumwire_options=opts) driver.get("https://httpbin.org/ip") print(driver.page_source) driver.quit()
Oficjalne SDK i pełne przykłady na GitHub: Python · Node · PHP · Specyfikacja OpenAPI.

Zastosowania

Co deweloperzy faktycznie budują z mobilnymi proxy. Każda karta to typowy wzorzec.

Web scraping

Rotacja IP na żądanie lub na sesję, w połączeniu z narzędziami browser fingerprinting.

Automatyzacja przeglądarki

Playwright / Selenium z jednym proxy na worker, sticky sesje dla przepływów stateful.

Weryfikacja i QA

Sprawdzanie treści geotargetowanej, cen, wariantów A/B z prawdziwych sieci operatorskich.

Sprawdzanie SERP/reklam

Scraping wyników wyszukiwania, weryfikacja umieszczania reklam, sprawdzanie kreacji mobilnych.

SMM i multi-account

Jedno mobilne proxy na konto — profil IP carrier-grade najbardziej przypomina prawdziwego użytkownika.

Pipeline'y danych

Workery w tle za pulą rotacyjną, retry przy rotacji, ustrukturyzowane logowanie błędów.

API Reference

Pełny REST reference — każdy endpoint, parametr i format odpowiedzi — żyje na dedykowanej stronie API. Personalizuje się automatycznie tokenem przy zalogowaniu.

Pełna dokumentacja REST API

~15 endpointów: zarządzanie proxy, rotacja IP, blacklists, lookup geo/operator, saldo.

Otwórz API Reference

Najczęściej używane endpointy

  • GET /api.html?command=get_my_proxy
  • GET CHANGEIP_HOST/?proxy_key=…
  • GET /api.html?command=proxy_ip&proxy_id=…
  • GET /api.html?command=change_equipment&…
  • GET /api.html?command=get_geo_operator_list

Rozwiązywanie problemów

Top problemy deweloperów ze standardową naprawą. Pełny FAQ na stronie FAQ.

Połączenie wygasa / odrzucone

Sprawdź czy proxy jest aktywne w panelu, IP allowlist pasuje do IP wyjściowego twojej maszyny i używasz właściwego portu dla HTTP vs SOCKS5.

Rotacja zwraca to samo IP

Operator może ponownie przypisać ten sam adres — normalne dla małych puli. Wyzwól rotację ponownie lub zmień operatora przez change_equipment.

Strona docelowa pokazuje captchę

Captche korelują z fingerprintem, nie tylko z IP. Łącz mobilne IP z mobilnym User-Agent, mobilnym viewport i spójnym profilem TLS. Patrz Generator fingerprintu.

Sesja nieoczekiwanie wygasa

Auto-rotacja wyzwala się w środku sesji. Wyłącz rotację timerową lub przechwyć cookies/tokeny przed rotacją.

Niezgodność geo / nieprawidłowy kraj

Operatorzy mobilni czasem routują przez zagraniczne węzły. Zweryfikuj przez proxy_ip i w razie potrzeby zmień trasę przez change_equipment.

HTTP 429 z API

Trafiłeś na limit. Dodaj exponential backoff, cachuj odpowiedzi get_my_proxy, wysyłaj listy proxy_id tam gdzie wspierane.

Najlepsze praktyki

Strategia retry

Owijaj każde żądanie proxy w retry-with-jitter (3 próby, 500ms–3s). Na 429 — exponential backoff. Na błędach połączenia — rotacja przed retry.

Zarządzanie sesjami

Jedno proxy na sesję logiczną. Persystuj cookies/localStorage per worker. Nigdy nie dziel HTTP keep-alive pool między rotacjami.

Interwały rotacji

Dla scrapingu — rotuj na żądanie lub co 30–120 sek. Dla pracy z kontami — długie sesje sticky (godziny), rotacja tylko na jawny logout/error.

Spójność przeglądarki

Dopasuj User-Agent do operatora (4G → mobilny UA). Ustaw strefę czasową i locale do regionu proxy. Wyłącz WebRTC IP leak.

Unikanie banów

Trzymaj rate żądań w granicach ludzkich. Randomizuj timing. Łącz mobilne IP z mobilnym fingerprintem, nie z desktopowym.

Obserwowalność

Loguj proxy_id, bieżące IP, kod odpowiedzi i eventy rotacji razem. Gdy coś się zepsuje, będziesz wiedział czy chodziło o IP, fingerprint czy cel.