* feat(docs): mirror every docs/ page in all 65 locales Extends the documentation mirrors from the 22-page core set (#13940) to every Markdown page under docs/: 152 sources x 65 locales = 9,880 mirrors (6,208 new), language bars rewritten for the full locale list, state adopted so the blocking drift gate now covers all 152 pages. run-translation.mjs: an oversized block made only of table rows or list items (PROVIDER_REFERENCE.md 244-row table, FREE_TIERS.md 71-item list) is cut at item boundaries and rejoined without a blank line — the single 16-40 KB request outlived the backend socket for verbose scripts. 48 older mirrors whose tables had lost rows were retranslated with --force. * docs(i18n): refresh mirrors for the sources the base changed since the branch cut Section-level retranslation of the 29 docs (and README.md) whose source or mirrors moved on release/v3.8.51 during the run, then state adoption; the drift gate is green again on the merged tree.
8.2 KiB
Free Proxies API (Bahasa Indonesia)
🌐 Languages: 🇺🇸 English · 🇪🇹 am · 🇸🇦 ar · 🇦🇿 az · 🇧🇬 bg · 🇧🇩 bn · 🇨🇿 cs · 🇩🇰 da · 🇩🇪 de · 🇬🇷 el · 🇪🇸 es · 🇪🇪 et · 🇮🇷 fa · 🇫🇮 fi · 🇫🇷 fr · 🇮🇪 ga · 🇮🇳 gu · 🇳🇬 ha · 🇮🇱 he · 🇮🇳 hi · 🇭🇷 hr · 🇭🇺 hu · 🇦🇲 hy · 🇳🇬 ig · 🇮🇹 it · 🇯🇵 ja · 🇬🇪 ka · 🇰🇭 km · 🇮🇳 kn · 🇰🇷 ko · 🇱🇹 lt · 🇱🇻 lv · 🇮🇳 ml · 🇮🇳 mr · 🇲🇾 ms · 🇲🇹 mt · 🇲🇲 my · 🇳🇵 ne · 🇳🇱 nl · 🇳🇴 no · 🇮🇳 or · 🇮🇳 pa · 🇵🇭 phi · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇱🇰 si · 🇸🇰 sk · 🇸🇮 sl · 🇷🇸 sr · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 ta · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇺🇿 uz · 🇻🇳 vi · 🇳🇬 yo · 🇨🇳 zh-CN · 🇹🇼 zh-TW
OmniRoute menyediakan kumpulan proksi gratis terkurasi dalam tabel free_proxies,
yang disinkronkan dari penyedia eksternal (1proxy, proxifly, iplocate, webshare).
Dasbor menampilkan proksi tersebut di Pengaturan → Proksi Gratis. Dokumen ini
membahas pemfilteran, pengurutan, penghitungan, dan pelaporan kesalahan sinkronisasi
di sisi server yang disediakan oleh rute daftar.
Rute daftar — GET /api/settings/free-proxies
Mengembalikan bagian data yang telah difilter, diurutkan, dan dipaginasi beserta
jumlah total. Pemfilteran dan penghitungan dilakukan dalam SQL, sehingga UI dapat
menampilkan jumlah total sebenarnya (misalnya Total: 0) tanpa memuat setiap baris
ke dalam memori.
Parameter kueri
| Parameter | Tipe | Default | Arti |
|---|---|---|---|
search |
string | "" |
LIKE peka huruf besar-kecil pada kolom host (dan sumber). |
protocol |
string | "" |
Filter type: http / https / socks4 / socks5. Kosong = semua. |
country |
string | "" |
Filter countryCode (ISO-2). Kosong = semua. |
minQuality |
number | 0 |
Hanya baris dengan qualityScore >= minQuality. 0 = tanpa batas minimum. |
disabledSources |
string | "" |
ID sumber yang dipisahkan koma untuk dikecualikan (misalnya proxifly,webshare). |
sortBy |
quality | latency | recent |
quality |
quality = skor menurun; latency = latensi menaik (null di akhir); recent = lastValidated menurun. |
offset |
number | 0 |
Awal paginasi. |
limit |
number | 50 |
Ukuran halaman (dibatasi di sisi server). |
Respons
{
"success": true,
"data": {
"proxies": [/* FreeProxyRecord[] */],
"total": 137,
"hasMore": true
},
"stats": {
"total": 137,
"inPool": 12,
"avgQuality": 64.2,
"bySource": [{ "source": "1proxy", "count": 90 }],
"lastSyncAt": "2026-07-11T09:30:00.000Z"
},
"syncErrors": {
"proxifly": ["HTTP 429 from upstream"],
"webshare": ["network timeout"]
}
}
total mencerminkan jumlah total yang telah difilter sebelum paginasi,
sehingga UI dapat merender Total: N dan hasMore secara independen.
syncErrors menggunakan ID sumber sebagai kunci dan hanya diisi untuk sumber
yang gagal pada sinkronisasi terakhirnya — hasil Total: 0 tidak pernah
ditampilkan tanpa informasi.
Tambahkan ke kumpulan — POST /api/settings/free-proxies/[id]/add-to-pool
Mempromosikan proksi gratis ke dalam kumpulan proxy_registry terkelola.
Memvalidasi upstream terlebih dahulu; jika berhasil, mengembalikan ID proksi
kumpulan yang baru dan latensi yang diukur.
Sinkronisasi — POST /api/settings/free-proxies/sync
Mengambil ulang semua sumber yang diaktifkan (atau subset dalam
{ "sources": [...] }). Setiap sumber disinkronkan secara independen; sumber
yang gagal dicatat dalam syncErrors, sementara sumber lainnya tetap
diselesaikan, sehingga sinkronisasi parsial tidak pernah menghapus data baik
yang sudah ada.
Statistik — GET /api/settings/free-proxies/stats
Mengembalikan agregat total / inPool / avgQuality / bySource / lastSyncAt
tanpa payload baris — digunakan oleh widget header dasbor.