API
Tagairt API
Tagairt iomlán, críochphointe ar chríochphointe, don API REST de chuid mobileproxy.app. Léiríonn gach cosán, réimse, agus sampla anseo an doiciméad beo OpenAPI óna dtógtar an API. Bun-URL https://mobileproxy.app/api/v1.
Fíordheimhniú agus bun-URL
Tá gach críochphointe faoi https://mobileproxy.app/api/v1 agus teastaíonn token iompróra uaidh. Cruthaigh ceann sa deais faoi D'fhorbróirí → tokens API, nó le POST /tokens agus tú sínithe isteach. Taispeántar an rún uair amháin — stóráil é. Seol é le gach iarratas:
Authorization: Bearer mpx_live_…Is tokens cuntais iad tokens a thosaíonn le mpx_live_. Glaonn an aip Android féin ar na críochphointí /device/* agus fíordheimhníonn siad le token gléis in aghaidh an fhóin (mpxdev_…) a eisítear ag an bpéireáil — de ghnáth ní ghlaonn tú orthu riamh.
Is JSON iad earráidí le teachtaireacht dhaonna agus cód meaisín:
{ "error": "No such device.", "code": "not_found" }| Réimse | Cineál | Cur síos |
|---|---|---|
| 401 | unauthorized | Token ar iarraidh, míchumtha, nó cúlghairthe. |
| 403 | forbidden | Token bailí ach gan cead. |
| 404 | not_found | Níl an acmhainn ann ar an gcuntas seo. |
| 502 | control_plane_unavailable | Ní raibh an geata/plána rialaithe insroichte ar feadh tamaill — bain triail arís. |
Cuntas
GET /me — cé mise? Filleann sé an cuntas mar aon le líonta beo de na síntiúis agus na tokens API.
curl https://mobileproxy.app/api/v1/me \
-H "Authorization: Bearer mpx_live_…"
# → { "id": "u_8c31f0", "email": "you@example.com",
# "created_at": "2026-06-28T14:02:11.000Z",
# "subscriptions": 3, "api_tokens": 2,
# "plan": "beta", "balance": "0.00" }Síntiúis
Is é síntiús (id sub_…) an sliotán marthanach atá agat: maireann a name cairdiúil, a shocruithe, agus a phroxythe fiú agus an fón faoi ag athrú. Is é a device an fón atá á thiomáint faoi láthair (nó null nuair nach bhfuil sé péireáilte), agus tá sé inmhalartaithe — coinníonn malartú gach críochphointe proxy.
Liostaigh síntiúis — gach ceann lena ghléas péireáilte cumaiscthe le stádas beo an gheata (online = tá tollán an proxy suas):
curl https://mobileproxy.app/api/v1/subscriptions \
-H "Authorization: Bearer mpx_live_…"
# → { "subscriptions": [ {
# "id": "sub_760c1fc8ddab", "name": "Paris SFR",
# "status": "active", "wifi_split": true, "created_at": "…",
# "device": { "id": "phone_ac862619408e", "model": "Galaxy S8",
# "hardware_id": "352091081234567", "hardware_type": "imei",
# "status": "online", "exit_ip": "77.136.66.63",
# "carrier": "SFR", "last_seen": "…", "paired_at": "…" } } ] }Cruthaigh síntiús (gan péireáil), ansin péireáil nó malartaigh an fón. Filleann POST /subscriptions/{id}/pair PIN bailí ar feadh ~3 nóiméad; nuair a chuirtear isteach san aip Android é ceanglaíonn sé an fón. Ar shliotán a bhfuil gléas cheana aige is malartú é seo (mode: "swap") — cuirtear an seanfhón ar scor agus coinníonn gach proxy a host:port agus a dhintiúir:
curl -X POST https://mobileproxy.app/api/v1/subscriptions \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" -d '{ "name": "Paris SFR" }'
# → { "id": "sub_760c1fc8ddab", "status": "unpaired", "device": null, … }
# Pair (or swap) a phone into it
curl -X POST https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/pair \
-H "Authorization: Bearer mpx_live_…"
# → { "subscription_id": "sub_760c1fc8ddab", "mode": "new",
# "pairing": { "pin": "483-119-702", "expires_at": "…" }, … }Faigh, nuashonraigh, nó cealaigh síntiús amháin. Athraíonn POST an t-ainm, description saorfhoirme (uasmhéid 200 carachtar, glanann null é), rogha wifi_split (curtha i scuaine chuig an bhfón péireáilte, curtha i bhfeidhm ag a chéad vótáil eile ~25 s), nó shared_speed_kbps — an chaoi a roinntear luas an ghléis idir a phroxythe. Roinneann -1 (molta) go huathoibríoch é: tomhaiseann an plána rialaithe fíorluas an ghléis ón tréchur beo (athchothromú ~3 s), tagann proxythe atá gnóthach ag an am céanna le chéile chuig sciartha comhionanna de, agus faigheann proxy a oibríonn leis féin lánluas. Roinneann luach > 0 iomlán socraithe an ghléis sin ar an mbealach céanna ina áit. Coinnítear luachanna speed_limit_kbps in aghaidh an proxy ach ní chuirtear i bhfeidhm iad fad is atá ceachtar acu ar siúl; múchann 0 an roinnt. Scriosann DELETE a ghléas agus a phroxythe, scaoileann sé calafoirt an gheata, agus scriosann sé stair an tsliotáin — ní féidir é a chur ar ceal:
# Fetch one subscription
curl https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID \
-H "Authorization: Bearer mpx_live_…"
# Rename / describe / set Wi-Fi split / share the device's speed equally (auto)
curl -X POST https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "name": "Paris SFR", "description": "Client X — farm slot 2", "wifi_split": true, "shared_speed_kbps": -1 }'
# Cancel (irreversible)
curl -X DELETE https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID \
-H "Authorization: Bearer mpx_live_…"
# → { "deleted": true, "id": "sub_760c1fc8ddab" }Proxythe
Is é proxy críochphointe aonphrótacail amháin (SOCKS5 nó HTTP) ar ghléas, lena fhíordheimhniú, a liosta bán foinse-IP, a theorainn luais, agus a rialacha fearainn féin. Is teidlíocht phlean é cé mhéad is féidir le gléas a fhreastal ag an am céanna (10 ar Standard, 20 ar Pro) — cruthaigh ceann in aghaidh an chustaiméara nó na huirlise, agus cúlghair ceann ar bith gan cur isteach ar an gcuid eile. Filleann cruthú thar chaidhp do phlean 409 proxy_limit_reached.
Cruthaigh proxy — déanann sé ainm úsáideora/pasfhocal úr; filltear an pasfhocal go soiléir uair amháin, anseo. Roghnaigh protocol (socks5 nó http) agus roghnach cuir traffic_limit_bytes ar aghaidh chun caidhp thrácht chrua a thabhairt dó ón tús:
curl -X POST https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/proxies \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "protocol": "socks5", "traffic_limit_bytes": 5368709120 }'
# → { "id": "acc_5f734b9270e8", "subscription_id": "sub_760c1fc8ddab",
# "protocol": "socks5",
# "host": "173.249.36.102", "host_v6": "2a02:c207:2319:6018::1",
# "port": 30000,
# "username": "u04c770", "password": "k7Qp2mXe9wZ4",
# "endpoint": "socks5://u04c770:k7Qp2mXe9wZ4@173.249.36.102:30000",
# "endpoint_ipv6": "socks5://u04c770:k7Qp2mXe9wZ4@[2a02:c207:2319:6018::1]:30000",
# "ip_whitelist": [], "speed_limit_kbps": 0,
# "domain_mode": "none", "domain_rules": [],
# "status": "active", "traffic_limit_bytes": 5368709120, "bytes_used": 0,
# "over_limit": false, "created_at": "…" }endpoint an URI IPv4, is é endpoint_ipv6 an calafort céanna thar IPv6 (tá an litriúil v6 idir lúibíní, de réir chomhréir URL). Glacann an liosta bán foinse-IP le seoltaí IPv4 agus IPv6 agus CIDRanna, agus is féidir le cinn scríbe a bheith ina IPv6 freisin: fágann SOCKS5 CONNECT chuig litriúil IPv6 nó fearann atá AAAA amháin thar IPv6 iompróra an fhóin nuair a bhíonn ceann ag an SIM.Cuir polasaí proxy in eagar — mód fíordheimhnithe, liosta bán IP, teorainn luais, agus rialacha fearainn, curtha i bhfeidhm beo ar an ngeata (tá protocol socraithe — scrios agus athchruthaigh ina áit):
curl -X PATCH \
https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/proxies/PROXY_ID \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "speed_limit_kbps": 2000,
"domain_mode": "whitelist", "domain_rules": ["api.example.com"] }'Liostaigh proxythe — ar ghléas amháin, nó gach proxy ar fud an chuntais iomláin:
# One device
curl https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/proxies \
-H "Authorization: Bearer mpx_live_…"
# Account-wide
curl https://mobileproxy.app/api/v1/proxies \
-H "Authorization: Bearer mpx_live_…"
# → { "proxies": [ { …Proxy… }, … ] }Proxythe atá ag obair lena n-IPanna amach — iompraíonn an liostú cuntas-iomlán exit_ip reatha gach proxy, stádas beo an ghléis, agus breithiúnas working (an gléas ar líne, gan choinneáil billeála ná láimhe, gan a chaidhp tráchta a bheith sáraithe; deir not_working_reason cén fáth nach bhfuil). Scag le ?working=true, agus cuir ?unique_ip=true leis chun proxy amháin a choinneáil in aghaidh gach IP amach ar leith — déantar dhá SIM taobh thiar den NAT iompróra céanna a bhratú freisin trí duplicate_ip:
# Working proxies only, one per distinct exit IP — a paste-ready pool
curl "https://mobileproxy.app/api/v1/proxies?working=true&unique_ip=true" \
-H "Authorization: Bearer mpx_live_…"
# → { "proxies": [ {
# "endpoint": "socks5://user:pass@173.249.36.102:30012",
# "exit_ip": "77.136.66.44", "device_status": "online",
# "working": true, "not_working_reason": null,
# "duplicate_ip": false, … }, … ] }Cúlghair proxy — stopann sé an t-éisteoir sin láithreach; leanann gach proxy eile ar an ngléas ag obair:
curl -X DELETE \
https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/proxies/PROXY_ID \
-H "Authorization: Bearer mpx_live_…"
# → { "deleted": true, "id": "acc_5f734b9270e8" }Teorainneacha úsáide agus dul in éag in aghaidh an proxy
Tabhair teorainn úsáide do phroxy ar bith — foirfe nuair a athdhíolann tú rochtain agus a mhéadraíonn tú gach custaiméir do liúntas sonraí. Socraigh nó athraigh é am ar bith (glanann 0 é), ag an gcruthú, trí PATCH, nó leis an gcríochphointe tiomnaithe thíos. Nuair a shroicheann bytes_used an chaidhp déantar an proxy a bhlocáil: coinníonn sé a chalafort agus a dhintiúir ach diúltaíonn sé do gach iarratas, agus casann over_limit ina true. Ardaigh an teorainn os cionn na méide a úsáideadh — nó glan é — agus atosaíonn an proxy láithreach, an críochphointe céanna, gan athchumraíocht. Tuairiscíonn liostú proxythe freisin traffic_limit_bytes, bytes_used beo, agus over_limit gach ceann acu.
curl -X POST \
https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/proxies/PROXY_ID/limit \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "traffic_limit_bytes": 10737418240 }' # 10 GB — or 0 to remove
# → { "proxy_id": "acc_5f734b9270e8", "subscription_id": "sub_760c1fc8ddab",
# "traffic_limit_bytes": 10737418240, "over_limit": false }Dul in éag bunaithe ar am — tabhair meandar expires_at do phroxy (ISO 8601, sa todhchaí) ag an gcruthú nó trí PATCH; glanann null dul in éag atá ar feitheamh. Ag an nóiméad sin cuirtear an proxy ar scor — go buan, murab ionann agus an bhlocáil inchúlaithe teorann úsáide. Chun custaiméir a athnuachan, cruthaigh proxy úr (calafort agus dintiúir nua). Foirfe chun pasanna lae/seachtaine a dhíol:
# A proxy that stops serving in 7 days
curl -X POST https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/proxies \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "protocol": "socks5", "expires_at": "2026-07-13T09:00:00Z" }'
# Extend or clear it later
curl -X PATCH \
https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/proxies/PROXY_ID \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "expires_at": "2026-07-20T09:00:00Z" }' # or null to removeVPN configs (WireGuard)
Turn a SOCKS5 username/password proxy into a full-device WireGuard tunnel. Each proxy can carry one WireGuard config; creation requires the VPN add-on. Legacy OpenVPN rows remain downloadable and revocable, but new OpenVPN configs cannot be provisioned.
# Create a WireGuard config on a proxy
curl -X POST \
https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/proxies/PROXY_ID/vpn-configs \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "kind": "wireguard", "name": "My laptop" }'
# → { "id": "vpn_9f2c1a0b7e", "kind": "wireguard", "client_ip": "10.77.0.2",
# "config_text": "[Interface]\nPrivateKey = …\n[Peer]\n…", … }
# List a proxy's configs (metadata + usage vs the one-config cap)
curl https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/proxies/PROXY_ID/vpn-configs \
-H "Authorization: Bearer mpx_live_…"
# Re-download the file straight to disk
curl -OJ \
https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/proxies/PROXY_ID/vpn-configs/vpn_9f2c1a0b7e/file \
-H "Authorization: Bearer mpx_live_…"
# Revoke (drops the WireGuard peer and kills any live session)
curl -X DELETE \
https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/proxies/PROXY_ID/vpn-configs/vpn_9f2c1a0b7e \
-H "Authorization: Bearer mpx_live_…"Use the file with wg-quick up ./mpx-9f2c1a0b.conf or import it into a WireGuard client. Rotating the proxy also rotates the VPN exit.
Rothlú IP
Iarrann rothlú IP úr ar an iompróir. Tá sé in aghaidh an ghléis — faigheann gach proxy ar an ngléas an IP nua — curtha i scuaine chuig an bhfón agus curtha i bhfeidhm laistigh de thimthriall vótála amháin (~25 s).
exit_ip ar an ngléas nó ó /ip-history.Rothlaigh anois — cuir rothlú aonuaire i scuaine:
curl -X POST https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/change-ip \
-H "Authorization: Bearer mpx_live_…"
# → { "status": "rotating", "subscription_id": "sub_760c1fc8ddab",
# "command_id": "cmd_a41b",
# "note": "IP rotation on mobile networks is best-effort; …" }Rothlú IP uathúil — cuir unique: true ar aghaidh chun leanúint ag rothlú go dtí go mbíonn an IP amach ina cheann nach bhfacthas le window_min nóiméad deiridh de stair IP an tsíntiúis seo (réamhshocrú 60, uasmhéid 1440), ag baint triail suas le max_attempts uair (réamhshocrú 3, uasmhéid 5). Cosnaíonn gach iarracht timthriall rothlaithe iomlán (~30–90 s); vótáil an leagan GET le haghaidh dul chun cinn. Is féidir le hiompróirí IP a atheisiúint go dlisteanach, mar sin is toradh macánta féideartha é exhausted:
curl -X POST https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/change-ip \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "unique": true, "window_min": 60, "max_attempts": 3 }'
# → { "status": "rotating", "request_id": "rr_18d2c4", "command_id": "cmd_a41b",
# "unique": { "window_min": 60, "max_attempts": 3 }, … }
# Poll for the outcome (active | succeeded | exhausted | superseded | expired)
curl https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/change-ip \
-H "Authorization: Bearer mpx_live_…"
# → { "request_id": "rr_18d2c4", "status": "succeeded",
# "attempts_used": 2, "attempts_max": 3, "window_min": 60,
# "started_ip": "77.136.66.63", "result_ip": "77.136.67.101", … }Rothlú builc — rothlaigh gach gléas péireáilte in aon ghlao amháin le all: true, nó tacar roghnaithe trí subscription_ids (teastaíonn ceann amháin nó an ceann eile, mar sin ní féidir le hiarratas míchumtha do fhlít iomlán a rothlú de thaisme go deo). Glacann sé leis na roghanna unique céanna leis an gcríochphointe in aghaidh an tsíntiúis, agus tuairiscíonn gach síntiús a thoradh féin — ní theipeann an baisc riamh mar gheall ar shliotán amháin atá ar coinneáil nó gan phéireáil. Teastaíonn ról an oibreora in aghaidh an tsíntiúis:
# Rotate every paired device at once (explicit opt-in)…
curl -X POST https://mobileproxy.app/api/v1/proxies/rotate \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "all": true }'
# …or a chosen set, with the unique-IP options
curl -X POST https://mobileproxy.app/api/v1/proxies/rotate \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "subscription_ids": ["sub_760c1fc8ddab"], "unique": true }'
# → { "results": [ { "subscription_id": "sub_760c1fc8ddab",
# "status": "rotating", "command_id": "…", "request_id": "rr_18d2c4" } ],
# "rotating": 1, "skipped": 0, … }Naisc rothlaithe — URL comharthaithe a rothlaíonn IP an ghléis seo nuair a fhaightear é, gan aon cheanntásc fíordheimhnithe (is é an token an rún). Greamaigh isteach in aon uirlis a thacaíonn le "rotation URL" é. Liostaigh, cruthaigh, agus cúlghair iad:
# List rotation links
curl https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/rotation-links \
-H "Authorization: Bearer mpx_live_…"
# → { "rotation_links": [ { "token": "rk_9f2c81d4e7",
# "url": "https://mobileproxy.app/rotate/rk_9f2c81d4e7", "created_at": "…" } ] }
# Create one
curl -X POST https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/rotation-links \
-H "Authorization: Bearer mpx_live_…"
# → { "token": "rk_9f2c81d4e7", "url": "https://mobileproxy.app/rotate/rk_9f2c81d4e7" }
# Revoke one
curl -X DELETE https://mobileproxy.app/api/v1/rotation-links/ROTATION_TOKEN \
-H "Authorization: Bearer mpx_live_…"
# → { "deleted": true, "token": "rk_9f2c81d4e7" }Rothlú sceidealta (uainithe) — socraigh eatramh rothlaithe uathoibríoch i nóiméid (múchann 0 é; uasmhéid 1440). Maireann sé mar rotation_interval_min ar an ngléas agus brúann sé ordú set_rotation_interval a chuireann an fón i bhfeidhm ag a chéad vótáil eile, mar sin athdhiailíonn sé ar an gcadhaois sin leis féin:
# Read the current settings
curl https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/rotation \
-H "Authorization: Bearer mpx_live_…"
# → { "subscription_id": "sub_760c1fc8ddab", "interval_minutes": 0,
# "airplane_seconds": 5, "stale_ip_alert_minutes": 0 }
# Rotate automatically every 15 minutes
curl -X POST https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/rotation \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "interval_minutes": 15 }'
# → { "status": "set", "subscription_id": "sub_760c1fc8ddab",
# "interval_minutes": 15, "airplane_seconds": 5,
# "stale_ip_alert_minutes": 0, "command_id": "cmd_a41b" }Am istigh eitleáin — cé chomh fada is a choinníonn an fón mód Eitleáin ON le linn gach athrú IP (airplane_seconds, 3–60, réamhshocrú 5). Ní scaoileann roinnt iompróirí an seanléas ach amháin tar éis coinneáil níos faide; ardaigh é seo má bhíonn rothluithe ag filleadh an IP céanna i gcónaí. Baineann sé le rothluithe sceidealta, deais, agus API araon:
curl -X POST https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/rotation \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "airplane_seconds": 20 }'
# → { "status": "set", "subscription_id": "sub_760c1fc8ddab",
# "interval_minutes": 15, "airplane_seconds": 20,
# "stale_ip_alert_minutes": 0, "command_id": "cmd_b52c" }DNS saincheaptha — na réiteoirí a úsáideann an fón le haghaidh cuardach fearainn próicseáilte (suas le 3 litriúil IP; cuireann an fón an chéad cheann i bhfeidhm agus athdhiailíonn sé a thollán). Athchóiríonn liosta folamh DNS réamhshocraithe an iompróra:
# Read
curl https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/dns \
-H "Authorization: Bearer mpx_live_…"
# → { "subscription_id": "sub_760c1fc8ddab", "dns_servers": [] }
# Set (and later send [] to go back to carrier DNS)
curl -X POST https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/dns \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "dns_servers": ["1.1.1.1", "8.8.8.8"] }'
# → { "status": "set", "subscription_id": "sub_760c1fc8ddab",
# "dns_servers": ["1.1.1.1", "8.8.8.8"], "command_id": "cmd_c63d" }Monatóireacht
Stair IP amach — IPanna amach le déanaí a thuairiscigh an fón, dí-dhúbláilte (ró nua nuair a athraigh an IP i ndáiríre). An bealach iontaofa chun a fhíorú gur tháinig rothlú i dtír:
curl https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/ip-history \
-H "Authorization: Bearer mpx_live_…"
# → { "subscription_id": "sub_760c1fc8ddab", "ip_history": [
# { "ip": "77.136.66.63", "carrier": "SFR", "ts": "…" }, … ] }Paraiméadair cheiste roghnacha: teorannaíonn from/to (ISO 8601) an fhuinneog, cuireann limit caidhp ar na hiontrálacha (réamhshocrú 50, uasmhéid 500), agus filleann group=day líonta athraithe in aghaidh an lae ina n-áit — cuir tz ar aghaidh mar do fhritháireamh UTC i nóiméid ionas go mbeidh laethanta bailithe i do chrios ama. Seo an rud a chumhachtaíonn féilire stair IP an deais:
# Entries for one day
curl "https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/ip-history?from=2026-07-04T22:00:00Z&to=2026-07-05T22:00:00Z&limit=500" \
-H "Authorization: Bearer mpx_live_…"
# Per-day counts for a month (tz = minutes east of UTC, e.g. 120 for CEST)
curl "https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/ip-history?group=day&tz=120&from=2026-06-30T22:00:00Z&to=2026-07-31T22:00:00Z" \
-H "Authorization: Bearer mpx_live_…"
# → { "subscription_id": "sub_760c1fc8ddab", "days": [
# { "day": "2026-07-03", "changes": 9 }, { "day": "2026-07-05", "changes": 2 } ] }Foláirimh IP — faireann an freastalaí do fhlít (~gach 60 s) agus osclaíonn sé foláireamh nuair a theastaíonn aird ó rud éigin: stale_ip nuair a bhíonn gléas ar líne ach nár athraigh a IP amach ar feadh níos faide ná tairseach an tsíntiúis (socraigh stale_ip_alert_minutes ar /rotation; 0 = as, 2–10080), agus duplicate_ip nuair a thuairiscíonn dhá cheann de do ghléasanna an IP amach céanna (is féidir le NAT iompróra seoladh amháin a thabhairt do dhá SIM — rothlaigh ceann amháin chun iad a scaradh). Réitíonn foláirimh go huathoibríoch nuair a ghlanann an coinníoll; taispeántar iad freisin i gclog foláirimh an deais:
# Turn on stale-IP alerts: warn after 60 min without an IP change
curl -X POST https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/rotation \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "stale_ip_alert_minutes": 60 }'
# Poll open alerts (feed this to your own monitoring)
curl https://mobileproxy.app/api/v1/alerts \
-H "Authorization: Bearer mpx_live_…"
# → { "alerts": [
# { "id": "42", "sub_id": "sub_760c1fc8ddab", "sub_name": "Galaxy S8",
# "kind": "stale_ip",
# "message": "IP unchanged for 75 min (alert threshold 60 min) — still 77.136.66.44",
# "detail": { "ip": "77.136.66.44", "age_min": 75, "threshold_min": 60 },
# "created_at": "…", "resolved_at": null, "seen_at": null },
# { "id": "41", "sub_id": "sub_9d8e7f6a5b4c", "sub_name": "Galaxy A32",
# "kind": "duplicate_ip",
# "message": "Exit IP 77.136.67.33 is also used by “Galaxy S8” — rotate one device to separate them",
# "detail": { "ip": "77.136.67.33",
# "shared_with": [ { "sub_id": "sub_760c1fc8ddab", "name": "Galaxy S8" } ] },
# "created_at": "…", "resolved_at": null, "seen_at": null } ],
# "unseen": 2 }
# Include resolved history; filter to one subscription
curl "https://mobileproxy.app/api/v1/alerts?status=all&subscription=SUBSCRIPTION_ID" \
-H "Authorization: Bearer mpx_live_…"
# Reset the dashboard's unseen badge (never resolves anything)
curl -X POST https://mobileproxy.app/api/v1/alerts/seen \
-H "Authorization: Bearer mpx_live_…"
# → { "status": "ok", "marked": 2 }Trácht do ghléas — bearta a chomhairtear ag an ngeata, scoilte in aghaidh an proxy. Áisiúil chun custaiméirí a athdhíolann tú a bhilleáil:
curl https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/traffic \
-H "Authorization: Bearer mpx_live_…"
# → { "subscription_id": "sub_760c1fc8ddab",
# "bytes_sent": 10485760, "bytes_recv": 262144000, "bytes_total": 272629760,
# "per_proxy": [ { "proxy_id": "acc_5f734b9270e8",
# "bytes_sent": 10485760, "bytes_recv": 262144000 } ] }Miondealú tráchta laethúil — bearta seolta/faighte in aghaidh an lae, ó shamplaí réiteach nóiméid a choinnítear ar an tsraith gréasáin, mar sin maireann an tsraith trí mhalartuithe gléis agus scor proxy. Marcálann data_since an sampla is sine — níl aon sonraí ag laethanta roimhe, rud nach ionann agus trácht nialasach. Cuir tz (do fhritháireamh UTC i nóiméid) ar aghaidh ionas go mbeidh laethanta bailithe i do chrios ama; fuinneoga suas le 92 lá:
curl "https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/traffic/by-day?tz=120" \
-H "Authorization: Bearer mpx_live_…"
# → { "subscription_id": "sub_760c1fc8ddab", "tz": 120, "data_since": "…",
# "days": [ { "day": "2026-07-06", "bytes_sent": 10485760,
# "bytes_recv": 262144000, "bytes_total": 272629760 } ],
# "total": { "bytes_sent": 10485760, "bytes_recv": 262144000,
# "bytes_total": 272629760 } }Aga fónaimh laethúil — soicindí suas/síos in aghaidh an lae fillte ó thaifead buille croí an ghléis (aontaithe trí mhalartuithe gléis). Tomhaiseann sé beogacht buille croí an ghléis (cadhaois ~25 s, tairseach bhearna ~90 s), ní inúsáidteacht an tolláin ó cheann go ceann. Is é current an staid faoi láthair; clúdaíonn uptime_pct an chuid a breathnaíodh de gach lá:
curl "https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/uptime?tz=120" \
-H "Authorization: Bearer mpx_live_…"
# → { "subscription_id": "sub_760c1fc8ddab", "tz": 120, "current": "up",
# "data_since": "…",
# "days": [ { "day": "2026-07-06", "up_seconds": 31547,
# "down_seconds": 253, "uptime_pct": 99.2 } ] }Úsáid ar fud an chuntais — achoimre ar fud gach gléis:
curl https://mobileproxy.app/api/v1/usage/summary \
-H "Authorization: Bearer mpx_live_…"
# → { "subscriptions": 3, "proxies": 5,
# "bytes_sent": 31457280, "bytes_recv": 786432000, "bytes_total": 817889280 }SMS / OTP
SMS faighte — teachtaireachtaí isteach ar SIM an fhóin seo, an ceann is nuaí ar dtús. Úsáideach chun cóid fíoraithe aonuaire (OTPanna) a léamh ar fhóin atá agat. Braitheann sé ar chead roghnach SMS-faighte na haipe; má diúltaíodh é sin ar an ngléas, fanann an liosta folamh:
curl https://mobileproxy.app/api/v1/subscriptions/SUBSCRIPTION_ID/sms \
-H "Authorization: Bearer mpx_live_…"
# → { "subscription_id": "sub_760c1fc8ddab", "messages": [
# { "id": "1042", "sender": "+15550101",
# "body": "Your verification code is 314159",
# "received_at": "2026-07-05T14:12:00.000Z" }, … ] }Freastalaithe
Suíomhanna geata — na suíomhanna óna bhfreastalaítear do phroxythe:
curl https://mobileproxy.app/api/v1/servers/locations \
-H "Authorization: Bearer mpx_live_…"
# → { "locations": [ { "id": "eu-de-1", "host": "173.249.36.102",
# "region": "EU · Germany (Frankfurt)", "country": "DE",
# "protocols": ["socks5"], "pool": "mobile" } ] }Tokens API
Liostaigh, cruthaigh, agus cúlghair tokens API. Taispeántar rún token nua-chruthaithe uair amháin — stóráil láithreach é; ní féidir é a fháil arís go deo. Bíonn éifeacht le cúlghairm láithreach:
# List (metadata only — never the secret)
curl https://mobileproxy.app/api/v1/tokens \
-H "Authorization: Bearer mpx_live_…"
# → { "tokens": [ { "id": "tk_51ad", "name": "storefront",
# "prefix": "mpx_live_9f2c", "created_at": "…", "last_used_at": "…" } ] }
# Create (secret shown once)
curl -X POST https://mobileproxy.app/api/v1/tokens \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "name": "storefront" }'
# → { "id": "tk_51ad", "name": "storefront",
# "token": "mpx_live_9f2c81d4e7…", "prefix": "mpx_live_9f2c",
# "scope_subscription_id": null, "readonly": false,
# "note": "Store this token now — it will not be shown again." }
# Revoke
curl -X DELETE https://mobileproxy.app/api/v1/tokens/TOKEN_ID \
-H "Authorization: Bearer mpx_live_…"
# → { "deleted": true, "id": "tk_51ad" }Eochracha scóipithe agus léamh-amháin
Tarmligean rochtana gan do chuntas a roinnt. Cuir subscription_id ar aghaidh chun token a scóipeáil chuig síntiús amháin, agus readonly: true chun é a theorannú d'iarratais GET. Ní féidir le token scóipithe teacht ach ar chríochphointí an tsíntiúis sin féin (mar aon le /me); diúltaítear do token léamh-amháin ar aon scríbhinn. Is srianta iad araon curtha os cionn do chuntais — ní féidir le heochair scóipithe teacht ar shonraí cuntais eile go deo.
# A read-only key for ONE subscription — safe to hand a teammate or a monitor
curl -X POST https://mobileproxy.app/api/v1/tokens \
-H "Authorization: Bearer mpx_live_…" \
-H "Content-Type: application/json" \
-d '{ "name": "customer-42",
"subscription_id": "sub_760c1fc8ddab",
"readonly": true }'
# → { …, "scope_subscription_id": "sub_760c1fc8ddab", "readonly": true }
# With that key: a GET on its own subscription works…
curl https://mobileproxy.app/api/v1/subscriptions/sub_760c1fc8ddab/traffic \
-H "Authorization: Bearer mpx_live_scoped…" # 200
# …but another subscription, the account-wide list, or any write is refused.
curl -X POST https://mobileproxy.app/api/v1/subscriptions/sub_760c1fc8ddab/change-ip \
-H "Authorization: Bearer mpx_live_scoped…" # 401 (read-only)