Сбросить порт
CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");curl_easy_setopt(hnd, CURLOPT_URL, "https://api.ltesocks.io/v2/ports/example/reset");
struct curl_slist *headers = NULL;headers = curl_slist_append(headers, "Authorization: Bearer <token>");curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
CURLcode ret = curl_easy_perform(hnd);using System.Net.Http.Headers;var client = new HttpClient();var request = new HttpRequestMessage{ Method = HttpMethod.Post, RequestUri = new Uri("https://api.ltesocks.io/v2/ports/example/reset"), Headers = { { "Authorization", "Bearer <token>" }, },};using (var response = await client.SendAsync(request)){ response.EnsureSuccessStatusCode(); var body = await response.Content.ReadAsStringAsync(); Console.WriteLine(body);}package main
import ( "fmt" "net/http" "io")
func main() {
url := "https://api.ltesocks.io/v2/ports/example/reset"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close() body, _ := io.ReadAll(res.Body)
fmt.Println(res) fmt.Println(string(body))
}HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://api.ltesocks.io/v2/ports/example/reset")) .header("Authorization", "Bearer <token>") .method("POST", HttpRequest.BodyPublishers.noBody()) .build();HttpResponse<String> response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());System.out.println(response.body());OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder() .url("https://api.ltesocks.io/v2/ports/example/reset") .post(null) .addHeader("Authorization", "Bearer <token>") .build();
Response response = client.newCall(request).execute();import axios from 'axios';
const options = { method: 'POST', url: 'https://api.ltesocks.io/v2/ports/example/reset', headers: {Authorization: 'Bearer <token>'}};
try { const { data } = await axios.request(options); console.log(data);} catch (error) { console.error(error);}const url = 'https://api.ltesocks.io/v2/ports/example/reset';const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}val client = OkHttpClient()
val request = Request.Builder() .url("https://api.ltesocks.io/v2/ports/example/reset") .post(null) .addHeader("Authorization", "Bearer <token>") .build()
val response = client.newCall(request).execute()use reqwest;
#[tokio::main]pub async fn main() { let url = "https://api.ltesocks.io/v2/ports/example/reset";
let mut headers = reqwest::header::HeaderMap::new(); headers.insert("Authorization", "Bearer <token>".parse().unwrap());
let client = reqwest::Client::new(); let response = client.post(url) .headers(headers) .send() .await;
let results = response.unwrap() .json::<serde_json::Value>() .await .unwrap();
dbg!(results);}curl --request POST \ --url https://api.ltesocks.io/v2/ports/example/reset \ --header 'Authorization: Bearer <token>'wget --quiet \ --method POST \ --header 'Authorization: Bearer <token>' \ --output-document \ - https://api.ltesocks.io/v2/ports/example/resetАвторизация
Заголовок раздела «Авторизация»Параметры
Заголовок раздела «Параметры»Параметры пути
Заголовок раздела «Параметры пути»Публичный номер порта, принадлежащего текущему аккаунту.
Параметры заголовков
Заголовок раздела «Параметры заголовков»Необязательный UUID, идентифицирующий один запрос на изменение. Используйте его повторно только для повторной попытки того же запроса.
Операция выполнена успешно
object
Номер порта
Текущий IP-адрес порта (0.0.0.0, если недоступен)
object
Статус порта
Текущий статус
Токен сброса порта
Сигнатура порта
Указывает, имеет ли порт доступ к VPN-серверу
Интервал автосброса порта в секундах; 0 отключает автосброс
Теги порта
object
ID тарифа
Название тарифа
Код страны тарифа
Указывает, активен ли тариф
Указывает, включено ли автопродление тарифа
Время активации тарифа
Время окончания тарифа
Оставшийся объём трафика в мегабайтах
object
Срок действия тарифа в секундах
Объём трафика тарифа в мегабайтах
Цена тарифа в центах
object
object
Пример
{ "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" } ] }}Ошибка. Если сброс временно недоступен, ответ может содержать заголовки повторной попытки.
object
Текст ошибки
Код ошибки
Пример
{ "error": "example error", "code": 400}Заголовки
Заголовок раздела «Заголовки»Время в формате ISO 8601, когда можно повторить попытку сброса.
Число секунд ожидания перед повторной попыткой сброса.