Hakuna KYC — hakuna kitambulisho, selfie wala nyaraka
Lugha: Kiswahili
Chagua 1 GB

Rejea ya API

Proxy za makazi na vitambulisho

Dhibiti usajili wa data (za makazi na za 4G/5G zenye anwani zinazobadilika kwa GB): vitambulisho vya proxy, watumiaji wadogo wenye vitambulisho na kikomo chao cha data, matumizi ya kila siku na maeneo unayoweza kuchagua kwenye jina la mtumiaji la proxy.

Iliyoruushwa mwisho: · 11 dk za kusoma

Vituo vya maombi kwenye ukurasa huu

  • GET /v1/residential/subscriptions: Orodhesha usajili wa data (za makazi na za simu zenye anwani zinazobadilika kwa GB)
  • GET /v1/residential/subscriptions/{subscriptionId}: Pata usajili wa proxy za makazi
  • PATCH /v1/residential/subscriptions/{subscriptionId}: Badili jina au wezesha/zima kuongeza muda kiotomatiki
  • POST /v1/residential/subscriptions/{subscriptionId}/reset-password: Tengeneza nenosiri jipya la proxy kwa mtumiaji mkuu
  • GET /v1/residential/subscriptions/{subscriptionId}/usage: Matumizi ya data ya kila siku
  • GET /v1/residential/subscriptions/{subscriptionId}/sub-users: Orodhesha watumiaji wadogo (vitambulisho tofauti vya proxy na kikomo chao cha data)
  • POST /v1/residential/subscriptions/{subscriptionId}/sub-users: Unda mtumiaji mdogo
  • PATCH /v1/residential/subscriptions/{subscriptionId}/sub-users/{subUserId}: Sasisha mtumiaji mdogo (jina, kikomo, kuwezesha/kuzima, nenosiri jipya)
  • DELETE /v1/residential/subscriptions/{subscriptionId}/sub-users/{subUserId}: Futa mtumiaji mdogo
  • GET /v1/catalog/countries: Nchi ambako bidhaa inapatikana
  • GET /v1/catalog/countries/{countryCode}/cities: Miji inayoweza kuchaguliwa katika nchi
  • GET /v1/catalog/countries/{countryCode}/asns: Watoa huduma za intaneti (ASN) wanaoweza kuchaguliwa katika nchi — proxy za makazi tu

URL ya msingi https://africaproxies.com/api/v1. Uthibitishaji, hitilafu na vikomo: angalia muhtasari wa API.

Vipindi vya anwani ileile

Ongeza -session-{id}-ttl-{minutes} kwenye jina la mtumiaji la proxy ili kuweka IP ileile: {id} ni herufi au tarakimu 1–32 unazochagua, na ttl ni dakika 1–30. IP inaweza kubadilika mapema, kwa mfano kifaa kinachoitumia kikitoka mtandaoni.

Orodhesha usajili wa data (za makazi na za simu zenye anwani zinazobadilika kwa GB)

GET/v1/residential/subscriptions

Uthibitishaji: funguo ya API kwenye kichwa cha Authorization: Bearer API_KEY.

Parameta

JinaKatikaAinaInahitajikaMaelezo
productIdqueryresidential · mobile-gbHapanaBidhaa hii tu (ikiwa haipo: zote mbili).

Jibu 200 OK

{
  "data": [
    {
      "id": "res_9x2m4k",
      "productId": "residential",
      "label": "Residential #1",
      "planId": "res-10",
      "status": "active",
      "trafficTotalBytes": 10000000000,
      "trafficUsedBytes": 2350000000,
      "trafficRemainingBytes": 7650000000,
      "expiresAt": null,
      "autoRenew": false,
      "username": "u7k2m9",
      "password": "PASSWORD",
      "endpoint": {
        "host": "gw.africaproxies.com",
        "httpPort": 7777,
        "socksPort": 7778
      },
      "subUserCount": 1,
      "createdAt": "2026-10-05T14:03:11Z"
    }
  ]
}

Mifano ya kodi

curl
curl -s "https://africaproxies.com/api/v1/residential/subscriptions" \
  -H "Authorization: Bearer $API_KEY"
