Skip to content

Эндпоинт цен

Эндпоинт /prices предоставляет информацию о ценах на аренду энергии в реальном времени для различных периодов дня.

URL эндпоинта

GET https://netts.io/apiv2/prices

Аутентификация

Этот эндпоинт требует аутентификации с помощью API-ключа. Подробности смотрите на странице Аутентификация.

Заголовки запроса

ЗаголовокОбязательныйОписание
X-API-KEYДаВаш API-ключ NETTS
X-Real-IPДаIP-адрес, включенный в белый список для вашего API-ключа
Content-TypeНетapplication/json

IP Белый список

Все API-запросы должны поступать с IP-адресов, добавленных в белый список. Вы можете добавить до 3 IP-адресов в белый список на странице панели управления.

Как добавить IP в белый список

  1. Войдите в панель управления NETTS
  2. Перейдите на вкладку API: https://www.netts.io/workspace/dashboard.php?tab=api
  3. В разделе "IP Whitelist" нажмите кнопку "Add IP Address"
  4. Введите действительный IPv4 или IPv6 адрес
  5. Подтвердите добавление

Примечание: Запросы с IP-адресов, которые не включены в белый список, будут отклонены с ошибкой аутентификации.

Ответ

Ответ включает текущее время UTC, активный период ценообразования, цену хоста и подробную информацию о ценах для всех временных периодов.

Параметры ответа

ПараметрТипОписание
statusstringСтатус запроса ("success" или "error")
current_utc_timestringТекущее время UTC в формате "YYYY-MM-DD HH:MM:SS"
current_utc_hourintegerТекущий час UTC (0-23)
active_periodstringТекущий активный временной период (например, "05:00-07:00")
last_updatestringВремя последнего обновления цен
host_pricenumberТекущая цена хоста в TRX
periodsarrayСписок периодов ценообразования

Структура объекта Period

Каждый период в массиве periods содержит:

ПараметрТипОписание
labelstringПонятное для человека название периода
periodstringВременной диапазон в формате "HH:MM-HH:MM"
is_activebooleanАктивен ли в данный момент этот период
pricesobjectИнформация о ценах для разных объемов энергии

Структура объекта Prices

Объект prices внутри каждого периода содержит:

ПараметрТипОписание
less_than_200kobjectЦены для объемов энергии менее 200 000
equal_131kobjectЦены для ровно 131 000 энергии
more_than_200kobjectЦены для объемов энергии более 200 000

Каждый вариант цены включает:

ПараметрТипОписание
price_sunintegerЦена в SUN (1 TRX = 1 000 000 SUN)

Примеры запросов

Пример CURL

bash
curl -X GET "https://netts.io/apiv2/prices" \
  -H "Content-Type: application/json" \
  -H "X-API-KEY: ваш_api_ключ" \
  -H "X-Real-IP: ваш_ip_из_белого_списка"

Пример Python

python
import requests
import json

# Конфигурация запроса
url = "https://netts.io/apiv2/prices"
api_key = "ваш_api_ключ"  # Ваш API ключ

headers = {
    "Content-Type": "application/json",
    "X-API-KEY": api_key,
    "X-Real-IP": "ваш_ip_из_белого_списка"  # IP из белого списка
}

try:
    # Отправляем GET-запрос к API цен
    response = requests.get(url, headers=headers, timeout=15)
    
    # Обрабатываем JSON-ответ
    if response.status_code == 200:
        data = response.json()
        print(json.dumps(data, ensure_ascii=False, indent=2))
    else:
        print(f"Ошибка: {response.status_code}")
        print(response.text)
except Exception as e:
    print(f"Произошла ошибка: {str(e)}")

Пример ответа

json
{
  "status": "success",
  "current_utc_time": "2025-04-23 14:30:45",
  "current_utc_hour": 14,
  "active_period": "11:00-21:00",
  "last_update": "2025-04-23 14:15:22",
  "host_price": 0.075,
  "periods": [
    {
      "label": "Раннее утро",
      "period": "05:00-07:00",
      "is_active": false,
      "prices": {
        "less_than_200k": {
          "price_sun": 420
        },
        "equal_131k": {
          "price_sun": 410
        },
        "more_than_200k": {
          "price_sun": 400
        }
      }
    },
    {
      "label": "Утро",
      "period": "07:00-11:00",
      "is_active": false,
      "prices": {
        "less_than_200k": {
          "price_sun": 450
        },
        "equal_131k": {
          "price_sun": 440
        },
        "more_than_200k": {
          "price_sun": 430
        }
      }
    },
    {
      "label": "День",
      "period": "11:00-21:00",
      "is_active": true,
      "prices": {
        "less_than_200k": {
          "price_sun": 480
        },
        "equal_131k": {
          "price_sun": 470
        },
        "more_than_200k": {
          "price_sun": 460
        }
      }
    },
    {
      "label": "Вечер",
      "period": "21:00-23:00",
      "is_active": false,
      "prices": {
        "less_than_200k": {
          "price_sun": 440
        },
        "equal_131k": {
          "price_sun": 430
        },
        "more_than_200k": {
          "price_sun": 420
        }
      }
    },
    {
      "label": "Ночь",
      "period": "23:00-05:00",
      "is_active": false,
      "prices": {
        "less_than_200k": {
          "price_sun": 400
        },
        "equal_131k": {
          "price_sun": 390
        },
        "more_than_200k": {
          "price_sun": 380
        }
      }
    }
  ]
}

Ответы с ошибками

Код статусаОписание
401Ошибка аутентификации (неверный API-ключ или IP-адрес не в белом списке)
403Доступ запрещен (IP-адрес не добавлен в белый список)
429Превышен лимит запросов (слишком много запросов)
500Внутренняя ошибка сервера

Примеры ответов с ошибкой

json
{
  "status": "error",
  "code": -1,
  "msg": "Invalid API key or IP not in whitelist"
}
json
{
  "status": "error",
  "code": -2,
  "msg": "Your IP address is not whitelisted"
}

Примечания

  • Все времена указаны в UTC.
  • Цены указаны в SUN (1 TRX = 1 000 000 SUN).
  • Активный период определяется на основе текущего времени UTC.
  • Обновления цен могут происходить несколько раз в день.