Документация API

Это API получения и передачи показаний счетчиков в Водоканал и Энергосбыт

GET /api/vdkanal

Авторизация и получение данных Водоканала

Параметры (GET):

{
  "counters": [
    {
      "id": XXXXXXXXX,
      "name": "Счетчик СГВ-15",
      "previous_value": "2",
      "date": "09.02.2026",
      "type": "hot-counter"
    },
    ...
  ],
  "cookie": "_csrf-natural=...",
  "csrfToken": "CTX...==",
  "account": XXXXXX
}
POST /api/vdkanal

Передача показаний счетчика в Водоканал

Параметры (JSON в теле запроса):

Пример запроса:

POST /api/vdkanal
Content-Type: application/json

{
  "account": "XXXXXXXXX",
  "csrfToken": "CTX...==",
  "cookie": "_csrf-natural=...; PHPSESSID=...",
  "counter": "YYYYYYYYY",
  "value": "10"
}

Форма-песочница для тестирования POST /api/vdkanal

Вы можете протестировать запрос прямо здесь. Все данные отправляются на этот сервер, который затем пересылает их в Водоканал.






Ответ сервера:

// Ответ будет показан здесь
GET /api/esplus

Авторизация в Энергосбыте и получение списка счетчиков

Параметры (GET):

Сервер авторизуется во внутреннем API Энергосбыта и возвращает удобный JSON:

{
  "counters": [
    {
      "id": "123456",
      "number": "2255",
      "unit": "Куб.м",
      "type": "Счетчик расхода воды",
      "digits": "3",
      "installed_date": "01.12.2019",
      "verification_period": "24.07.2022",
      "service": {
        "id": "123456",
        "code": "heat_energy",
        "name": "Тепл.эн.на нужды ГВС"
      },
      "accepted": {
        "date": "31.01.2026",
        "period": "Январь 2026",
        "t1": 220.45,
        "t1_formatted": "220,45"
      }
    },
    ...
  ],
  "accessToken": "eyJ0eXA...JK9e6JDrp-Y",
  "account": "KIESB%7CXXXXXX"
}
POST /api/esplus

Передача показаний счетчика в Энергосбыт

Параметры (JSON в теле запроса):

Пример запроса:

POST /api/esplus
Content-Type: application/json

{
  "token": "eyJ0eXA...JK9e6JDrp-Y",
  "account": "KIESB%7CXXXXXXXXX",
  "counter": "YYYYYYYYYY",
  "value": 123.45
}

Форма-песочница для тестирования POST /api/esplus

Сначала вызовите GET /api/esplus, получите accessToken и нужный meter_id, затем подставьте их сюда.





Ответ сервера:

// Ответ будет показан здесь