Python
import os
import requests

API = "https://africaproxies.com/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['API_KEY']}"}

r = requests.get(f"{API}/residential/subscriptions", headers=HEADERS, timeout=30)
r.raise_for_status()
print(r.json())
Node.js
// Node.js 18+ (built-in fetch), ES module
const API = 'https://africaproxies.com/api/v1';

const res = await fetch(`${API}/residential/subscriptions`, {
  headers: { Authorization: `Bearer ${process.env.API_KEY}` },
});
if (!res.ok) throw new Error((await res.json()).error?.message ?? `HTTP ${res.status}`);
console.log(await res.json());

Pata usajili wa proxy za makazi

GET/v1/residential/subscriptions/{subscriptionId}

Uthibitishaji: funguo ya API kwenye kichwa cha Authorization: Bearer API_KEY.

Parameta

JinaKatikaAinaInahitajikaMaelezo
subscriptionIdpathstringNdiyo—

Jibu 200 OK

{
  "id": "res_9x2m4k",
  "productId": "residential",
  "label": "Residential #1",
  "planId": "res-10",
  "status": "active",
  "trafficTotalBytes": 10000000000,
  "trafficUsedBytes": 2350000000,
  "trafficRemainingBytes": 7650000000,
  "expiresAt": null,
  "autoRenew": false,
  "username": "u7k2m9",
  "password": "PASSWORD",
  "endpoint": {
    "host": "gw.africaproxies.com",
    "httpPort": 7777,
    "socksPort": 7778
  },
  "subUserCount": 1,
  "createdAt": "2026-10-05T14:03:11Z"
}

Mifano ya kodi

curl
curl -s "https://africaproxies.com/api/v1/residential/subscriptions/res_9x2m4k" \
  -H "Authorization: Bearer $API_KEY"
Python
import os
import requests

API = "https://africaproxies.com/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['API_KEY']}"}

r = requests.get(f"{API}/residential/subscriptions/res_9x2m4k", headers=HEADERS, timeout=30)
r.raise_for_status()
print(r.json())
Node.js
// Node.js 18+ (built-in fetch), ES module
const API = 'https://africaproxies.com/api/v1';

const res = await fetch(`${API}/residential/subscriptions/res_9x2m4k`, {
  headers: { Authorization: `Bearer ${process.env.API_KEY}` },
});
if (!res.ok) throw new Error((await res.json()).error?.message ?? `HTTP ${res.status}`);
console.log(await res.json());

Badili jina au wezesha/zima kuongeza muda kiotomatiki

PATCH/v1/residential/subscriptions/{subscriptionId}

Uthibitishaji: funguo ya API kwenye kichwa cha Authorization: Bearer API_KEY.

Parameta

JinaKatikaAinaInahitajikaMaelezo
subscriptionIdpathstringNdiyo—

Mwili wa ombi

UwanjaAinaInahitajikaMaelezo
labelstringHapanaherufi zisizozidi 60
autoRenewbooleanHapana—
Mfano
{
  "label": "Price monitoring",
  "autoRenew": true
}

Jibu 200 OK

{
  "id": "res_9x2m4k",
  "productId": "residential",
  "label": "Residential #1",
  "planId": "res-10",
  "status": "active",
  "trafficTotalBytes": 10000000000,
  "trafficUsedBytes": 2350000000,
  "trafficRemainingBytes": 7650000000,
  "expiresAt": null,
  "autoRenew": false,
  "username": "u7k2m9",
  "password": "PASSWORD",
  "endpoint": {
    "host": "gw.africaproxies.com",
    "httpPort": 7777,
    "socksPort": 7778
  },
  "subUserCount": 1,
  "createdAt": "2026-10-05T14:03:11Z"
}

Mifano ya kodi

curl
curl -s -X PATCH "https://africaproxies.com/api/v1/residential/subscriptions/res_9x2m4k" \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"label":"Price monitoring","autoRenew":true}'
Python
import os
import requests

API = "https://africaproxies.com/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['API_KEY']}"}

