Перейти к содержимому

Заказать порт

POST
/ports/order
curl --request POST \
--url https://api.ltesocks.io/v2/ports/order \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "plan": "5349b4ddd2781d08c09890f3", "tarification": { "time": 2592000, "traffic": 51200, "price": 14500 } }'

Сохраняются прежние форматы JSON и HTTP-статусы, включая объекты ошибок и HTTP 500 при недостатке средств и ошибках валидации. Для идемпотентности применяются настроенные TTL и тайм-аут блокировки; серверные ошибки по умолчанию не кешируются. Необязательный заголовок X-LTESocks-Order-State принимает значения not-created, created или unknown. Только not-created подтверждает, что эта попытка не создала заказ. Отсутствие ответа или состояние unknown не означают, что повторная попытка безопасна. X-LTESocks-Error-Code может быть priceChanged, insufficientBalance, validationFailed, unauthorized, forbidden, portDetailsUnavailable, upstreamError или idempotencyConflict. Эти дополнительные заголовки не меняют обработку других POST-запросов.

Idempotency-Key
string формат: uuid

Необязательный UUID, идентифицирующий один запрос на изменение. Используйте его повторно только для повторной попытки того же запроса.

Параметры тарифа

Тип содержимогоapplication/json
object
plan

ID тарифа

string
Пример
5349b4ddd2781d08c09890f3
tarification
object
time

Срок действия тарифа в секундах

integer
Пример
2592000
traffic

Объём трафика тарифа в мегабайтах

integer
Пример
51200
price

Цена тарифа в центах

integer
Пример
14500

Операция выполнена успешно

Тип содержимогоapplication/json
object
port

Номер порта

string
ip

Текущий IP-адрес порта (0.0.0.0, если недоступен)

string
geoip
object
continentCode
string
continentName
string
countryCode2
string
countryCode3
string
stateProv
string
district
string
city
string
zipcode
string
latitude
string
longitude
string
isp
string
status

Статус порта

string
Допустимые значения: active reset suspended disconnected outoftraffic
currentStatus

Текущий статус

string
Допустимые значения: active declined
resetToken

Токен сброса порта

string
signature

Сигнатура порта

string
vpnAccess

Указывает, имеет ли порт доступ к VPN-серверу

boolean
autoResetInterval

Интервал автосброса порта в секундах; 0 отключает автосброс

integer
tags

Теги порта

Array<string>
<= 30 симв.
plan
object
id

ID тарифа

string
name

Название тарифа

string
countryCode

Код страны тарифа

string
enabled

Указывает, активен ли тариф

boolean
autoRenew

Указывает, включено ли автопродление тарифа

boolean
activatedAt

Время активации тарифа

string формат: date-time
expiresAt

Время окончания тарифа

string формат: date-time
trafficRemains

Оставшийся объём трафика в мегабайтах

integer
tarification
object
time

Срок действия тарифа в секундах

integer
traffic

Объём трафика тарифа в мегабайтах

integer
price

Цена тарифа в центах

integer
credentials
object
ip
Array<string>
<= 20 симв.
password
Array<object>
<= 20 симв.
object
login
string
password
string
Пример
{
"port": 10000,
"ip": "1.1.1.1",
"geoip": {
"continentCode": "NA",
"continentName": "North America",
"countryCode2": "US",
"countryCode3": "United States",
"latitude": "38.89037",
"longitude": "-77.03196",
"isp": "T-Mobile USA, Inc."
},
"status": "active",
"currentStatus": "active",
"resetToken": "6015510d206e4d7b023e5f978a56e3cf49d7e79bc26cf28c69b75314e098a61b",
"signature": "Windows",
"vpnAccess": true,
"plan": {
"id": "5349b4ddd2781d08c09890f3",
"name": "UK Three",
"countryCode": "UK",
"enabled": true,
"autoRenew": true,
"activatedAt": "2022-04-02T05:57:29.054Z",
"expiresAt": "2022-05-02T05:57:29.054Z",
"trafficRemains": 51200,
"tarification": {
"time": 2592000,
"traffic": 51200,
"price": 14500
}
},
"credentials": {
"ip": [
"2.2.2.2"
],
"password": [
{
"login": "login",
"password": "password"
}
]
}
}
X-LTESocks-Order-State
string
Допустимые значения: created

Требуется аутентификация (объект ошибки прежнего формата).

Тип содержимогоapplication/json
object
error
обязательно

Текст ошибки

string
code
обязательно

Код ошибки

integer
Пример
{
"error": "example error",
"code": 400
}

Цена изменилась; объект ошибки прежнего формата без данных о новой цене. Обновите тарифы перед повторным подтверждением.

Тип содержимогоapplication/json
object
error
обязательно

Текст ошибки

string
code
обязательно

Код ошибки

integer
Пример
{
"error": "example error",
"code": 400
}
X-LTESocks-Error-Code
string
Допустимые значения: priceChanged
X-LTESocks-Order-State
string
Допустимые значения: not-created

Ошибка прежнего формата. Необязательные заголовки повторной попытки сохраняются.

Тип содержимогоapplication/json
object
error
обязательно

Текст ошибки

string
code
обязательно

Код ошибки

integer
Пример
{
"error": "example error",
"code": 400
}
X-LTESocks-Order-State
string
Допустимые значения: not-created created unknown
X-LTESocks-Error-Code
string
Retry-After
string
Retry-At
string