Этот API предоставляет доступ к списку прокси-серверов с возможностью настройки фильтров. Для работы с API требуется действующий ключ доступа, который проверяется на подлинность и соблюдение лимитов использования. В ответ на запрос пользователь получает данные в зависимости от параметра get в виде текста, JSON или файла для скачивания. API доступен по адресу https://api.good-proxies.ru/api.
| Параметр | Описание | Обязательный | Пример значения |
|---|---|---|---|
| key | Ключ доступа, необходимый для аутентификации запроса. | Да | abc123 |
| type | Тип прокси-серверов (http, https, socks4, socks5). Можно указать несколько типов через запятую. | Нет | http,https |
| anon | Уровень анонимности прокси (transparent, anonymous, elite). | Нет | elite |
| ping | Максимально допустимое время отклика прокси в миллисекундах. | Нет | 500 |
| time | Максимальное время (в секундах) с момента последней проверки прокси. По умолчанию: 600 (последние 10 минут). |
Нет | 600 |
| works | Количество успешных тестов прокси из общего числа попыток в процентах. Доступные значения: от 0 до 100. Пример использования: works=50 - это значит, что будут выданы прокси, у которых не менее 50% успешных проверок из общего числа тестов на работоспособность. Выводится значение, если выбран формат json. |
Нет | 50 |
| country | Код страны прокси (ISO Alpha-2). Можно указать несколько кодов через запятую. | Нет | us,ca |
| cm / country_mode | Режим применения фильтра по странам. Значение include (по умолчанию) - возвращать только указанные страны. Значение except - исключать указанные страны из результата. Для удобства поддерживается короткий параметр cm (например, cm=except), совместимый с устаревшим country_mode. |
Нет | cm=except & country=us,ca |
| city | Название города прокси. Можно указать несколько городов через запятую. Названия могут быть на русском или английском языке. | Нет | Париж,Москва |
| count | Количество запрашиваемых прокси. | Нет | 10 |
| lang | Язык для названий городов в ответе и при фильтрации по городу. ru (по умолчанию) - русские названия городов. en - английские названия. При lang=en параметр city принимает английские названия городов. |
Нет | ru, en |
| get | Формат вывода данных. По умолчанию используется значение txt, что означает вывод в виде текста в браузере. Для вывода в формате JSON используйте get=json. Для скачивания файла используйте get=txt.file или get=json.file. |
Нет | txt, json, txt.file, json.file |
| timecheck | Время последней успешной проверки на работоспособность прокси. Выводится только если выбран формат json. Время указывается в часовом поясе GMT+2. |
Нет | Нельзя указать |
| ip_out | Исходящий результатирующий IP-адрес прокси. Может отличаться от основного IP-адреса прокси. Этот параметр выводится только в формате JSON. | Нет | Нельзя указать |
Следующий параметр управляет форматом строки при get=txt и get=txt.file.
| Параметр | Описание | Обязательный | Пример значения |
|---|---|---|---|
| type_prefix | Добавляет протокол в начало каждой строки TXT-вывода: type://ip:port. Значение 1 включает режим. Пример строки: http://127.0.0.1:3128. |
Нет | 1 |
Следующие параметры управляют структурой ответа при get=json и get=json.file. На TXT-вывод не влияют.
| Параметр | Описание | Обязательный | Пример значения |
|---|---|---|---|
| ip | Адрес прокси-сервера в формате ip:port (например, 192.168.1.1:8080). Для разделения на отдельные поля ip и port используйте параметр split_ip=1. |
Нет | 192.168.1.1:8080 |
| fields | Список полей через запятую для включения в JSON-ответ. Допустимо: ip, port, ip_out, type, anon, ping, timecheck, country, city, works. По умолчанию возвращаются все поля. Поле port появляется только при split_ip=1. |
Нет | ip,type,country |
| split_ip | Разделяет поле ip формата ip:port на два отдельных поля: ip и port. Значение 1 включает разделение. |
Нет | 1 |
| format | Структура JSON-ответа. array (по умолчанию) - массив объектов-прокси. object - объект, где ключи - адреса прокси (ip:port), значения - объекты с полями. |
Нет | array, object |
| wrap | Оборачивает ответ в конверт с метаданными: {status, count, timestamp, filters, data}. Значение 1 включает оборачивание. |
Нет | 1 |
| pretty | Форматирование JSON-ответа. 1 (по умолчанию) - читаемый формат с отступами. 0 - компактный JSON без отступов (меньше трафика). |
Нет | 0, 1 |
GET https://api.good-proxies.ru/api?key=abc123&type=http&anon=elite&count=5&get=json
GET https://api.good-proxies.ru/api?key=abc123&type=https&ping=500&count=10&get=txt.file
GET https://api.good-proxies.ru/api?key=abc123&country=us,ca&count=2
GET https://api.good-proxies.ru/api?key=abc123&type=http&count=5&type_prefix=1
Вывод:
http://192.168.1.1:8080 http://192.168.1.2:3128 http://192.168.1.3:8118
GET https://api.good-proxies.ru/api?key=abc123&type=socks5&count=2&get=json&fields=ip,port,type,country&split_ip=1
Вывод:
[
{
"ip": "192.168.1.1",
"port": "1080",
"type": "socks5",
"country": "US"
},
{
"ip": "192.168.1.2",
"port": "1080",
"type": "socks5",
"country": "DE"
}
]
GET https://api.good-proxies.ru/api?key=abc123&type=http&count=2&get=json&wrap=1
Вывод:
{
"status": "ok",
"count": 2,
"timestamp": "2026-03-01T12:00:00+00:00",
"filters": {
"type": "http",
"time": 600
},
"data": [
{
"ip": "192.168.1.1:8080",
"type": "http",
...
}
]
}
GET https://api.good-proxies.ru/api?key=abc123&city=Paris,London&count=5&get=json&lang=en
Параметр lang=en позволяет указывать города на английском языке и получать английские названия городов в ответе.
GET https://api.good-proxies.ru/api?key=abc123&type=http&count=10&get=json&pretty=0
При успешном запросе с параметром get=json, API возвращает список прокси-серверов в структурированном формате JSON. Включает параметр timecheck, который показывает время последней успешной проверки в часовом поясе GMT+2. Параметр ip_out указывает результатирующий IP-адрес прокси, который может отличаться от основного.
[
{
"ip": "15.162.126.1:919",
"ip_out": "15.162.126.1",
"type": "http",
"anon": "transparent",
"ping": 5.07786,
"timecheck": "2024-11-25 20:09:25",
"country": "CO",
"city": "Медельин",
"works": "66"
}
]
Если параметр get=txt (по умолчанию), данные возвращаются в виде простого текстового файла, отображаемого в браузере:
192.168.1.1:8080 192.168.1.2:8080 192.168.1.3:8080
Если параметр get=txt.file, данные будут предложены для скачивания в текстовом формате:
192.168.1.1:8080 192.168.1.2:8080 192.168.1.3:8080
Если параметр get=json.file, данные будут предложены для скачивания в формате JSON:
[
{
"ip": "112.63.11.8:180",
"ip_out": "122.63.41.1",
"type": "http",
"anon": "elite",
"ping": 3.83659,
"timecheck": "2024-11-25 20:09:26",
"country": "SN",
"city": "",
"works": "100"
}
]
Если запрос не удался, API возвращает текстовое сообщение с описанием ошибки.
Ошибка: Ключ доступа не предоставлен
key, являются необязательными.count не указан, API возвращает максимальное количество доступных прокси.time не указан, по умолчанию используется значение 600 (прокси, проверенные в течение последних 10 минут).get=txt.file или get=json.file данные будут предложены для скачивания как файл.timecheck, возвращаемое в формате JSON, указывается в часовом поясе GMT+2.fields, split_ip, format, wrap, pretty) влияют только на JSON-ответ и игнорируются при TXT-выводе.type_prefix влияет только на TXT-вывод (get=txt и get=txt.file) и игнорируется при JSON-выводе.lang=en позволяет указывать названия городов в фильтре city на английском языке и возвращать их в английском написании в JSON-ответе.
$key = 'abc123';
$type = 'http';
$anon = 'elite';
$count = 5;
$get = 'json';
$url = "https://api.good-proxies.ru/api?key=$key&type=$type&anon=$anon&count=$count&get=$get";
$response = file_get_contents($url);
if ($response) {
$proxies = json_decode($response, true);
print_r($proxies);
} else {
echo "Ошибка при получении прокси.";
}
API предоставляет удобный инструмент для получения прокси-серверов с широкими возможностями фильтрации. Убедитесь, что у вас есть действующий ключ доступа, и соблюдайте лимиты для бесперебойной работы с сервисом.