r = requests.patch(f"{API}/residential/subscriptions/res_9x2m4k", headers=HEADERS, json={"label": "Price monitoring", "autoRenew": True}, timeout=30)
r.raise_for_status()
print(r.json())
Node.js
// Node.js 18+ (built-in fetch), ES module
const API = 'https://africaproxies.com/api/v1';

const res = await fetch(`${API}/residential/subscriptions/res_9x2m4k`, {
  method: 'PATCH',
  headers: { Authorization: `Bearer ${process.env.API_KEY}`, 'Content-Type': 'application/json' },
  body: JSON.stringify({ label: 'Price monitoring', autoRenew: true }),
});
if (!res.ok) throw new Error((await res.json()).error?.message ?? `HTTP ${res.status}`);
console.log(await res.json());

Tengeneza nenosiri jipya la proxy kwa mtumiaji mkuu

POST/v1/residential/subscriptions/{subscriptionId}/reset-password

Nenosiri la zamani huacha kufanya kazi kwenye lango ndani ya sekunde 60.

Uthibitishaji: funguo ya API kwenye kichwa cha Authorization: Bearer API_KEY.

Parameta

JinaKatikaAinaInahitajikaMaelezo
subscriptionIdpathstringNdiyo—

Jibu 200 OK

{
  "id": "res_9x2m4k",
  "productId": "residential",
  "label": "Residential #1",
  "planId": "res-10",
  "status": "active",
  "trafficTotalBytes": 10000000000,
  "trafficUsedBytes": 2350000000,
  "trafficRemainingBytes": 7650000000,
  "expiresAt": null,
  "autoRenew": false,
  "username": "u7k2m9",
  "password": "PASSWORD",
  "endpoint": {
    "host": "gw.africaproxies.com",
    "httpPort": 7777,
    "socksPort": 7778
  },
  "subUserCount": 1,
  "createdAt": "2026-10-05T14:03:11Z"
}

Mifano ya kodi

curl
curl -s -X POST "https://africaproxies.com/api/v1/residential/subscriptions/res_9x2m4k/reset-password" \
  -H "Authorization: Bearer $API_KEY"
Python
import os
import requests

API = "https://africaproxies.com/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['API_KEY']}"}

r = requests.post(f"{API}/residential/subscriptions/res_9x2m4k/reset-password", headers=HEADERS, timeout=30)
r.raise_for_status()
print(r.json())
Node.js
// Node.js 18+ (built-in fetch), ES module
const API = 'https://africaproxies.com/api/v1';

const res = await fetch(`${API}/residential/subscriptions/res_9x2m4k/reset-password`, {
  method: 'POST',
  headers: { Authorization: `Bearer ${process.env.API_KEY}` },
});
if (!res.ok) throw new Error((await res.json()).error?.message ?? `HTTP ${res.status}`);
console.log(await res.json());

Matumizi ya data ya kila siku

GET/v1/residential/subscriptions/{subscriptionId}/usage

Uthibitishaji: funguo ya API kwenye kichwa cha Authorization: Bearer API_KEY.

Parameta

JinaKatikaAinaInahitajikaMaelezo
subscriptionIdpathstringNdiyo—
fromquerystring (date)HapanaSiku ya kwanza (UTC), ikijumuishwa. Chaguo-msingi = siku 29 kabla ya to.
toquerystring (date)HapanaSiku ya mwisho (UTC), ikijumuishwa. Chaguo-msingi = leo. Muda usiozidi siku 366.
subUserIdquerystringHapanaZuia kwa mtumiaji mdogo mmoja.

Jibu 200 OK

{
  "from": "2026-10-04",
  "to": "2026-10-05",
  "totalBytes": 2350000000,
  "totalRequests": 48210,
  "points": [
    {
      "date": "2026-10-04",
      "bytes": 1200000000,
      "requests": 24800
    },
    {
      "date": "2026-10-05",
      "bytes": 1150000000,
      "requests": 23410
    }
  ],
  "byCountry": [
    {
      "country": "AE",
      "bytes": 2350000000
    }
  ]
}

Mifano ya kodi

