777 Proxy API
Покупайте прокси и управляйте ими из своего кода. Дешевле, чем в боте.Buy and manage proxies from your own code. Cheaper than in the bot.
ВведениеIntroduction
API для перепродажи прокси 777 Proxy. Через него можно делать всё то же, что в боте: смотреть каталог с вашими ценами, покупать, продлевать и настраивать Luxury.
Базовый адрес: https://api.777projects.org/v1. Запросы и ответы в JSON (UTF-8), суммы в долларах США,
время в UTC (ISO 8601).
An API for reselling 777 Proxy. It does everything the bot does: a catalog with your prices, ordering, renewals and Luxury settings.
Base URL: https://api.777projects.org/v1. Requests and responses are JSON (UTF-8), amounts are in US dollars,
times are UTC (ISO 8601).
АвторизацияAuthentication
Ключ создаётся в боте @proxy777robot, раздел «🔌 API доступ». Бот показывает его один раз. Передавайте ключ в каждом запросе:
Authorization: Bearer sk_live_…
Держите ключ на сервере, в клиентский код его не кладите. В боте можно разрешить ключ только с ваших IP, тогда утёкший ключ никому не пригодится. Перевыпустить ключ можно в любой момент, старый сразу перестаёт работать.
Create a key in the bot @proxy777robot, section “🔌 API access”. The bot shows it once. Send the key with every request:
Authorization: Bearer sk_live_…
Keep the key on your server, not in client code. In the bot you can allow the key only from your IPs, so a leaked key is useless. You can reissue the key at any time; the old one stops working at once.
Быстрый стартQuickstart
- Создайте ключ в @proxy777robot, раздел «🔌 API доступ».
- Пополните баланс в боте.
- Выберите тир, тип и период в
GET /v1/products. - Создайте заказ. Прокси придут в ответе.
- Create a key in @proxy777robot, section “🔌 API access”.
- Top up your balance in the bot.
- Pick a tier, type and period from
GET /v1/products. - Create an order. The proxies come back in the response.
curl -X POST https://api.777projects.org/v1/orders \
-H "Authorization: Bearer $API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"tier": "prem",
"type": "socks5",
"country": "US",
"period": "month",
"quantity": 2
}'import requests
API_KEY = "sk_live_..."
r = requests.post(
"https://api.777projects.org/v1/orders",
headers={"Authorization": f"Bearer {API_KEY}"},
json={
"tier": "prem",
"type": "socks5",
"country": "US",
"period": "month",
"quantity": 2
},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/orders", {
method: "POST",
headers: { Authorization: `Bearer ${API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
"tier": "prem",
"type": "socks5",
"country": "US",
"period": "month",
"quantity": 2
}),
});
console.log(await r.json());Цены и балансPricing and balance
По API дешевле, чем в боте. В каталоге price_usd это ваша цена,
retail_price_usd это цена в боте. Цены провайдеров меняются, поэтому берите актуальные из
GET /v1/products и не храните их у себя.
Заказы оплачиваются с долларового баланса в боте, пополняется он тоже в боте. 777 coins через API не тратятся. Кэшбэк и реферальные за покупки через API не начисляются. Если провайдер не выдал прокси, деньги сразу возвращаются на баланс.
Когда баланс опускается ниже порога, бот присылает одно сообщение. По умолчанию порог $10, его можно поменять в боте.
The API is cheaper than the bot. In the catalog, price_usd is your price and
retail_price_usd is the bot price. Provider prices change, so read current prices from
GET /v1/products instead of storing them.
Orders are paid from your USD balance in the bot, and you top it up there too. 777 coins are not spent through the API. API purchases earn no cashback or referral rewards. If the provider fails to issue proxies, the money goes straight back to your balance.
When your balance drops below a threshold, the bot sends you one message. The default is $10; you can change it in the bot.
ОшибкиErrors
У всех ошибок одинаковое тело и свой HTTP-статус. В коде проверяйте code, он не меняется. message написан для людей.Every error has the same body and its own HTTP status. Check code in your code; it never changes. message is for people.
{
"error": {
"code": "insufficient_balance",
"message": "Insufficient balance",
"required_usd": 5.58,
"balance_usd": 2.1
}
}| HTTP | code | ЗначениеMeaning |
|---|---|---|
| 400 | invalid_json | Тело запроса не JSON-объектRequest body is not a JSON object |
| 400 | invalid_request | Неверные параметры запросаInvalid request parameters |
| 400 | invalid_period | Такого периода или объёма нет у типаThe type has no such period or volume |
| 400 | invalid_quantity | Количество вне допустимого диапазонаQuantity is out of range |
| 400 | invalid_country | Страна недоступна для типаCountry is not available for the type |
| 400 | invalid_option | Неверная настройка LuxuryInvalid Luxury option |
| 401 | unauthorized | Нет ключа или ключ неверныйMissing or invalid API key |
| 402 | insufficient_balance | Не хватает денег. В ответе есть required_usd и balance_usdNot enough money. The response has required_usd and balance_usd |
| 403 | key_disabled | Ключ отключёнThe key is disabled |
| 403 | ip_not_allowed | IP не в белом списке ключаIP is not in the key whitelist |
| 404 | unknown_product | Тир или тип не продаётсяTier or type is not on sale |
| 404 | order_not_found | Заказа нет или он не вашOrder not found or not yours |
| 409 | out_of_stock | Нет в наличии. Сколько есть, видно в availableOut of stock. available shows what is left |
| 409 | not_renewable | Этот заказ нельзя продлитьThis order cannot be renewed |
| 409 | not_luxury | Метод только для Luxury-заказовLuxury orders only |
| 409 | request_in_progress | Запрос с этим Idempotency-Key ещё идётA request with this Idempotency-Key is still running |
| 429 | rate_limited | Больше 60 запросов в минуту. Подождите Retry-After секундOver 60 requests per minute. Wait Retry-After seconds |
| 500 | internal_error | Внутренняя ошибкаInternal error |
| 502 | provider_error | Провайдер не выдал прокси, деньги вернулись на балансThe provider failed, the money is back on your balance |
| 503 | api_disabled | API временно выключенAPI is temporarily disabled |
ЛимитыRate limits
На один ключ 60 запросов в минуту. Если больше, придёт 429 и заголовок
Retry-After с числом секунд. В одном заказе до 50 прокси.
60 requests per minute per key. Above that you get 429 and a
Retry-After header in seconds. Up to 50 proxies per order.
Повторы запросовIdempotency
Покупка, продление и докупка трафика принимают заголовок Idempotency-Key.
Если связь оборвалась и непонятно, прошёл ли запрос, отправьте его ещё раз с тем же ключом. Вернётся
первый ответ, деньги второй раз не спишутся. Ключ живёт сутки.
Buying, renewing and adding traffic accept an Idempotency-Key header. If the
connection drops and you can't tell whether the request went through, send it again with the same key.
You get the first response back and are not charged twice. Keys live for 24 hours.
Статусы заказаOrder statuses
activeexpiredrenewable: truepausedexhaustedactiveexpiredrenewable: truepausedexhaustedБалансGet balance
/v1/balanceБаланс в долларах, тот же, что в боте. Пополняется в боте, API его только тратит.Your USD balance, the same one as in the bot. You top it up in the bot; the API only spends it.
curl https://api.777projects.org/v1/balance \
-H "Authorization: Bearer $API_KEY"import requests
API_KEY = "sk_live_..."
r = requests.get(
"https://api.777projects.org/v1/balance",
headers={"Authorization": f"Bearer {API_KEY}"},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/balance", {
headers: { Authorization: `Bearer ${API_KEY}` },
});
console.log(await r.json());{
"balance_usd": 124.5,
"currency": "USD",
"low_balance_threshold_usd": 10
}Каталог и ценыList products
/v1/productsЧто сейчас продаётся: тиры, типы и периоды. price_usd ваша цена по API, retail_price_usd цена в боте. У типов per_gb вместо срока объём трафика, и quantity всегда 1.What is on sale right now: tiers, types and periods. price_usd is your API price, retail_price_usd is the bot price. For per_gb types the period is a traffic volume and quantity is always 1.
curl https://api.777projects.org/v1/products \
-H "Authorization: Bearer $API_KEY"import requests
API_KEY = "sk_live_..."
r = requests.get(
"https://api.777projects.org/v1/products",
headers={"Authorization": f"Bearer {API_KEY}"},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/products", {
headers: { Authorization: `Bearer ${API_KEY}` },
});
console.log(await r.json());{
"tiers": [
{
"id": "prem",
"name": "Premium",
"types": [
{
"id": "socks5",
"name": "SOCKS5 Proxy",
"description": "Datacenter proxies, SOCKS5 protocol. Support any traffic (TCP/UDP), games, software.",
"billing": "per_proxy",
"max_quantity": 50,
"renewable": true,
"periods": [
{
"id": "month",
"name": "30 days",
"days": 30,
"gb": null,
"price_usd": 2.79,
"retail_price_usd": 3.06
}
]
}
]
},
{
"id": "di",
"name": "Luxury",
"types": [
{
"id": "diresi",
"name": "Residential",
"description": "Real home IPs in 190+ countries…",
"billing": "per_gb",
"max_quantity": 1,
"renewable": false,
"periods": [
{
"id": "10gb",
"name": "10 GB",
"days": null,
"gb": 10.0,
"price_usd": 14.0,
"retail_price_usd": 15.0
}
]
}
]
}
]
}СтраныList countries
/v1/products/{tier}/{type}/countriesСтраны для выбранного типа. У Эконома и Telegram в available лежит остаток у провайдера. Для Luxury можно передать ANY, тогда страна любая.Countries for a type. For Economy and Telegram, available is the provider's stock. Luxury also accepts ANY for any country.
ПараметрыParameters
tierstringобязательныйrequiredpremTier ID, e.g. premtypestringобязательныйrequiredsocks5Type ID, e.g. socks5curl https://api.777projects.org/v1/products/econ/ipv4/countries \
-H "Authorization: Bearer $API_KEY"import requests
API_KEY = "sk_live_..."
r = requests.get(
"https://api.777projects.org/v1/products/econ/ipv4/countries",
headers={"Authorization": f"Bearer {API_KEY}"},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/products/econ/ipv4/countries", {
headers: { Authorization: `Bearer ${API_KEY}` },
});
console.log(await r.json());{
"countries": [
{
"code": "US",
"name": "United States",
"available": 318
},
{
"code": "DE",
"name": "Germany",
"available": 142
}
]
}Гео для LuxuryLuxury geo lookup
/v1/geo/{type}/{kind}Штаты, города, ZIP-коды и ASN для таргетинга Luxury. Значение code передавайте в options заказа или в настройки.States, cities, ZIP codes and ASNs for Luxury targeting. Pass code into order options or settings.
ПараметрыParameters
typestringобязательныйrequireddiresi, dipremium, dimobile, didcLuxury type: diresi, dipremium, dimobile, didckindstringобязательныйrequiredcountries · states · cities · zipcodes · asnscountries · states · cities · zipcodes · asnscountrystringquerystatestringquerycurl https://api.777projects.org/v1/geo/diresi/cities?country=US&state=california \
-H "Authorization: Bearer $API_KEY"import requests
API_KEY = "sk_live_..."
r = requests.get(
"https://api.777projects.org/v1/geo/diresi/cities?country=US&state=california",
headers={"Authorization": f"Bearer {API_KEY}"},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/geo/diresi/cities?country=US&state=california", {
headers: { Authorization: `Bearer ${API_KEY}` },
});
console.log(await r.json());{
"items": [
{
"code": "losangeles",
"name": "Los Angeles",
"count": 30
},
{
"code": "sandiego",
"name": "San Diego",
"count": 12
}
]
}Создать заказCreate an order
/v1/ordersСписывает деньги с баланса и сразу выдаёт прокси. Если провайдер не выдал прокси, деньги возвращаются на баланс, а в ответе будет ошибка.Charges your balance and returns the proxies right away. If the provider fails, the money goes back to your balance and the response is an error.
ПараметрыParameters
Idempotency-KeystringheaderТело запросаRequest body
tierstringобязательныйrequiredtypestringобязательныйrequiredcountrystringобязательныйrequiredANYISO-2; ANY is allowed for Luxuryperiodstringобязательныйrequiredquantityintegeroptionsobjectoptions.sessionstringrotating (новый IP на каждый запрос) или sticky (IP держится заданное время)rotating (new IP per request) or sticky (IP is kept for a set time)options.sticky_minutesintegeroptions.protocolstringhttp, socks5 или both (по умолчанию)http, socks5 or both (default)options.statestringoptions.citystringoptions.zipstringoptions.asnstring7922Provider ASN, e.g. 7922options.exclude_asnarrayoptions.anonymousbooleanoptions.threadsintegercurl -X POST https://api.777projects.org/v1/orders \
-H "Authorization: Bearer $API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"tier": "prem",
"type": "socks5",
"country": "US",
"period": "month",
"quantity": 2
}'import requests
API_KEY = "sk_live_..."
r = requests.post(
"https://api.777projects.org/v1/orders",
headers={"Authorization": f"Bearer {API_KEY}"},
json={
"tier": "prem",
"type": "socks5",
"country": "US",
"period": "month",
"quantity": 2
},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/orders", {
method: "POST",
headers: { Authorization: `Bearer ${API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
"tier": "prem",
"type": "socks5",
"country": "US",
"period": "month",
"quantity": 2
}),
});
console.log(await r.json());Luxury с таргетингом по городу и sticky-сессией:Luxury with city targeting and a sticky session:
curl -X POST https://api.777projects.org/v1/orders \
-H "Authorization: Bearer $API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"tier": "di",
"type": "diresi",
"country": "DE",
"period": "10gb",
"options": {
"session": "sticky",
"sticky_minutes": 30,
"city": "berlin"
}
}'import requests
API_KEY = "sk_live_..."
r = requests.post(
"https://api.777projects.org/v1/orders",
headers={"Authorization": f"Bearer {API_KEY}"},
json={
"tier": "di",
"type": "diresi",
"country": "DE",
"period": "10gb",
"options": {
"session": "sticky",
"sticky_minutes": 30,
"city": "berlin"
}
},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/orders", {
method: "POST",
headers: { Authorization: `Bearer ${API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
"tier": "di",
"type": "diresi",
"country": "DE",
"period": "10gb",
"options": {
"session": "sticky",
"sticky_minutes": 30,
"city": "berlin"
}
}),
});
console.log(await r.json());{
"id": 18342,
"tier": "prem",
"type": "socks5",
"country": "US",
"period": "month",
"quantity": 2,
"price_usd": 5.58,
"status": "active",
"protocol": "socks5",
"created_at": "2026-10-18T12:00:00Z",
"expires_at": "2026-11-17T12:00:00Z",
"traffic_gb": null,
"renewable": true,
"source": "api",
"proxies": [
{
"host": "45.12.31.7",
"port": 12324,
"login": "u7f3k2",
"password": "p9QmL2xa"
},
{
"host": "45.12.31.9",
"port": 12324,
"login": "u7f3k2",
"password": "p9QmL2xa"
}
],
"charged_usd": 5.58
}Список заказовList orders
/v1/ordersВаши заказы из API и из бота, новые сверху. Логинов и паролей в списке нет, они приходят в запросе одного заказа.Your orders from both the API and the bot, newest first. The list has no logins or passwords; get them from a single order.
ПараметрыParameters
statusstringqueryactive · expired · paused · exhaustedactive · expired · paused · exhaustedlimitintegerqueryoffsetintegerquerycurl https://api.777projects.org/v1/orders?status=active&limit=20 \
-H "Authorization: Bearer $API_KEY"import requests
API_KEY = "sk_live_..."
r = requests.get(
"https://api.777projects.org/v1/orders?status=active&limit=20",
headers={"Authorization": f"Bearer {API_KEY}"},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/orders?status=active&limit=20", {
headers: { Authorization: `Bearer ${API_KEY}` },
});
console.log(await r.json());{
"orders": [
{
"id": 18342,
"tier": "prem",
"type": "socks5",
"country": "US",
"period": "month",
"quantity": 2,
"price_usd": 5.58,
"status": "active",
"protocol": "socks5",
"created_at": "2026-10-18T12:00:00Z",
"expires_at": "2026-11-17T12:00:00Z",
"traffic_gb": null,
"renewable": true,
"source": "api"
}
],
"total": 1,
"limit": 20,
"offset": 0
}ЗаказRetrieve an order
/v1/orders/{order_id}Заказ с логинами и паролями. expires_at считается с учётом продлений. У заказов per_gb там null: они работают, пока не кончится трафик.An order with logins and passwords. expires_at includes renewals. For per_gb orders it is null: they work until the traffic runs out.
ПараметрыParameters
order_idintegerобязательныйrequiredcurl https://api.777projects.org/v1/orders/18342 \
-H "Authorization: Bearer $API_KEY"import requests
API_KEY = "sk_live_..."
r = requests.get(
"https://api.777projects.org/v1/orders/18342",
headers={"Authorization": f"Bearer {API_KEY}"},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/orders/18342", {
headers: { Authorization: `Bearer ${API_KEY}` },
});
console.log(await r.json());{
"id": 18342,
"tier": "prem",
"type": "socks5",
"country": "US",
"period": "month",
"quantity": 2,
"price_usd": 5.58,
"status": "active",
"protocol": "socks5",
"created_at": "2026-10-18T12:00:00Z",
"expires_at": "2026-11-17T12:00:00Z",
"traffic_gb": null,
"renewable": true,
"source": "api",
"proxies": [
{
"host": "45.12.31.7",
"port": 12324,
"login": "u7f3k2",
"password": "p9QmL2xa"
},
{
"host": "45.12.31.9",
"port": 12324,
"login": "u7f3k2",
"password": "p9QmL2xa"
}
]
}Продлить заказRenew an order
/v1/orders/{order_id}/renewПродлевает те же прокси: IP, логин и пароль остаются прежними. Работает, если у заказа renewable: true (Premium, Эконом, Telegram). Новый срок прибавляется к текущему.Extends the same proxies: IP, login and password stay as they are. Works when the order has renewable: true (Premium, Economy, Telegram). The new term is added to the current one.
ПараметрыParameters
order_idintegerобязательныйrequiredIdempotency-KeystringheaderТело запросаRequest body
periodstringобязательныйrequiredcurl -X POST https://api.777projects.org/v1/orders/18342/renew \
-H "Authorization: Bearer $API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"period": "month"
}'import requests
API_KEY = "sk_live_..."
r = requests.post(
"https://api.777projects.org/v1/orders/18342/renew",
headers={"Authorization": f"Bearer {API_KEY}"},
json={
"period": "month"
},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/orders/18342/renew", {
method: "POST",
headers: { Authorization: `Bearer ${API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
"period": "month"
}),
});
console.log(await r.json());{
"id": 18342,
"tier": "prem",
"type": "socks5",
"country": "US",
"period": "month",
"quantity": 2,
"price_usd": 5.58,
"status": "active",
"protocol": "socks5",
"created_at": "2026-10-18T12:00:00Z",
"expires_at": "2026-12-17T12:00:00Z",
"traffic_gb": null,
"renewable": true,
"source": "api",
"proxies": [
{
"host": "45.12.31.7",
"port": 12324,
"login": "u7f3k2",
"password": "p9QmL2xa"
},
{
"host": "45.12.31.9",
"port": 12324,
"login": "u7f3k2",
"password": "p9QmL2xa"
}
],
"charged_usd": 5.58
}Остаток трафикаGet traffic
/v1/orders/{order_id}/trafficСколько GB потрачено и сколько осталось.How many GB are used and how many are left.
ПараметрыParameters
order_idintegerобязательныйrequiredcurl https://api.777projects.org/v1/orders/18355/traffic \
-H "Authorization: Bearer $API_KEY"import requests
API_KEY = "sk_live_..."
r = requests.get(
"https://api.777projects.org/v1/orders/18355/traffic",
headers={"Authorization": f"Bearer {API_KEY}"},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/orders/18355/traffic", {
headers: { Authorization: `Bearer ${API_KEY}` },
});
console.log(await r.json());{
"total_gb": 10.0,
"used_gb": 3.412,
"left_gb": 6.588,
"used_percent": 34.1
}Докупить трафикAdd traffic
/v1/orders/{order_id}/trafficДобавляет GB к заказу. Логин, пароль и настройки не меняются.Adds GB to the order. Login, password and settings stay the same.
ПараметрыParameters
order_idintegerобязательныйrequiredIdempotency-KeystringheaderТело запросаRequest body
periodstringобязательныйrequired10gbVolume from the catalog, e.g. 10gbcurl -X POST https://api.777projects.org/v1/orders/18355/traffic \
-H "Authorization: Bearer $API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"period": "10gb"
}'import requests
API_KEY = "sk_live_..."
r = requests.post(
"https://api.777projects.org/v1/orders/18355/traffic",
headers={"Authorization": f"Bearer {API_KEY}"},
json={
"period": "10gb"
},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/orders/18355/traffic", {
method: "POST",
headers: { Authorization: `Bearer ${API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
"period": "10gb"
}),
});
console.log(await r.json());{
"total_gb": 20.0,
"used_gb": 3.412,
"left_gb": 16.588,
"used_percent": 17.1,
"charged_usd": 14.0
}Настройки заказаGet settings
/v1/orders/{order_id}/settingsГео, тип сессии, протокол, потоки, доступ по IP, заблокированные сайты и адрес шлюза.Geo, session type, protocol, threads, IP access, blocked sites and the gateway address.
ПараметрыParameters
order_idintegerобязательныйrequiredcurl https://api.777projects.org/v1/orders/18355/settings \
-H "Authorization: Bearer $API_KEY"import requests
API_KEY = "sk_live_..."
r = requests.get(
"https://api.777projects.org/v1/orders/18355/settings",
headers={"Authorization": f"Bearer {API_KEY}"},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/orders/18355/settings", {
headers: { Authorization: `Bearer ${API_KEY}` },
});
console.log(await r.json());{
"country": "DE",
"state": null,
"city": "berlin",
"zip": null,
"asn": null,
"exclude_asn": [],
"anonymous": false,
"session": "sticky",
"sticky_minutes": 30,
"protocol": "both",
"threads": 200,
"allowed_ips": [
"203.0.113.10"
],
"blocked_hosts": [
"doubleclick.net"
],
"paused": false,
"login": "4f0c1e9a2b7d",
"gateway": {
"host": "proxy.777projects.org",
"http_port": 823,
"socks5_port": 824,
"sticky_ports": [
10000,
20000
]
}
}Изменить настройкиUpdate settings
/v1/orders/{order_id}/settingsПередайте только поля, которые меняете. Менять можно бесплатно и сколько угодно, логин и пароль остаются прежними. Если сменить страну, штат, город, ZIP и ASN сбросятся.Send only the fields you change. Changes are free and unlimited, and the login and password stay the same. Changing the country resets state, city, ZIP and ASN.
ПараметрыParameters
order_idintegerобязательныйrequiredТело запросаRequest body
countrystringANYISO-2 or ANYstatestringcitystringzipstringasnstringexclude_asnarrayanonymousbooleansessionstringrotating или stickyrotating or stickysticky_minutesintegerprotocolstringhttp · socks5 · bothhttp · socks5 · boththreadsintegerallowed_ipsarrayblocked_hostsarraypausedbooleancurl -X PATCH https://api.777projects.org/v1/orders/18355/settings \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"country": "US",
"state": "california",
"session": "sticky",
"sticky_minutes": 15
}'import requests
API_KEY = "sk_live_..."
r = requests.patch(
"https://api.777projects.org/v1/orders/18355/settings",
headers={"Authorization": f"Bearer {API_KEY}"},
json={
"country": "US",
"state": "california",
"session": "sticky",
"sticky_minutes": 15
},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/orders/18355/settings", {
method: "PATCH",
headers: { Authorization: `Bearer ${API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
"country": "US",
"state": "california",
"session": "sticky",
"sticky_minutes": 15
}),
});
console.log(await r.json());{
"country": "US",
"state": "california",
"city": null,
"zip": null,
"asn": null,
"exclude_asn": [],
"anonymous": false,
"session": "sticky",
"sticky_minutes": 15,
"protocol": "both",
"threads": 200,
"allowed_ips": [
"203.0.113.10"
],
"blocked_hosts": [
"doubleclick.net"
],
"paused": false,
"login": "4f0c1e9a2b7d",
"gateway": {
"host": "proxy.777projects.org",
"http_port": 823,
"socks5_port": 824,
"sticky_ports": [
10000,
20000
]
}
}Строки подключенияGet proxy lines
/v1/orders/{order_id}/linesСтроки подключения для софта. В режиме sticky у каждой строки свой порт и свой IP, можно получить до 1000 строк.Connection lines for your software. In sticky mode each line has its own port and IP; you can get up to 1000 lines.
ПараметрыParameters
order_idintegerобязательныйrequiredformatstringqueryhpup host:port:login:pass, uphp login:pass@host:port, http и socks в виде URLhpup host:port:login:pass, uphp login:pass@host:port, http and socks as URLscountintegerqueryprotocolstringqueryhttp или socks5http or socks5asstringquerytext: ответ обычным текстом, по строке на проксиtext: plain-text response, one proxy per linecurl https://api.777projects.org/v1/orders/18355/lines?format=hpup&count=3 \
-H "Authorization: Bearer $API_KEY"import requests
API_KEY = "sk_live_..."
r = requests.get(
"https://api.777projects.org/v1/orders/18355/lines?format=hpup&count=3",
headers={"Authorization": f"Bearer {API_KEY}"},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/orders/18355/lines?format=hpup&count=3", {
headers: { Authorization: `Bearer ${API_KEY}` },
});
console.log(await r.json());{
"lines": [
"proxy.777projects.org:10000:4f0c1e9a2b7d:kq81xz0pa3",
"proxy.777projects.org:10001:4f0c1e9a2b7d:kq81xz0pa3",
"proxy.777projects.org:10002:4f0c1e9a2b7d:kq81xz0pa3"
]
}Новый парольReset password
/v1/orders/{order_id}/reset-passwordВыдаёт новый пароль. Старый сразу перестаёт работать.Issues a new password. The old one stops working at once.
ПараметрыParameters
order_idintegerобязательныйrequiredcurl -X POST https://api.777projects.org/v1/orders/18355/reset-password \
-H "Authorization: Bearer $API_KEY"import requests
API_KEY = "sk_live_..."
r = requests.post(
"https://api.777projects.org/v1/orders/18355/reset-password",
headers={"Authorization": f"Bearer {API_KEY}"},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/orders/18355/reset-password", {
method: "POST",
headers: { Authorization: `Bearer ${API_KEY}` },
});
console.log(await r.json());{
"login": "4f0c1e9a2b7d",
"password": "n2v8qkx71c",
"line": "proxy.777projects.org:823:4f0c1e9a2b7d:n2v8qkx71c"
}СтатистикаGet usage stats
/v1/orders/{order_id}/statsТрафик и запросы по дням за неделю, плюс ошибки подключения. NO_RAY: под фильтр нет IP, ослабьте гео. TRAFFIC_EXHAUSTED: закончились GB. THREADS_EXHAUSTED: слишком много соединений.Daily traffic and requests for the last week, plus connection errors. NO_RAY: no IP matches the filter, loosen the geo. TRAFFIC_EXHAUSTED: out of GB. THREADS_EXHAUSTED: too many connections.
ПараметрыParameters
order_idintegerобязательныйrequiredcurl https://api.777projects.org/v1/orders/18355/stats \
-H "Authorization: Bearer $API_KEY"import requests
API_KEY = "sk_live_..."
r = requests.get(
"https://api.777projects.org/v1/orders/18355/stats",
headers={"Authorization": f"Bearer {API_KEY}"},
)
print(r.json())const API_KEY = "sk_live_...";
const r = await fetch("https://api.777projects.org/v1/orders/18355/stats", {
headers: { Authorization: `Bearer ${API_KEY}` },
});
console.log(await r.json());{
"days": [
{
"date": "2026-10-17",
"traffic_gb": 1.204,
"requests": 48211
},
{
"date": "2026-10-18",
"traffic_gb": 0.861,
"requests": 30544
}
],
"errors": [
{
"code": "NO_RAY",
"count": 12
}
]
}