curl
curl -s "https://africaproxies.com/api/v1/residential/subscriptions/res_9x2m4k/usage" \
  -H "Authorization: Bearer $API_KEY"
Python
import os
import requests

API = "https://africaproxies.com/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['API_KEY']}"}

r = requests.get(f"{API}/residential/subscriptions/res_9x2m4k/usage", headers=HEADERS, timeout=30)
r.raise_for_status()
print(r.json())
Node.js
// Node.js 18+ (built-in fetch), ES module
const API = 'https://africaproxies.com/api/v1';

const res = await fetch(`${API}/residential/subscriptions/res_9x2m4k/usage`, {
  headers: { Authorization: `Bearer ${process.env.API_KEY}` },
});
if (!res.ok) throw new Error((await res.json()).error?.message ?? `HTTP ${res.status}`);
console.log(await res.json());

Orodhesha watumiaji wadogo (vitambulisho tofauti vya proxy na kikomo chao cha data)

GET/v1/residential/subscriptions/{subscriptionId}/sub-users

Uthibitishaji: funguo ya API kwenye kichwa cha Authorization: Bearer API_KEY.

Parameta

JinaKatikaAinaInahitajikaMaelezo
subscriptionIdpathstringNdiyo—

Jibu 200 OK

{
  "data": [
    {
      "id": "sub_3m9qk2",
      "label": "Client A",
      "username": "u7k2m9_scraper",
      "password": "PASSWORD",
      "trafficLimitBytes": 5000000000,
      "trafficUsedBytes": 1200000000,
      "enabled": true,
      "createdAt": "2026-10-05T14:03:11Z"
    }
  ],
  "limit": 50
}

Mifano ya kodi

curl
curl -s "https://africaproxies.com/api/v1/residential/subscriptions/res_9x2m4k/sub-users" \
  -H "Authorization: Bearer $API_KEY"
Python
import os
import requests

API = "https://africaproxies.com/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['API_KEY']}"}

r = requests.get(f"{API}/residential/subscriptions/res_9x2m4k/sub-users", headers=HEADERS, timeout=30)
r.raise_for_status()
print(r.json())
Node.js
// Node.js 18+ (built-in fetch), ES module
const API = 'https://africaproxies.com/api/v1';

const res = await fetch(`${API}/residential/subscriptions/res_9x2m4k/sub-users`, {
  headers: { Authorization: `Bearer ${process.env.API_KEY}` },
});
if (!res.ok) throw new Error((await res.json()).error?.message ?? `HTTP ${res.status}`);
console.log(await res.json());

Unda mtumiaji mdogo

POST/v1/residential/subscriptions/{subscriptionId}/sub-users

Uthibitishaji: funguo ya API kwenye kichwa cha Authorization: Bearer API_KEY.

Parameta

JinaKatikaAinaInahitajikaMaelezo
subscriptionIdpathstringNdiyo—

Mwili wa ombi

UwanjaAinaInahitajikaMaelezo
labelstringNdiyoherufi zisizozidi 60
passwordstringHapanaInatengenezwa ikiwa haijatolewa. — herufi zisizozidi 64
trafficLimitBytesinteger (int64), nullableHapana≥ 0
Mfano
{
  "label": "Scraper EU",
  "trafficLimitBytes": 5000000000
}

Jibu 201 Created

{
  "id": "sub_3m9qk2",
  "label": "Client A",
  "username": "u7k2m9_scraper",
  "password": "PASSWORD",
  "trafficLimitBytes": 5000000000,
  "trafficUsedBytes": 1200000000,
  "enabled": true,
  "createdAt": "2026-10-05T14:03:11Z"
}

Mifano ya kodi

curl
curl -s -X POST "https://africaproxies.com/api/v1/residential/subscriptions/res_9x2m4k/sub-users" \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"label":"Scraper EU","trafficLimitBytes":5000000000}'
Python
import os
import requests

API = "https://africaproxies.com/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['API_KEY']}"}

r = requests.post(f"{API}/residential/subscriptions/res_9x2m4k/sub-users", headers=HEADERS, json={"label": "Scraper EU", "trafficLimitBytes": 5000000000}, timeout=30)
r.raise_for_status()
print(r.json())
Node.js
// Node.js 18+ (built-in fetch), ES module
const API = 'https://africaproxies.com/api/v1';

const res = await fetch(`${API}/residential/subscriptions/res_9x2m4k/sub-users`, {
  method: 'POST',
  headers: { Authorization: `Bearer ${process.env.API_KEY}`, 'Content-Type': 'application/json' },
  body: JSON.stringify({ label: 'Scraper EU', trafficLimitBytes: 5000000000 }),
});
if (!res.ok) throw new Error((await res.json()).error?.message ?? `HTTP ${res.status}`);
console.log(await res.json());

Sasisha mtumiaji mdogo (jina, kikomo, kuwezesha/kuzima, nenosiri jipya)

PATCH/v1/residential/subscriptions/{subscriptionId}/sub-users/{subUserId}

Uthibitishaji: funguo ya API kwenye kichwa cha Authorization: Bearer API_KEY.

Parameta

JinaKatikaAinaInahitajikaMaelezo
subscriptionIdpathstringNdiyo—
subUserIdpathstringNdiyo—

Mwili wa ombi

UwanjaAinaInahitajikaMaelezo
labelstringHapanaherufi zisizozidi 60
trafficLimitBytesinteger (int64), nullableHapana≥ 0
enabledbooleanHapana—
regeneratePasswordbooleanHapana—
Mfano
{
  "enabled": false
}

Jibu 200 OK

{
  "id": "sub_3m9qk2",
  "label": "Client A",
  "username": "u7k2m9_scraper",
  "password": "PASSWORD",
  "trafficLimitBytes": 5000000000,
  "trafficUsedBytes": 1200000000,
  "enabled": true,
  "createdAt": "2026-10-05T14:03:11Z"
}

Mifano ya kodi

curl
curl -s -X PATCH "https://africaproxies.com/api/v1/residential/subscriptions/res_9x2m4k/sub-users/sub_3m9qk2" \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"enabled":false}'
Python
import os
import requests

API = "https://africaproxies.com/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['API_KEY']}"}

r = requests.patch(f"{API}/residential/subscriptions/res_9x2m4k/sub-users/sub_3m9qk2", headers=HEADERS, json={"enabled": False}, timeout=30)
r.raise_for_status()
print(r.json())
Node.js
// Node.js 18+ (built-in fetch), ES module
const API = 'https://africaproxies.com/api/v1';

const res = await fetch(`${API}/residential/subscriptions/res_9x2m4k/sub-users/sub_3m9qk2`, {
  method: 'PATCH',
  headers: { Authorization: `Bearer ${process.env.API_KEY}`, 'Content-Type': 'application/json' },
  body: JSON.stringify({ enabled: false }),
});
if (!res.ok) throw new Error((await res.json()).error?.message ?? `HTTP ${res.status}`);
console.log(await res.json());

Futa mtumiaji mdogo

DELETE/v1/residential/subscriptions/{subscriptionId}/sub-users/{subUserId}

Uthibitishaji: funguo ya API kwenye kichwa cha Authorization: Bearer API_KEY.

Parameta

JinaKatikaAinaInahitajikaMaelezo
subscriptionIdpathstringNdiyo—
subUserIdpathstringNdiyo—

Jibu 204 No Content

Hakuna mwili: nambari ya hali ndiyo jibu.

Mifano ya kodi

curl
curl -s -X DELETE "https://africaproxies.com/api/v1/residential/subscriptions/res_9x2m4k/sub-users/sub_3m9qk2" \
  -H "Authorization: Bearer $API_KEY"
Python
import os
import requests

API = "https://africaproxies.com/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['API_KEY']}"}

r = requests.delete(f"{API}/residential/subscriptions/res_9x2m4k/sub-users/sub_3m9qk2", headers=HEADERS, timeout=30)
r.raise_for_status()
print(r.status_code)  # 204: done
Node.js
// Node.js 18+ (built-in fetch), ES module
const API = 'https://africaproxies.com/api/v1';

const res = await fetch(`${API}/residential/subscriptions/res_9x2m4k/sub-users/sub_3m9qk2`, {
  method: 'DELETE',
  headers: { Authorization: `Bearer ${process.env.API_KEY}` },
});
if (!res.ok) throw new Error(`HTTP ${res.status}`);
console.log(res.status); // 204: done

Nchi ambako bidhaa inapatikana

GET/v1/catalog/countries

Umma: hakuna API inahitajika.

Parameta

JinaKatikaAinaInahitajikaMaelezo
productquerystringHapanaZuia kwa maeneo ambako bidhaa hii inapatikana (residential, mobile, mobile-gb).

Jibu 200 OK

{
  "data": [
    {
      "code": "AE",
      "name": "United Arab Emirates",
      "region": "Asia",
      "products": [
        "residential",
        "mobile",
        "mobile-gb"
      ],
      "cities": 6,
      "asns": 2,
      "carriers": 2
    }
  ]
}

Mifano ya kodi

curl
curl -s "https://africaproxies.com/api/v1/catalog/countries"
Python
import os
import requests

API = "https://africaproxies.com/api/v1"

r = requests.get(f"{API}/catalog/countries", timeout=30)
r.raise_for_status()
print(r.json())
Node.js
// Node.js 18+ (built-in fetch), ES module
const API = 'https://africaproxies.com/api/v1';

const res = await fetch(`${API}/catalog/countries`);
if (!res.ok) throw new Error((await res.json()).error?.message ?? `HTTP ${res.status}`);
console.log(await res.json());

Miji inayoweza kuchaguliwa katika nchi

GET/v1/catalog/countries/{countryCode}/cities

Kwa product=mobile au product=mobile-gb, ni miji yenye modemu za 4G/5G tu.

Umma: hakuna API inahitajika.

Parameta

JinaKatikaAinaInahitajikaMaelezo
countryCodepathstringNdiyoISO 3166-1 alpha-2, herufi kubwa.
productquerystringHapanaZuia kwa maeneo ambako bidhaa hii inapatikana (residential, mobile, mobile-gb).

Jibu 200 OK

{
  "data": [
    {
      "id": "dubai",
      "name": "Dubai",
      "state": null
    }
  ]
}

Mifano ya kodi

curl
curl -s "https://africaproxies.com/api/v1/catalog/countries/AE/cities"
Python
import os
import requests

API = "https://africaproxies.com/api/v1"

r = requests.get(f"{API}/catalog/countries/AE/cities", timeout=30)
r.raise_for_status()
print(r.json())
Node.js
// Node.js 18+ (built-in fetch), ES module
const API = 'https://africaproxies.com/api/v1';

const res = await fetch(`${API}/catalog/countries/AE/cities`);
if (!res.ok) throw new Error((await res.json()).error?.message ?? `HTTP ${res.status}`);
console.log(await res.json());

Watoa huduma za intaneti (ASN) wanaoweza kuchaguliwa katika nchi — proxy za makazi tu

GET/v1/catalog/countries/{countryCode}/asns

Umma: hakuna API inahitajika.

Parameta

JinaKatikaAinaInahitajikaMaelezo
countryCodepathstringNdiyoISO 3166-1 alpha-2, herufi kubwa.

Jibu 200 OK

{
  "data": [
    {
      "asn": 7922,
      "name": "Comcast Cable"
    }
  ]
}

Mifano ya kodi

curl
curl -s "https://africaproxies.com/api/v1/catalog/countries/AE/asns"
Python
import os
import requests

API = "https://africaproxies.com/api/v1"

r = requests.get(f"{API}/catalog/countries/AE/asns", timeout=30)
r.raise_for_status()
print(r.json())
Node.js
// Node.js 18+ (built-in fetch), ES module
const API = 'https://africaproxies.com/api/v1';

const res = await fetch(`${API}/catalog/countries/AE/asns`);
if (!res.ok) throw new Error((await res.json()).error?.message ?? `HTTP ${res.status}`);
console.log(await res.json());

1 GB US$ 1.23 · Weka fedha kwenye akaunti kuanzia US$ 25

Chagua 1 GB