RUS
  • RUS
  • ENG

API сервиса auth gateway

Последние изменения: 27.08.2025

API - методы сервиса авторизации

Сервис предназначен для выполнения ряда функций над пользователями и их регистрационными данными

  • Авторизация пользователя. Производится несколькими методами /auth, через предоставление ранее зарегистрированных логина/пароля, либо через предоставление валидного RT. Результатом авторизации пользователя будет выдача JWT (JSON Web Token) и RT (Refresh Token).
  • Деавторизация пользователя или закрытие сессии авторизации. Производится несколькими методами, через методами запроса /auth/close с предоставлением RT, либо через метод POST запроса /auth/sessions с предоставлением sessionId
  • Регистрация и редактирование пользовательских данных с помощью методов запроса /auth/registration
  • Вводится понятие "claim" или "право доступа" к определённому сервису с вариантами исполнения этого права на стороне сервис. Для просмотр и редактирование глоссария возможных прав доступа используются методы запроса /auth/claims
  • Вводится понятие "role" - набор из прав доступа определяющий привилегии и роль пользователя. Для просмотр и редактирование глоссария возможных ролей используются методы запроса /auth/roles
  • Просмотр и редактирование прав доступа пользователя. Методы запроса /auth/actor. С помощью этих методов можно выдать права доступа пользователю, через выдачу нескольких ролей или отдельных прав. Хоть функционал выдачи отдельных прав пользователю и доступен, крайне рекомендуется использовать выдачу прав через роли, т.к. после редактирования роли и переавторизации, у всех пользователей с этой ролью обновятся наборы прав доступа. Выдачу прав доступа через отдельные права доступа можно использовать в крайних или тестовых случаях. В процессе авторизации права из ролей и отдельные права выданные этим методом будут добавлены в JWT
  • Просмотр и закрытие активных сессий авторизации. Сессии - внутреннее состояние сервиса. Необходимо для контроль и закрытия со стороны администратора сессий авторизации. Методы запросы /auth/sessions

Редактирование глоссариев ролей и прав доступа ложится на разработчиков API сервисов.

Общий вид глоссария прав доступа для сервиса авторизации.

{
   "auth": {
      "admin": {
         "comment": "Разрешено использовать все методы сервиса",
         "options": [
            "
         ]
      },
      "actor": {
         "comment": "Просмотр, выдача и удаление прав  доступа пользователю",
         "options": [
            ",
            "GET",
            "POST",
            "DELETE"
         ]
      },
      "claims": {
         "comment": "Просмотр и редактирование глоссария прав доступа",
         "options": [
            ",
            "GET",
            "POST",
            "PUT",
            "DELETE"
         ]
      },
      "roles": {
         "comment": "Просмотр и редактирование глоссария ролей",
         "options": [
            ",
            "GET",
            "POST",
            "PUT",
            "DELETE"
         ]
      },
      "registration": {
         "comment": "Просмотр, редактирование и удаление данных всех пользователей",
         "options": [
            ",
            "GET",
            "PUT",
            "DELETE"
         ]
      },
      "sessions": {
         "comment": "Просмотр и закрытие сессий авторизации",
         "options": [
            ",
            "GET",
            "POST"
         ]
      }
   }
}

Общий вид глоссария ролей для сервиса авторизации.

{
   "authAdmin": {
      "services": {
         "auth": {
            "admin": "
         }
      },
      "comment": "Доступны все запросы/методы сервиса авторизации",
      "apiKey": "
   },
   "authRegistration": {
      "services": {
         "auth": {
            "registration": "
         }
      },
      "comment": "Доступны методы просмотра, редактирования и удаление данных всех пользователей",
      "apiKey": "
   },
   "authRegistration2": {
      "services": {
         "auth": {
            "registration": "GET,PUT"
         }
      },
      "comment": "Доступны методы просмотра и редактирования данных всех пользователей",
      "apiKey": "
   },
   "authRegistration3": {
      "services": {
         "auth": {
            "admin": ",
            "!registration": "
         }
      },
      "comment": "Доступны все методы сервиса авторизации, кроме методов просмотра, редактирования и удаление данных всех пользователей",
      "apiKey": "
   },
   "authRegistration4": {
      "services": {
         "auth": {
            "admin": ",
            "!registration": "DELETE"
         }
      },
      "comment": "Доступны все методы сервиса авторизации, кроме метода удаления пользователей",
      "apiKey": "
   }
}

В общем виде можно создать роль или выдать отдельное право доступа, c правом использовать все методы и запросы сервиса:

"services": { "auth": { "admin": " } },

C правом использовать все методы определенного запроса сервиса:

"services": { "auth": { "registration": " } },

С правом использовать определенные методы определенного  запроса:

"services": { "auth": { "registration": "GET,PUT" } },

С правом использовать все методы и запросы сервиса, кроме всех методов определенных запросов:

"services": { "auth": { "admin": ", "!registration": " } },

С правом использовать все методы и запросы сервиса, кроме определенных методов определенного запросов:

"services": { "auth": { "admin": ", "!registration": "DELETE" } },

Таблица 1. Сводная таблица всех API методов сервиса авторизации

Описание

URL

Метод

Авторизация

/auth

GET/POST

Закрытие сессии по RT 

/auth/close

GET/POST

Информация о модуле

/auth/info

GET

Декодирование токенов

/auth/decode

GET/POST

Проверка прав доступа

/auth/check

GET

Смена пользователя без пароля

/auth/swap GET/POST

Получение информации о пользователи

/auth/registration GET

Регистрация нового пользователя

/auth/registration POST

Изменение данных пользователя

/auth/registration PUT

Удаление пользователя

/auth/registration DELETE

Подтверждение почты/телефона

/auth/confirm GET/POST

Получение возможных прав/сервисов

/auth/claims

GET

Установка возможных прав для сервиса

/auth/claims

POST

Редактирование возможных прав/сервисов

/auth/claims

PUT

Удаление возможных прав/сервисов

/auth/claims DELETE

Получение возможных ролей

/auth/roles

GET

Установка прав для роли

/auth/roles POST

Редактирование прав ролей

/auth/roles PUT

Удаление прав/ролей

/auth/roles DELETE

Получения прав пользователя

/auth/actor GET

Выдача прав пользователю

/auth/actor POST

Удаление прав пользователя

/auth/actor DELETE

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

/auth/sessions GET

Закрытие сессии по ID

/auth/sessions POST

Получение списка компаний

/auth/companies

GET

Создание компаний

/auth/companies POST

Редактирование полей компаний

/auth/companies PUT

Удаление компаний

/auth/companies DELETE

Получение списка контрактов

/auth/contracts

GET

Создание контрактов

/auth/contracts POST

Редактирование полей контрактов

/auth/contracts PUT

Удаление контрактов

/auth/contracts DELETE

Получение списка отгрузок

/auth/batches

GET

Создание отгрузок

/auth/batches POST

Редактирование полей отгрузок

/auth/batches PUT

Удаление отгрузок

/auth/batches DELETE

Получение списка модемов

/auth/modems

GET

Создание модемов

/auth/modems POST

Редактирование полей модемов

/auth/modems PUT

Удаление модемов

/auth/modems DELETE

Получение списка связей модем - компания 

/auth/modemCompany

GET

Создание связей модем - компания

/auth/modemCompany POST

Удаление связей модем - компания

/auth/modemCompany DELETE

Получение списка связей пользователь - компания 

/auth/userCompany

GET

Создание связей пользователь - компания

/auth/userCompany POST

Удаление связей пользователь - компания

/auth/userCompany DELETE

Получение списка станций

/auth/stations

GET

Создание станций

/auth/stations POST

Редактирование полей станций

/auth/stations PUT

Удаление станций

/auth/stations DELETE

Получение списка связей станция - компания 

/auth/stationCompany

GET

Создание связей станция - компания

/auth/stationCompany POST

Удаление связей станция - компания

/auth/stationCompany DELETE

Ограниченный поиск пользователей

/auth/simpleUsers GET

Ограниченный поиск компаний

/auth/simpleCompanies GET

Получение прав доступа к модемам

/auth/modemAccess POST

Выдача прав доступа пользователю на свои модемы

/auth/modemUser POST

Получение прав доступа к станциям

/auth/stationAccess POST

Выдача прав доступа пользователю на свои станциям

/auth/stationUser POST

Получение списка особенностей поведения UI 

/auth/custom

GET

Добавление списка особенностей поведения UI

/auth/custom POST

Удаление списка особенностей поведения UI

/auth/custom DELETE

Создание модемов из лицензии

/auth/license POST

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

/auth/logs

GET

Восстановление пароля

/auth/recovery GET/POST

Создание связей модем - компания батчами

/auth/modemCompanyBatch POST

Удаление связей модем - компания батчами

/auth/modemCompanyBatch DELETE

Создание связей станция - компания батчами

/auth/stationCompanyBatch POST

Удаление связей станция - компания батчами

/auth/stationCompanyBatch DELETE

Авторизация 

GET запрос:

URL

Список параметров

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

/auth

login/email,phone,password

/auth?email=admin&password=admin

или

/auth?phone=79777665535&password=admin

BODY: пустой

Ответ:

BODY

{
    "WAVIOT_JWT": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==...",
    "rt": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==..."
}

Авторизация, через отправку кода на номер телефона/почту

Запрос кода.

URL

Список параметров

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

/auth

login/email,password,phone,code,method

Через почту

/[email protected]&method=email

Через СМС

/auth?phone=79777665535&method=sms

Через звонок

/auth?phone=79777665535&method=call

BODY: пустой

Ответ:

BODY

{
       "status": "ok"
}

Авторизация по полученному коду. Время жизни кода ограничено.

URL

Список параметров

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

/auth

login/email,password,phone,code,method

Через почту

/[email protected]&code=1234&method=email

Через телефон

/auth?phone=79777665535&code=1234&method=sms

BODY: пустой

Ответ:

BODY

{
    "WAVIOT_JWT": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==...",
    "rt": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==...."
}

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

email/login

string

Логин/почта

обязательный параметр

password

string

Пароль

обязательный параметр

phone

string

Номер телефона

обязательный параметр

code

string

Полученный код

обязательный параметр

method

string

Метод получения кода

обязательный параметр

В случае успешной авторизации сервис выставляет cookie "WAVIOT_JWT" и "rt".

POST запрос:

URL

Список параметров

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

/auth


/auth

BODY

{
    "login":"admin",
    "password":"admin"
}

или 

{
    "phone":"79777665535",
    "password":"admin"
}

Ответ:

BODY

{
    "WAVIOT_JWT": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==...",
    "rt": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==..."
}

В случае успешной авторизации сервис выставляет cookie "WAVIOT_JWT" и "rt".

Авторизация, через отправку кода на номер телефона/почту

Запрос кода.

BODY

Через СМС

{
    "method":"sms",
    "phone":"79777665535"
}

Через звонок

{

    "method":"call",
  "phone":"79777665535"
}

Через почту

{
    "method":"email",
    "email":"[email protected]"
}

Ответ:

BODY

{
    "status": "ok"
}

Авторизация по полученному коду. Время жизни кода ограничено.

BODY

Через телефон

{
    "method":"sms",
    "phone":"79777665535",
    "code":"1234"
}

Через почту

{
    "method":"email",
    "email":"[email protected]",
    "code":"1234"
}

Ответ:

BODY

{
    "WAVIOT_JWT": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==...",
    "rt": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==..."
}

В случае успешной авторизации сервис выставляет cookie "WAVIOT_JWT" и "rt".

POST запрос:

Обновление WAVIOT_JWT токена, через rt токен.

URL

Список параметров

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

/auth


/auth

BODY

{
    "rt": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==..."
}

Ответ:

BODY

{
    "WAVIOT_JWT": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==...",
    "rt": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==..."
}

В случае отсутствия rt токена в теле запроса, токен берется из cookie "rt".

В случае успешного обновления сервис выставляет cookie "WAVIOT_JWT" и "rt".

Закрытие сессии по RT

GET/POST запрос:

URL

Список параметров

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

/auth/close


/auth/close

BODY

{
    "rt": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==..."
}

Ответ:

BODY

{
    "status": "ok"
}

В случае отсутствия rt токена в теле запроса, токен берется из cookie "rt".

После успешного закрытия сессии cookie rt и WAVIOT_JWT удаляются.

Закрытие всех сессий пользователя. Идентификатор пользователя берется из RT.

BODY

{
    "all": "
}

Ответ:

BODY

{
    "status": "ok"
}

Информация о модуле 

GET запрос:

URL

Список параметров

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

/auth/info


/auth/info

BODY: пустой

Ответ:

BODY

{
    "version": "1.00"
}

Декодирование токенов

GET запрос:

URL

Список параметров

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

/auth/decode

WAVIOT_JWT, rt

/auth/decode?WAVIOT_JWT=eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ...

BODY: пустой

Ответ:

BODY

{
   "jwt":{
      "raw":"eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==...",
      "rawHead":"eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==",
      "rawData":"eyJpc3MiOiJhdXRoLndhdmlvdC5ydSIsImF1ZCI6IndhdmlvdC5yd...",
      "rawSign":"NmVlM2JlNzdmZWNiZjAwMjYwYWNlNDZkMmMxNmUzNGI=",
      "head":{
         "alg":"hmac_md5",
         "typ":"WAVIOT_JWT"
      },
      "data":{
         "iss":"auth.waviot.ru",
         "aud":"waviot.ru",
         "exp":1674214284,
         "email":"admin",
         "claims":{
            "appsandbox":{
               "admin":"
            },
            "auth":{
               "admin":"
            },
            "b":{
               "admin":"
            },
            "driver-electro5":{
               "admin":"
            },
            "telecom":{
               "admin":"
            }
         },
         "userId":"d86cdc6b-dc50-4b3e-a91c-fdc83e66983d",
         "firstName":",
         "middleName":",
         "lastName":",
         "location":",
         "language":",
         "rabbit_guest_api_connection":"amqp://api_guest:waviot@localhost//",
         "aiKeys":[
            "uspdbleata3ludcedw3co5iwpqk57b2ff76cufs9rwfo1c526cee99thmh1r4175p9",
            "ZDg2Y2RjNmItZGM1MC00YjNlLWE5MWMtZmRjODNlNjY5ODNk"
         ]
      },
      "sign":"6ee3be77fecbf00260ace46d2c16e34b",
      "valid":false
   },
   "rt":{
      "raw":"eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==...",
      "rawHead":"eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==",
      "rawData":"eyJpc3MiOiJhdXRoLndhdmlvdC5ydSIsImF1ZCI6IndhdmlvdC5y...",
      "rawSign":"NTAyNzA1ZDlmMjMxNmYyODJkYjU3ZWIwZjk0ODMxN2E=",
      "head":{
         "alg":"hmac_md5",
         "typ":"WAVIOT_JWT"
      },
      "data":{
         "iss":"auth.waviot.ru",
         "aud":"waviot.ru",
         "exp":1674217284,
         "email":"admin",
         "userId":"d86cdc6b-dc50-4b3e-a91c-fdc83e66983d"
      },
      "sign":"502705d9f2316f282db57eb0f948317a",
      "valid":true
   },
   "jwtErr":"jwt expired",
   "rtErr":"ok"
}

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

WAVIOT_JWT

string

JWT токен

не обязательный параметр

rt string

RT токен

не обязательный параметр

В случае отсутствия токенов они берутся из заголовка "Authorization" или cookie "WAVIOT_JWT" и "rt".

POST запрос:

URL

Список параметров

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

/auth/decode


/auth/decode

BODY

{
    "WAVIOT_JWT": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==...",
    "rt": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==..."
}

Ответ:

BODY

{
   "jwt":{
      "raw":"eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==...",
      "rawHead":"eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==",
      "rawData":"eyJpc3MiOiJhdXRoLndhdmlvdC5ydSIsImF1ZCI6IndhdmlvdC5yd...",
      "rawSign":"NmVlM2JlNzdmZWNiZjAwMjYwYWNlNDZkMmMxNmUzNGI=",
      "head":{
         "alg":"hmac_md5",
         "typ":"WAVIOT_JWT"
      },
      "data":{
         "iss":"auth.waviot.ru",
         "aud":"waviot.ru",
         "exp":1674214284,
         "email":"admin",
         "claims":{
            "appsandbox":{
               "admin":"
            },
            "auth":{
               "admin":"
            },
            "b":{
               "admin":"
            },
            "driver-electro5":{
               "admin":"
            },
            "telecom":{
               "admin":"
            }
         },
         "userId":"d86cdc6b-dc50-4b3e-a91c-fdc83e66983d",
         "firstName":",
         "middleName":",
         "lastName":",
         "location":",
         "language":",
         "rabbit_guest_api_connection":"amqp://api_guest:waviot@localhost//",
         "aiKeys":[
            "uspdbleata3ludcedw3co5iwpqk57b2ff76cufs9rwfo1c526cee99thmh1r4175p9",
            "ZDg2Y2RjNmItZGM1MC00YjNlLWE5MWMtZmRjODNlNjY5ODNk"
         ]
      },
      "sign":"6ee3be77fecbf00260ace46d2c16e34b",
      "valid":false
   },
   "rt":{
      "raw":"eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==...",
      "rawHead":"eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==",
      "rawData":"eyJpc3MiOiJhdXRoLndhdmlvdC5ydSIsImF1ZCI6IndhdmlvdC5y...",
      "rawSign":"NTAyNzA1ZDlmMjMxNmYyODJkYjU3ZWIwZjk0ODMxN2E=",
      "head":{
         "alg":"hmac_md5",
         "typ":"WAVIOT_JWT"
      },
      "data":{
         "iss":"auth.waviot.ru",
         "aud":"waviot.ru",
         "exp":1674217284,
         "email":"admin",
         "userId":"d86cdc6b-dc50-4b3e-a91c-fdc83e66983d"
      },
      "sign":"502705d9f2316f282db57eb0f948317a",
      "valid":true
   },
   "jwtErr":"jwt expired",
   "rtErr":"ok"
}

В случае отсутствия токенов они берутся из заголовка "Authorization" или cookie "WAVIOT_JWT" и "rt".

Проверка прав доступа

GET запрос:

Для проверки прав токен берется из заголовка "Authorization" или cookie "WAVIOT_JWT".

URL

Список параметров

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

/auth/check

service, claim, option

/auth/check?service=auth&claim=roles

BODY


Ответ:

BODY

{
    "status": "allowed"
}

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

service

string

Сервис

обязательный параметр

claim string

Право доступа

обязательный параметр

option string

Вариант исполнения

не обязательный параметр

Смена пользователя без пароля

Проверяются права доступа "auth":{"swap":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

GET запрос:

URL

Список параметров

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

/auth/swap

email/login, phone

/auth/[email protected]

или

/auth/swap?phone=79777665535

или

/auth/swap?userId=d86cdc6b-dc50-4b3e-a91c-fdc83e66983d

BODY


Ответ:

BODY

{
    "WAVIOT_JWT": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==...",
    "rt": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==..."
}

В случае успешной авторизации сервис выставляет cookie "WAVIOT_JWT" и "rt".

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

email/login

string

Почта/логин

не обязательный параметр

phone string

Телефон

не обязательный параметр

POST запрос:

URL

Список параметров

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

/auth/swap


/auth/swap

BODY

{
    "email":"[email protected]"
}

или

{
    "phone":"79777665535"
}

или

{
    "userId":"d86cdc6b-dc50-4b3e-a91c-fdc83e66983d"
}

Ответ:

BODY

{
    "WAVIOT_JWT": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==...",
    "rt": "eyJhbGciOiJobWFjX21kNSIsInR5cCI6IldBVklPVF9KV1QifQ==..."
}

В случае успешной авторизации сервис выставляет cookie "WAVIOT_JWT" и "rt".

Получение информации о пользователи

Проверяются права доступа "auth":{"registration":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

В случае наличии права доступны данные всех пользователей.

В обратном случае доступны данные только текущего пользователя

GET запрос:

URL

Список параметров

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

/auth/registration

email, offset, limit, count

/auth/registration?email=admin

BODY: пустой

Ответ:

BODY

[
   {
      "userId":"d86cdc6b-dc50-4b3e-a91c-fdc83e66983d",
      "email":"admin",
      "phone":",
      "password":",
      "firstName":",
      "middleName":",
      "lastName":",
      "location":",
      "language":",
      "sessionLimit":100,
      "requestLimit":100,
      "birthdayTS":0,
      "confirmTS":0,
      "createTS":1674125263,
      "bannedToTS":0,
      "emailConfirm":false,
      "phoneConfirm":false,
      "companyId": "c12697a1-86ea-11ef-adf9-00059a3c7a00"
   }
]

URL

Список параметров

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

/auth/registration

email, offset, limit, count

/auth/registration?offset=0&limit=1000

BODY: пустой

Ответ:

BODY

[
   {
      "userId":"d86cdc6b-dc50-4b3e-a91c-fdc83e66983d",
      "email":"admin",
      "phone":",
      "password":",
      "firstName":",
      "middleName":",
      "lastName":",
      "location":",
      "language":",
      "sessionLimit":100,
      "requestLimit":100,
      "birthdayTS":0,
      "confirmTS":0,
      "createTS":1674125263,
      "bannedToTS":0,
      "emailConfirm":false,
      "phoneConfirm":false,
      ​​​​​​​"companyId": "c12697a1-86ea-11ef-adf9-00059a3c7a00"
   },
   {
      "userId":"7567a6ac-5ba0-4792-9d3e-656549df5a23",
      "email":"123",
      "phone":",
      "password":",
      "firstName":"pikachu",
      "middleName":",
      "lastName":"rochu",
      "location":",
      "language":",
      "sessionLimit":100,
      "requestLimit":100,
      "birthdayTS":0,
      "confirmTS":0,
      "createTS":1674147689,
      "bannedToTS":0,
      "emailConfirm":false,
      "phoneConfirm":false,
      ​​​​​​​"companyId": "c12697a1-86ea-11ef-adf9-00059a3c7a00"
   },
   {
      "userId":"d6abed83-3558-4d12-be6c-c63628da8d89",
      "email":"123123",
      "phone":",
      "password":",
      "firstName":"pikachu",
      "middleName":",
      "lastName":"dochu",
      "location":",
      "language":",
      "sessionLimit":100,
      "requestLimit":100,
      "birthdayTS":0,
      "confirmTS":0,
      "createTS":1674148265,
      "bannedToTS":0,
      "emailConfirm":false,
      "phoneConfirm":false,
      ​​​​​​​"companyId": "c12697a1-86ea-11ef-adf9-00059a3c7a00"
   },
   {
      "userId":"62af9003-c67b-478e-a617-cdec8780c67c",
      "email":"1233",
      "phone":",
      "password":",
      "firstName":"pikachu",
      "middleName":",
      "lastName":"rochu",
      "location":",
      "language":",
      "sessionLimit":100,
      "requestLimit":100,
      "birthdayTS":0,
      "confirmTS":0,
      "createTS":1674148853,
      "bannedToTS":0,
      "emailConfirm":false,
      "phoneConfirm":false,
      ​​​​​​​"companyId": "c12697a1-86ea-11ef-adf9-00059a3c7a00"
   }
]

URL

Список параметров

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

/auth/registration

email, offset, limit, count

/auth/registration?count

BODY: пустой

Ответ:

BODY

{
   "count":4
}

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

email

string

Почта

не обязательный параметр

offset int Сдвиг пользователей в ответе

не обязательный параметр 

(0 по умолчанию)

limit

int Ограничение количества в ответе

не обязательный параметр

(1000 по умолчанию)

count

bool

Общее число пользователей

не обязательный параметр

order

string

Поле сортировки

не обязательный

logicOr

bool

Логическое или полей фильтрации 

не обязательный

email

string

Поле фильтра (электронная почта)

не обязательный

phone

string

Поле фильтра (телефон)

не обязательный

firstName

string

Поле фильтра (имя)

не обязательный

middleName

string

Поле фильтра (отчество)

не обязательный

lastName

string

Поле фильтра (фамилия)

не обязательный

location

string

Поле фильтра (расположение)

не обязательный

language

string

Поле фильтра (язык)

не обязательный

sessionLimit

int

Поле фильтра (ограничение одновременных сессий)

не обязательный

requestLimit

int

Поле фильтра (ограничение запросов API)

не обязательный

birthdayTS

int

Поле фильтра (дата/время рождения)

не обязательный

codeTS

int

Поле фильтра (дата/время отправки кода подтверждения почты/телефона)

не обязательный

createTS

int

Поле фильтра (дата/время создания пользователя)

не обязательный

bannedToTS

int

Поле фильтра (дата/время до которой забанен пользователь)

не обязательный

lastTS

int

Поле фильтра (дата/время последней авторизации)

не обязательный

emailConfirm

bool

Поле фильтра (подтверждена ли электронная почта)

не обязательный

phoneConfirm

bool

Поле фильтра (подтвержден ли телефон)

не обязательный

authMethod

string

Поле фильтра (возможные методы авторизации) 

Варианты:

- password (авторизация по почта/телефон + пароль)

- emailCode (авторизация по почта + код)

- phoneCode (авторизация по телефон + код)

- emailPasswordCode (двухфакторная авторизация по почта + пароль + код)

- phonePasswordCode (двухфакторная авторизация по телефон + пароль + код)

- пустое поле все варианты

- возможные варианты можно комбинировать через разделитель ","

не обязательный

Регистрация нового пользователя

POST запрос:

URL

Список параметров

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

/auth/registration


/auth/registration

BODY

{
    "email":"1233",
    "password":"123333",
    "firstname":"pikachu",
    "lastname":"rochu"
}

Ответ:

BODY

{
    "status": "ok"
}

Изменение данных пользователя

Проверяются права доступа "auth":{"registration":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

В случае наличии права доступны данные всех пользователей.

В обратном случае доступны данные только текущего пользователя

PUT запрос:

URL

Список параметров

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

/auth/registration


/auth/registration

BODY

{
    "userId": ",
    "email": "admin",
    "phone": ",
    "password": ",
    "firstname": "333",
    "middlename": "222",
    "sessionLimit": 1010,
    "lastname": "123",
    "phone": "111123123q2312"
}

Ответ:

BODY

{
    "status": "ok"
}

Смена пароля

URL

Список параметров

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

/auth/registration


/auth/registration

BODY

{
    "email": "admin",
    "password": "admin1",
    "oldPassword": "admin"
}

Ответ:

BODY

{
    "status": "ok"
}

Удаление пользователя

Проверяются права доступа "auth":{"registration":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

В случае наличии права доступны данные всех пользователей.

В обратном случае доступны данные только текущего пользователя

DELETE запрос:

URL

Список параметров

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

/auth/registration


/auth/registration

BODY

{
    "email": "123"
}

Ответ:

BODY

{
    "status": "ok"
}

Подтверждение почты/телефона

GET запрос:

Запрос кода.

URL

Список параметров

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

/auth/confirm

login/email,phone,code,method

Через почту

/auth/[email protected]&method=email

Через СМС

/auth/confirm?phone=79777665535&method=sms

Через звонок

/auth/confirm?phone=79777665535&method=call

BODY: пустой

Ответ:

BODY

{
    "status": "ok"
}

Подтверждение по полученному коду. Время жизни кода ограничено.

URL

Список параметров

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

/auth/confirm

login/email,phone,code,method

Через почту

/auth/[email protected]&code=1234&method=email

Через телефон

/auth/confirm?phone=79777665535&code=1234&method=sms

BODY: пустой

Ответ:

BODY

{
    "status": "ok"
}

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

email/login

string

Логин/почта

обязательный параметр

phone

string

Номер телефона

обязательный параметр

code

string

Полученный код

обязательный параметр

method

string

Метод получения кода

обязательный параметр

POST запрос:

Запрос кода.

URL

Список параметров

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

/auth/confirm


/auth/confirm

BODY

Через СМС

{
    "method":"sms",
    "phone":"79777665535"
}

Через звонок

{

    "method":"call",
  "phone":"79777665535"
}

Через почту

{
    "method":"email",
    "email":"[email protected]"
}

Ответ:

BODY

{
    "status": "ok"
}

Подтверждение по полученному коду. Время жизни кода ограничено.

BODY

Через телефон

{
    "method":"sms",
    "phone":"79777665535",
    "code":"1234"
}

Через почту

{
    "method":"email",
    "email":"[email protected]",
    "code":"1234"
}

Ответ:

BODY

{
    "status": "ok"
}

Получение возможных прав

Проверяются права доступа "auth":{"claims":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

GET запрос:

URL

Список параметров

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

/auth/claims


/auth/claims

BODY


Ответ:

BODY

{
    "appsandbox": {
        "admin": {
            "comment": "Разрешено использовать все методы сервиса",
            "options": [
                "
            ]
        }
    },
    "auth": {
        "admin": {
            "comment": "Разрешено использовать все методы сервиса",
            "options": [
                "
            ]
        }
    },
    "b": {
        "admin": {
            "comment": "Разрешено использовать все модемы",
            "options": [
                "
            ]
        }
    },
    "driver-electro5": {
        "admin": {
            "comment": "Разрешено использовать все методы сервиса",
            "options": [
                "
            ]
        }
    },
    "phobosfix": {
        "admin": {
            "comment": "Разрешено использовать все методы сервиса",
            "options": [
                "
            ]
        }
    },
    "sessions": {
        "admin": {
            "comment": "Разрешено использовать все методы сервиса",
            "options": [
                "
            ]
        }
    },
    "some_new_service": {
        "admin": {
            "comment": "admin comment",
            "options": [
                "123",
                "321"
            ]
        },
        "hand": {
            "comment": "hand comment",
            "options": [
                "opt1",
                "opt2",
                "
            ]
        }
    },
    "telecom": {
        "admin": {
            "comment": "Разрешено использоавть все методы сервиса",
            "options": [
                "
            ]
        }
    }
}

Установка возможных прав для сервиса

Проверяются права доступа "auth":{"claims":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

POST запрос:

URL

Список параметров

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

/auth/claims


/auth/claims

BODY

{
    "some_new_service":{
        "admin":{
            "comment": "admin comment"
        },
        "hand":{
            "comment": "hand comment",
            "options": ["opt1", "opt2", "]
        }
    }
}

Ответ:

BODY

{
    "status": "ok"
}

Редактирование возможных прав

Проверяются права доступа "auth":{"claims":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

PUT запрос:

URL

Список параметров

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

/auth/claims


/auth/claims

BODY

{
    "some_new_service":{
        "admin":{
            "comment":"admin comment",
            "options":["123","321"]
        }
    }
}

Ответ:

BODY

{
    "status": "ok"
}

Удаление возможных прав/сервисов

Проверяются права доступа "auth":{"claims":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

DELETE запрос:

URL

Список параметров

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

/auth/claims


/auth/claims

BODY

{
    "some_new_service":{
        "hand2":{
            "options":["123","321"]
        }
    }
}

Ответ:

BODY

{
    "status": "ok"
}

Получение возможных ролей

Проверяются права доступа "auth":{"roles":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

GET запрос:

URL

Список параметров

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

/auth/roles


/auth/roles

BODY


Ответ:

BODY

{
    "admin": {
        "services": {
            "appsandbox": {
                "admin": "
            },
            "auth": {
                "admin": "
            },
            "b": {
                "admin": "
            },
            "driver-electro5": {
                "admin": "
            },
            "telecom": {
                "admin": "
            }
        },
        "comment": "Доступны все модемы и методы auth, telecom, appsandbox, driver_electro5",
        "apiKey": "uspdbleata3ludcedw3co5iwpqk57b2ff76cufs9rwfo1c526cee99thmh1r4175p9"
    },
    "some_new_role": {
        "services": {
            "appsandbox": {
                "!second_claim": ",
                "first_claim": "
            }
        },
        "comment": "some_new_role_comment",
        "apiKey": "some_new_role_apikey"
    },
    "superAdmin": {
        "services": {
            "appsandbox": {
                "admin": "
            },
            "auth": {
                "admin": "
            },
            "b": {
                "admin": "
            },
            "driver-electro5": {
                "admin": "
            },
            "phobosfix": {
                "admin": "
            },
            "sessions": {
                "admin": "
            },
            "telecom": {
                "admin": "
            }
        },
        "comment": "Доступны все модемы и все методы",
        "apiKey": "
    }
}

Установка прав для роли

Проверяются права доступа "auth":{"roles":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

POST запрос:

URL

Список параметров

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

/auth/roles


/auth/roles

BODY

{
    "some_new_role":{
        "services":{
            "appsandbox":{
                "first_claim":",
                "!second_claim":"
            }
        },
        "comment":"some_new_role_comment",
        "apiKey":"some_new_role_apikey"
    }
}

Ответ:

BODY

{
    "status": "ok"
}

Редактирование прав ролей

Проверяются права доступа "auth":{"roles":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

PUT запрос:

URL

Список параметров

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

/auth/roles


/auth/roles

BODY

{
    "some_new_role":{
        "services":{
            "appsandbox":{
                "third_claim":"123"
            }
        },
        "comment":"some_new_role_comment2",
        "apiKey":"some_new_role_apikey2"
    }
}

Ответ:

BODY

{
    "status": "ok"
}

Удаление прав/ролей

Проверяются права доступа "auth":{"roles":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

DELETE запрос:

URL

Список параметров

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

/auth/roles


/auth/roles

BODY

{
    "some_new_role":{
        "services":{
            "appsandbox":{
                "!second_claim":"
            }
        }
    }
}

Ответ:

BODY

{
    "status": "ok"
}

Получения прав пользователя

Проверяются права доступа "auth":{"actor":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

GET запрос:

URL

Список параметров

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

/auth/actor

email, offset, limit, count

/auth/actor?email=admin

BODY


Ответ:

BODY

[
    {
        "email": "admin",
        "roleId": "1283f0e7-4fdf-41bf-89d4-953f66925a3e",
        "userId": "0f4650f9-c1fc-4f9b-9970-bd8a953a48e5",
        "role": "admin",
        "service": ",
        "claim": ",
        "options": ",
        "createTS": 1674469033
    },
    {
        "email": "admin",
        "roleId": "5401cd9f-0941-42dc-a670-c76a19d480a2",
        "userId": "0f4650f9-c1fc-4f9b-9970-bd8a953a48e5",
        "role": ",
        "service": "auth",
        "claim": "!roles",
        "options": ",
        "createTS": 1674482931
    }
]

URL

Список параметров

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

/auth/actor

email, offset, limit, count

/auth/actor?offset=0&limit=1000

BODY: пустой

Ответ:

BODY

[
    {
        "email": ",
        "roleId": "1283f0e7-4fdf-41bf-89d4-953f66925a3e",
        "userId": "0f4650f9-c1fc-4f9b-9970-bd8a953a48e5",
        "role": "admin",
        "service": ",
        "claim": ",
        "options": ",
        "createTS": 1674469033
    },
    {
        "email": ",
        "roleId": "88b66a40-2aa0-4e68-b97d-b4a80e742da7",
        "userId": "784202c1-b4aa-4cc3-b491-75a67d72f1b4",
        "role": ",
        "service": "auth",
        "claim": "!roles",
        "options": ",
        "createTS": 1674482821
    },
    {
        "email": ",
        "roleId": "5401cd9f-0941-42dc-a670-c76a19d480a2",
        "userId": "0f4650f9-c1fc-4f9b-9970-bd8a953a48e5",
        "role": ",
        "service": "auth",
        "claim": "!roles",
        "options": ",
        "createTS": 1674482931
    },
    {
        "email": ",
        "roleId": "c0801d85-358a-433f-b7cf-7ff100a531a7",
        "userId": "784202c1-b4aa-4cc3-b491-75a67d72f1b4",
        "role": ",
        "service": "auth",
        "claim": "claims",
        "options": ",
        "createTS": 1674482958
    }
]

URL

Список параметров

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

/auth/actor

email, offset, limit, count

/auth/actor?count

BODY


Ответ:

BODY

{
   "count":4
}

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

email

string

Почта

не обязательный параметр

offset int Сдвиг пользователей в ответе

не обязательный параметр 

(0 по умолчанию)

limit

int Ограничение количества в ответе

не обязательный параметр

(1000 по умолчанию)

count

bool

Общее число пользователей

не обязательный параметр

extend

bool

Расширенная информация

не обязательный

Выдача прав пользователю

Проверяются права доступа "auth":{"actor":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

POST запрос:

URL

Список параметров

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

/auth/actor


/auth/actor

BODY

для выдачи определенного права на определенный сервис

{
    "email": "admin",
    "service": "auth",
    "claim": "roles",
    "options":"some_opt"
}

или

для выдачи роли

{
    "email": "admin",
    "role": "admin"
}

Ответ:

BODY

{
    "status": "ok"
}

Удаление прав пользователя

Проверяются права доступа "auth":{"actor":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

DELETE запрос:

URL

Список параметров

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

/auth/actor


/auth/actor

BODY

{
    "email": "admin"
}

или

{
    "userId": "784202c1-b4aa-4cc3-b491-75a67d72f1b4"
}

или

{
    "roleId": "1f399700-2cb2-4223-bdbf-fdd03bf4bf06"
}

Ответ:

BODY

{
    "status": "ok"
}

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

Проверяются права доступа "auth":{"sessions":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

GET запрос:

URL

Список параметров

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

/auth/sessions

offset, limit, order, extend closed, sessionId, userId, rtHash, address, userAgent, createTS, refreshTS, closed

/auth/sessions

BODY: пустой

Ответ:

BODY

[
    {
        "sessionId": "aefe69e3-189a-43c9-8577-8944ec32af97",
        "userId": "0f4650f9-c1fc-4f9b-9970-bd8a953a48e5",
        "rtHash": "ac90fb26d5c0f09945904569431fcf807687f6b6048a7499e81329722ced7431",
        "address": "127.0.0.1:57604",
        "userAgent": "insomnia/2022.7.5",
        "createTS": 1674485974,
        "refreshTS": 0,
        "closed": false
    },
    {
        "sessionId": "e3d97c68-1c81-4d24-8e29-d7b5020ae175",
        "userId": "0f4650f9-c1fc-4f9b-9970-bd8a953a48e5",
        "rtHash": "4b61c98fd3965903a96e719a565e5e55bb0bca17b29a380a39a4240a15a880d1",
        "address": "127.0.0.1:56931",
        "userAgent": "insomnia/2022.7.5",
        "createTS": 1674483329,
        "refreshTS": 0,
        "closed": false
    },
    {
        "sessionId": "950a32c2-c835-4c12-a605-f58982c32857",
        "userId": "0f4650f9-c1fc-4f9b-9970-bd8a953a48e5",
        "rtHash": "dfdd163152758478751b6224459dacacf2f371385b45e72ffbc327392e3ae1f1",
        "address": "127.0.0.1:56696",
        "userAgent": "insomnia/2022.7.5",
        "createTS": 1674482714,
        "refreshTS": 0,
        "closed": false
    },
    {
        "sessionId": "300d3854-25b1-4a46-ad9e-b4e0783f6e62",
        "userId": "0f4650f9-c1fc-4f9b-9970-bd8a953a48e5",
        "rtHash": "024168e648fc5bece241da3e152c88cffc0b19b3b18689e6cee0944f01402a2a",
        "address": "127.0.0.1:55811",
        "userAgent": "insomnia/2022.7.5",
        "createTS": 1674479665,
        "refreshTS": 0,
        "closed": false
    },
    {
        "sessionId": "1e5d4827-8d0b-47f4-a738-be5762f69469",
        "userId": "0f4650f9-c1fc-4f9b-9970-bd8a953a48e5",
        "rtHash": "f26b51b955558d31c96c1f67e306b98adbacda1f43337361a5aaa1c691324bc9",
        "address": "[::1]:54160",
        "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36",
        "createTS": 1674474212,
        "refreshTS": 0,
        "closed": false
    },
    {
        "sessionId": "fc6c95a7-e8ff-45d3-9974-3991794df22f",
        "userId": "0f4650f9-c1fc-4f9b-9970-bd8a953a48e5",
        "rtHash": "162385bca94064487c4bab9bcdcab66abe281070fb2cca3af80637f8204d6254",
        "address": "127.0.0.1:53941",
        "userAgent": "insomnia/2022.7.5",
        "createTS": 1674473619,
        "refreshTS": 0,
        "closed": false
    },
    {
        "sessionId": "957c0b65-7630-44c5-bbaf-8c49e29a3684",
        "userId": "0f4650f9-c1fc-4f9b-9970-bd8a953a48e5",
        "rtHash": "5edd05f91da089df27aaad087f2d14b7ac18b7dbc7ebf324edcf1f29bb633672",
        "address": "127.0.0.1:53150",
        "userAgent": "insomnia/2022.7.5",
        "createTS": 1674471558,
        "refreshTS": 0,
        "closed": false
    },
    {
        "sessionId": "c7685542-8d48-4a6a-9789-f02b8d07496c",
        "userId": "0f4650f9-c1fc-4f9b-9970-bd8a953a48e5",
        "rtHash": "5c774e685e4b15e9650e890f80dc22517a10f3a6c1d2b7131955e2c468158b7f",
        "address": "127.0.0.1:53002",
        "userAgent": "insomnia/2022.7.5",
        "createTS": 1674470883,
        "refreshTS": 0,
        "closed": false
    },
    {
        "sessionId": "e6567b1d-83fb-4a57-b881-3476ed647224",
        "userId": "0f4650f9-c1fc-4f9b-9970-bd8a953a48e5",
        "rtHash": "32aea0d71b95b6929f0b57eb246636a8ece53736f28c157bee7495874a95f29f",
        "address": "127.0.0.1:52769",
        "userAgent": "insomnia/2022.7.5",
        "createTS": 1674469937,
        "refreshTS": 0,
        "closed": false
    }
]

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

offset int Сдвиг в ответе

не обязательный параметр 

(0 по умолчанию)

limit

int Ограничение количества в ответе

не обязательный параметр

(1000 по умолчанию)

order

string

Поле сортировки

не обязательный

logicOr

bool

Логическое или полей фильтрации 

не обязательный

extend bool

Расширенная информация 

не обязательный

closed

bool

Закрытые или открытые сессии (фильтр)

не обязательный параметр

sessionId

string

ID сессии (фильтр)

не обязательный параметр

userId

string

ID пользователя (фильтр)

не обязательный параметр

rtHash

string

Hash RT (фильтр)

не обязательный параметр

address

string

Адрес клиента (фильтр)

не обязательный параметр

userAgent

string

Агент клиента (фильтр)

не обязательный параметр

createTS

int

Timestamp создания сессии (фильтр)

не обязательный параметр

refreshTS

int

Timestamp обновления сессии (фильтр)

не обязательный параметр

Закрытие сессии по ID

Проверяются права доступа "auth":{"sessions":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

POST запрос:

URL

Список параметров

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

/auth/sessions


/auth/sessions

BODY

[

    {
        "sessionId": "aefe69e3-189a-43c9-8577-8944ec32af97"
    }

]

Ответ:

BODY

{
    "status": "ok"
}

Получение списка компаний

Проверяются права доступа "auth":{"companies":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

GET запрос:

URL

Список параметров

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

/auth/companies

offset, limitcompanyId, shortName, fullName, docAddress, factAddress, docPhone, factPhone, inn, kpp, operAcc, bic, corrAcc, bankName, ogrn, ceoName, timeZone, apiKey, isFactory /auth/companies?offset=0

BODY


Ответ:

BODY

[
    {
        "companyId": "ff1fb8d3-e503-11ed-9e9b-3024a981a036",
        "shortName": "111111",
        "fullName": "123111111",
        "docAddress": ",
        "factAddress": ",
        "docPhone": ",
        "factPhone": ",
        "inn": ",
        "kpp": ",
        "operAcc": ",
        "bic": ",
        "corrAcc": ",
        "bankName": ",
        "ogrn": ",
        "ceoName": ",
        "timeZone": ",
        "apiKey": ",
        "isFactory": 1
    },
    {
        "companyId": "00f8db08-e504-11ed-9e9b-3024a981a036",
        "shortName": "1111111",
        "fullName": "1231111111",
        "docAddress": ",
        "factAddress": ",
        "docPhone": ",
        "factPhone": ",
        "inn": ",
        "kpp": ",
        "operAcc": ",
        "bic": ",
        "corrAcc": ",
        "bankName": ",
        "ogrn": ",
        "ceoName": ",
        "timeZone": ",
        "apiKey": ",
        "isFactory": 1
    },
    {
        "companyId": "363b0913-e8ca-11ed-b9e5-3024a981a036",
        "shortName": "11111",
        "fullName": "12311111",
        "docAddress": ",
        "factAddress": ",
        "docPhone": ",
        "factPhone": ",
        "inn": ",
        "kpp": ",
        "operAcc": ",
        "bic": ",
        "corrAcc": ",
        "bankName": ",
        "ogrn": ",
        "ceoName": ",
        "timeZone": ",
        "apiKey": ",
        "isFactory": 1
    }
]

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

companyId

string

ID компании (фильтрация)

не обязательный

offset int Сдвиг в ответе

обязательный параметр 

limit

int Ограничение количества в ответе

не обязательный параметр

(1000 по умолчанию)

shortName

string

Сокращенное название (фильтрация)

не обязательный

fullName

string

Полное название (фильтрация)

не обязательный

docAddress

string

Юридический адрес (фильтрация)

не обязательный

factAddress

string

Фактический адрес (фильтрация)

не обязательный

docPhone

string

Юридический телефон (фильтрация)

не обязательный

factPhone

string

Фактический телефон (фильтрация)

не обязательный

inn

string

ИНН (фильтрация)

не обязательный

kpp

string

КПП (фильтрация)

не обязательный

operAcc

string

Операционный счет (фильтрация)

не обязательный

corrAcc

string

Коресспондентский счёт (фильтрация)

не обязательный

bankName

string

Наименование банка(фильтрация)

не обязательный

ogrn

string

ОГРН (фильтрация)

не обязательный

ceoName

string

ФИО генерального директора (фильтрация)

не обязательный

timeZone

string

Часовой пояс(фильтрация)

не обязательный

apiKey

string

API ключ (фильтрация)

не обязательный

isFactory

int

Компания производитель (фильтрация)

не обязательный

order

string

Поле сортировки

не обязательный

logicOr

bool

Логическое или полей фильтрации 

не обязательный

Создание компании

Проверяются права доступа "auth":{"companies":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

POST запрос:

URL

Список параметров

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

/auth/companies


/auth/companies

BODY

[
    {
        "companyId": "ff1fb8d3-e503-11ed-9e9b-3024a981a036",
        "shortName": "111111",
        "fullName": "123111111",
        "docAddress": ",
        "factAddress": ",
        "docPhone": ",
        "factPhone": ",
        "inn": ",
        "kpp": ",
        "operAcc": ",
        "bic": ",
        "corrAcc": ",
        "bankName": ",
        "ogrn": ",
        "ceoName": ",
        "timeZone": ",
        "apiKey": ",
        "isFactory": 1
    },
    {
        "companyId": "00f8db08-e504-11ed-9e9b-3024a981a036",
        "shortName": "1111111",
        "fullName": "1231111111",
        "docAddress": ",
        "factAddress": ",
        "docPhone": ",
        "factPhone": ",
        "inn": ",
        "kpp": ",
        "operAcc": ",
        "bic": ",
        "corrAcc": ",
        "bankName": ",
        "ogrn": ",
        "ceoName": ",
        "timeZone": ",
        "apiKey": ",
        "isFactory": 1
    },
    {
        "companyId": "363b0913-e8ca-11ed-b9e5-3024a981a036",
        "shortName": "11111",
        "fullName": "12311111",
        "docAddress": ",
        "factAddress": ",
        "docPhone": ",
        "factPhone": ",
        "inn": ",
        "kpp": ",
        "operAcc": ",
        "bic": ",
        "corrAcc": ",
        "bankName": ",
        "ogrn": ",
        "ceoName": ",
        "timeZone": ",
        "apiKey": ",
        "isFactory": 1
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Редактирование полей компаний

Проверяются права доступа "auth":{"companies":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

PUT запрос:

URL

Список параметров

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

/auth/companies


/auth/companies

BODY

[
    {
        "companyId": "2f1d5c4f-e4f4-11ed-919a-3024a981a036",
        "factPhone": "11",
        "bankName": "huki1231231",
        "isFactory":0
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Удаление компаний

Проверяются права доступа "auth":{"companies":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

DELETE запрос:

URL

Список параметров

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

/auth/companies


/auth/companies

BODY

[
    {
            "companyId": "2f1d5c4f-e4f4-11ed-919a-3024a981a036"
    },
    {
            "companyId": "321ffd21-e4f4-11ed-919a-3024a981a036"
    },
    {
            "companyId": "fc47a45e-e503-11ed-9e9b-3024a981a036"
    }
]

 

Ответ:

BODY

{
    "status": "ok"
}

Получение списка контрактов

Проверяются права доступа "auth":{"contracts":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

GET запрос:

URL

Список параметров

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

/auth/contracts

offset, limit,contractId, companyId, creatorId, partnerId, createTS, sender, receiver /auth/contracts?offset=0

BODY


Ответ:

BODY

[
    {
        "contractId": "3c9e25c0-e8ce-11ed-a6b1-3024a981a036",
        "companyId": "qwe",
        "creatorId": "123йцувфыв",
        "partnerId": "фвыйцу12вй",
        "createTS": 0,
        "sender": "фысфыайц",
        "receiver": "фывйцв"
    },
    {
        "contractId": "3cbf95fe-e8ce-11ed-a6b1-3024a981a036",
        "companyId": "qwe",
        "creatorId": "фвфыс",
        "partnerId": "йцвйцуйцфыссфы",
        "createTS": 0,
        "sender": "фсыс",
        "receiver": "фывйцувйцв"
    }
]

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

contractId

string

ID контракта (фильтрация)

не обязательный

offset int Сдвиг в ответе

обязательный параметр 

limit

int Ограничение количества в ответе

не обязательный параметр

(1000 по умолчанию)

companyId

string

ID компании(фильтрация)

не обязательный

creatorId

string

ID создателя (фильтрация)

не обязательный

partnerId

string

ID партнера (фильтрация)

не обязательный

createTS

string

Timestamp получения (фильтрация)

не обязательный

sender

string

Отправитель (фильтрация)

не обязательный

receiver

string

Получатель (фильтрация)

не обязательный

order

string

Поле сортировки

не обязательный

logicOr

bool

Логическое или полей фильтрации 

не обязательный

extend bool

Расширенная информация

не обязательный

Создание контрактов

Проверяются права доступа "auth":{"contracts":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

POST запрос:

URL

Список параметров

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

/auth/contracts


/auth/contracts

BODY

[
    {
        "contractId": "3c9e25c0-e8ce-11ed-a6b1-3024a981a036",
        "companyId": "qwe",
        "creatorId": "123йцувфыв",
        "partnerId": "фвыйцу12вй",
        "createTS": 0,
        "sender": "фысфыайц",
        "receiver": "фывйцв"
    },
    {
        "contractId": "3cbf95fe-e8ce-11ed-a6b1-3024a981a036",
        "companyId": "qwe",
        "creatorId": "фвфыс",
        "partnerId": "йцвйцуйцфыссфы",
        "createTS": 0,
        "sender": "фсыс",
        "receiver": "фывйцувйцв"
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Редактирование полей контрактов

Проверяются права доступа "auth":{"contracts":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

PUT запрос:

URL

Список параметров

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

/auth/contracts


/auth/contracts

BODY

[
   {
        "contractId": "3cbf95fe-e8ce-11ed-a6b1-3024a981a036",
        "companyId": "qwe",
        "creatorId": "фвфыс",
        "partnerId": "йцвйцуйцфыссфы",
        "createTS": 0,
        "sender": "фсыс",
        "receiver": "фывйцувйцв"
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Удаление контрактов

Проверяются права доступа "auth":{"contracts":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

DELETE запрос:

URL

Список параметров

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

/auth/contracts


/auth/contracts

BODY

[
    {
        "contractId": "3c4181dd-e8ce-11ed-a6b1-3024a981a036"
    },
    {
        "contractId": "3c9e25c0-e8ce-11ed-a6b1-3024a981a036"
    }
]
 

Ответ:

BODY

{
    "status": "ok"
}

Получение списка отгрузок

Проверяются права доступа "auth":{"batches":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

GET запрос:

URL

Список параметров

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

/auth/batches

offset, limit,batchId, contractId, comment, description, createTS, document, latitude, longitude, device, warehouse /auth/batches?offset=0

BODY


Ответ:

BODY

[
    {
        "batchId": "326ccb3a-e8cb-11ed-970f-3024a981a036",
        "contractId": "123",
        "comment": ",
        "description": ",
        "createTS": 0,
        "document": ",
        "latitude": 0,
        "longitude": 0,
        "device": 0,
        "warehouse": 0
    },
    {
        "batchId": "35d2d38e-e8cb-11ed-970f-3024a981a036",
        "contractId": "123",
        "comment": ",
        "description": ",
        "createTS": 0,
        "document": ",
        "latitude": 0,
        "longitude": 0,
        "device": 0,
        "warehouse": 0
    },
    {
        "batchId": "3622d242-e8cb-11ed-970f-3024a981a036",
        "contractId": "123",
        "comment": ",
        "description": ",
        "createTS": 0,
        "document": ",
        "latitude": 0,
        "longitude": 0,
        "device": 0,
        "warehouse": 0
    },
    {
        "batchId": "3642f072-e8cb-11ed-970f-3024a981a036",
        "contractId": "123",
        "comment": ",
        "description": ",
        "createTS": 0,
        "document": ",
        "latitude": 0,
        "longitude": 0,
        "device": 0,
        "warehouse": 0
    },
    {
        "batchId": "365e9820-e8cb-11ed-970f-3024a981a036",
        "contractId": "123",
        "comment": ",
        "description": ",
        "createTS": 0,
        "document": ",
        "latitude": 0,
        "longitude": 0,
        "device": 0,
        "warehouse": 0
    }
]

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

batchId

string

ID отгрузки (фильтрация)

не обязательный

offset int Сдвиг в ответе

обязательный параметр 

limit

int Ограничение количества в ответе

не обязательный параметр

(1000 по умолчанию)

contractId

string

ID контракта (фильтрация)

не обязательный

comment

string

Комментарий (фильтрация)

не обязательный

description

string

Описание (фильтрация)

не обязательный

createTS

string

Timestamp получения (фильтрация)

не обязательный

document

string

Документы ??? (фильтрация)

не обязательный

latitude

string

Широта (фильтрация)

не обязательный

longitude

string

Долгота (фильтрация)

не обязательный

device

string

??? (фильтрация)

не обязательный

warehouse

bool

Склад (фильтрация)

не обязательный

order

string

Поле сортировки

не обязательный

logicOr

bool

Логическое или полей фильтрации 

не обязательный

extend bool

Расширенная информация

не обязательный

Создание отгрузок

Проверяются права доступа "auth":{"batches":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

POST запрос:

URL

Список параметров

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

/auth/batches


/auth/batches

BODY

[
    {
        "batchId": "326ccb3a-e8cb-11ed-970f-3024a981a036",
        "contractId": "123",
        "comment": ",
        "description": ",
        "createTS": 0,
        "document": ",
        "latitude": 0,
        "longitude": 0,
        "device": 0,
        "warehouse": 0
    },
    {
        "batchId": "35d2d38e-e8cb-11ed-970f-3024a981a036",
        "contractId": "123",
        "comment": ",
        "description": ",
        "createTS": 0,
        "document": ",
        "latitude": 0,
        "longitude": 0,
        "device": 0,
        "warehouse": 0
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Редактирование полей отгрузок

Проверяются права доступа "auth":{"batches":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

PUT запрос:

BODY

[
    {
        "batchId": "367ea256-e8cb-11ed-970f-3024a981a036",
        "contractId": "ffffasdf",
        "comment": ",
        "description": ",
        "createTS": 0,
        "document": "asfqwewer",
        "latitude": 0,
        "longitude": 0,
        "device": 0,
        "warehouse": 0
    },
    {
        "batchId": "487b531b-e8cb-11ed-970f-3024a981a036",
        "contractId": "nui",
        "comment": "qerg",
        "description": "sdfgb",
        "createTS": 1233,
        "document": ",
        "latitude": 11,
        "longitude": 11,
        "device": 123123,
        "warehouse": 1
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Удаление отгрузок

Проверяются права доступа "auth":{"batches":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

DELETE запрос:

URL

Список параметров

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

/auth/batches


/auth/batches

BODY

[
    {
        "batchId": "4902a9f6-e8cb-11ed-970f-3024a981a036"
    },
    {
        "batchId": "491919ad-e8cb-11ed-970f-3024a981a036"
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Получение списка модемов

Проверяются права доступа "auth":{"modems":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

Проводится проверка принадлежность модемов пользователю, через api key в claims. 

За исключением права  "b":{"admin":"}, это право даёт доступ ко всем модемам.

GET запрос:

URL

Список параметров

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

/auth/modems

offset, limit, extend, logicOr, modemId, batchId, comment, createTS, accessType /auth/modems?offset=0

BODY


Ответ:

BODY

[
    {
        "modemId": 7280777,
        "batchId": "2c1f4760-2d2b-11ee-9e75-3024a981a036",
        "comment": "no_type",
        "createTS": 1690537548,
        "accessType": "pinCodeSingle"
    },
    {
        "modemId": 7282777,
        "batchId": "2c2f83b8-2d2b-11ee-9e75-3024a981a036",
        "comment": "no_type",
        "createTS": 1690537550,
        "accessType": "pinCodeSingle"
    },
    {
        "modemId": 7283777,
        "batchId": "2c387dd1-2d2b-11ee-9e75-3024a981a036",
        "comment": "no_type",
        "createTS": 1690537551,
        "accessType": "pinCodeSingle"
    }
]

Или с флагом extend

[
    {
        "modemId": 7280777,
        "batchId": "2c1f4760-2d2b-11ee-9e75-3024a981a036",
        "batchComment": "Aqua L80 -50 шт.\r\nКоробки с номером 1",
        "batchDescription": "Aqua L80 -50 шт.",
        "contractId": "299dabdd-2d2b-11ee-9e59-3024a981a036",
        "contractComment": "Аквы на замену тиффани в Железнодорожный",
        "contractNumber": "Мортон - Контракт 2 - Аква",
        "companyId": "100e826f-2d2b-11ee-9e56-3024a981a036",
        "companyFullName": "УК Балашиха-Сервис",
        "companyShortName": "Балашиха-Сервис",
        "companyApiKey": "bhfjld0nr01bwm2pexfkfjqq96kckoh7k9y6bw8bowe22mvmv7afyb8jjs204abo",
        "comment": "no_type",
        "createTS": 1690537548,
        "accessType": "pinCodeSingle"
    },
    {
        "modemId": 7282777,
        "batchId": "2c2f83b8-2d2b-11ee-9e75-3024a981a036",
        "batchComment": ",
        "batchDescription": "Аква L110",
        "contractId": "29aaf1a9-2d2b-11ee-9e59-3024a981a036",
        "contractComment": ",
        "contractNumber": "ТСЖ Чечулина контракт 2",
        "companyId": "101ed521-2d2b-11ee-9e56-3024a981a036",
        "companyFullName": "ТСЖ Чечулина",
        "companyShortName": "Чечулина",
        "companyApiKey": "ja0exnfrhmb9qxo23kar3c09v3o99m7e6t4625jtiv8hv9t3z1el0k1r0pll6uhm",
        "comment": "no_type",
        "createTS": 1690537550,
        "accessType": "pinCodeSingle"
    },
    {
        "modemId": 7283777,
        "batchId": "2c387dd1-2d2b-11ee-9e75-3024a981a036",
        "batchComment": "C:\\Users\\Proshivalo\\Google Диск\\Montaj\\5. Прошивки\\!СТРИЖ Тиффани Вода\\Протокол С\\TIFFANY_WATER5_DIV1 (для квартирных)\\TIFFANY_WATER5_DIV1_11dBm",
        "batchDescription": "50шт",
        "contractId": "29c41d23-2d2b-11ee-9e5a-3024a981a036",
        "contractComment": ",
        "contractNumber": "Кировоградская, д.2",
        "companyId": "100424d0-2d2b-11ee-9e56-3024a981a036",
        "companyFullName": "ИП Клочков Юрий",
        "companyShortName": "Клочков Юрий",
        "companyApiKey": "j2cmoph2n89gf18k3abcwcfmnqb83tyh862sugtssggf3kf8aemd4y47od0535j1",
        "comment": "no_type",
        "createTS": 1690537551,
        "accessType": "pinCodeSingle"
    }
]

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

modemId

int

ID устройства (фильтрация)

не обязательный

offset int Сдвиг в ответе

обязательный параметр 

limit

int Ограничение количества в ответе

не обязательный параметр

(1000 по умолчанию)

batchId

string

ID отгрузки (фильтрация)

не обязательный

comment

string

Комментарий (фильтрация)

не обязательный

createTS

int

Время создания (фильтрация)

не обязательный

accessType

string

Режим получения доступ (фильтрация)

не обязательный

extend

bool

Расширенная информация

не обязательный

logicOr

bool

Логическое ИЛИ фильтров

не обязательный

Создание модемов

Проверяются права доступа "auth":{"modems":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

Проводится проверка принадлежность модемов пользователю, через api key в claims. 

За исключением права  "b":{"admin":"}, это право даёт доступ ко всем модемам.

POST запрос:

URL

Список параметров

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

/auth/modems


/auth/modems

BODY

[
    {
        "modemId": 7280777,
        "batchId": "2c1f4760-2d2b-11ee-9e75-3024a981a036",
        "comment": "no_type",
        "createTS": 1690537548,
        "accessType": "single",
        "accessCode": 123123
    },
    {
        "modemId": 7282777,
        "batchId": "2c2f83b8-2d2b-11ee-9e75-3024a981a036",
        "comment": "no_type",
        "createTS": 1690537550,
        "accessType": "multi",
        "accessCode": 123123
    },
    {
        "modemId": 7283777,
        "batchId": "2c387dd1-2d2b-11ee-9e75-3024a981a036",
        "comment": "no_type",
        "createTS": 1690537551,
        "accessType": "closed",
        "accessCode": 123123
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Редактирование полей модема

Проверяются права доступа "auth":{"modems":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

Проводится проверка принадлежность модемов пользователю, через api key в claims. 

За исключением права  "b":{"admin":"}, это право даёт доступ ко всем модемам.

PUT запрос:

URL

Список параметров

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

/auth/modems


/auth/modems

BODY

[
    {
        "modemId": 7280777,
        "batchId": "2c1f4760-2d2b-11ee-9e75-3024a981a036",
        "comment": "no_type",
        "createTS": 1690537548,
        "accessType": "single",
        "accessCode": 123123
    },
    {
        "modemId": 7282777,
        "batchId": "2c2f83b8-2d2b-11ee-9e75-3024a981a036",
        "comment": "no_type",
        "createTS": 1690537550,
        "accessType": "multi",
        "accessCode": 123123
    },
    {
        "modemId": 7283777,
        "batchId": "2c387dd1-2d2b-11ee-9e75-3024a981a036",
        "comment": "no_type",
        "createTS": 1690537551,
        "accessType": "closed",
        "accessCode": 123123
    },
    {
        "modemId": 7284777,
        "batchId": "2c439dd7-2d2b-11ee-9e75-3024a981a036",
        "comment": "no_type",
        "createTS": 1690537553,
        "accessType": "pinCodeSingle",
        "accessCode": 123123
    },
    {
        "modemId": 7285777,
        "batchId": "2c4fbdde-2d2b-11ee-9e75-3024a981a036",
        "comment": "no_type",
        "createTS": 1690537554,
        "accessType": "pinCodeMulti",
        "accessCode": 123123
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Удаление модемов

Проверяются права доступа "auth":{"modems":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

Проводится проверка принадлежность модемов пользователю, через api key в claims. 

За исключением права  "b":{"admin":"}, это право даёт доступ ко всем модемам.

DELETE запрос:

URL

Список параметров

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

/auth/modems


/auth/modems

BODY

[
    {
        "modemId": 12342
    },
    {
        "modemId": 12343
    },
    {
        "modemId": 12344
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Получение списка связей модем - компания

Проверяются права доступа "auth":{"modemCompany":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

Проводится проверка принадлежность модемов пользователю, через api key в claims. 

За исключением права  "b":{"admin":"}, это право даёт доступ ко всем модемам.

GET запрос:

URL

Список параметров

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

/auth/modemCompany

offset, limit, ordermodemId, companyId /auth/modemCompany?offset=0

BODY: пустой

Ответ:

BODY

[
    {
        "modemId": 7386861,
        "companyId": "f2cfd026-fb19-11ed-be5c-3024a981a036"
    },
    {
        "modemId": 7386863,
        "companyId": "f2cfd026-fb19-11ed-be5c-3024a981a036"
    },
    {
        "modemId": 7386864,
        "companyId": "f2cfd026-fb19-11ed-be5c-3024a981a036"
    }
]

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

modemId

int

ID устройства (фильтрация)

не обязательный

offset int Сдвиг в ответе

обязательный параметр 

limit

int Ограничение количества в ответе

не обязательный параметр

(1000 по умолчанию)

companyId

string

ID компании (фильтрация)

не обязательный

order

string

Поле сортировки

не обязательный

Создание связей модем - компания

Проверяются права доступа "auth":{"modemCompany":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

Проводится проверка принадлежность модемов пользователю, через api key в claims. 

За исключением права  "b":{"admin":"}, это право даёт доступ ко всем модемам.

POST запрос:

URL

Список параметров

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

/auth/modemCompany


/auth/modemCompany

BODY

[
    {
        "modemId":123812883,
        "companyId":"12311111231"
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Удаление связей модем - компания

Проверяются права доступа "auth":{"modemCompany":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

Проводится проверка принадлежность модемов пользователю, через api key в claims. 

За исключением права  "b":{"admin":"}, это право даёт доступ ко всем модемам.

DELETE запрос:

URL

Список параметров

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

/auth/modemCompany


/auth/modemCompany

BODY

[
    {
        "companyId": "12311111231"
    }
]

или

[
    {
        "modemId":123812883
    }
]

или

[
    {
        "modemId":123812883,
        "companyId":"12311111231"
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Получение списка связей пользователь - компания

Проверяются права доступа "auth":{"userCompany":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

GET запрос:

URL

Список параметров

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

/auth/userCompany

offset, limit, orderuserId, companyId /auth/userCompany?offset=0

BODY


Ответ:

BODY

[
    {
        "userId": "ff5d79f9-4a20-11e9-b19e-ac1f6b267ad7",
        "companyId": "f2cfd026-fb19-11ed-be5c-3024a981a036"
    },
    {
        "userId": "ff5d7f22-4a20-11e9-b19e-ac1f6b267ad7",
        "companyId": "f2cfd026-fb19-11ed-be5c-3024a981a036"
    },
    {
        "userId": "abdf440a-4a21-11e9-bcdb-0cc47a866ec2",
        "companyId": "f2cfd026-fb19-11ed-be5c-3024a981a036"
    }
]

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

userId

int

ID пользователя (фильтрация)

не обязательный

offset int Сдвиг в ответе

обязательный параметр 

limit

int Ограничение количества в ответе

не обязательный параметр

(1000 по умолчанию)

companyId

string

ID компании (фильтрация)

не обязательный

order

string

Поле сортировки

не обязательный

extend

bool

Расширенная информация

не обязательный

Создание связей пользователь - компания

Проверяются права доступа "auth":{"userCompany":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

POST запрос:

URL

Список параметров

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

/auth/userCompany


/auth/userCompany

BODY

[
    {
        "userId":"123812811811113",
        "companyId":"1231111111111231"
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Удаление связей пользователь - компания

Проверяются права доступа "auth":{"userCompany":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

DELETE запрос:

URL

Список параметров

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

/auth/userCompany


/auth/userCompany

BODY

[
    {
        "userId": "12311111231"
    }
]

или

[
    {
        "modemId":"123812883"
    }
]

или

[
    {
        "userId":"123812883",
        "companyId":"12311111231"
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Получение списка станций

Проверяются права доступа "auth":{"stations":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

GET запрос:

URL

Список параметров

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

/auth/stations

offset, limit, extend, logicOr, stationId, batchId, comment, createTS, accessType /auth/stations?offset=0

BODY: пустой

Ответ:

BODY

[
    {
        "stationId": 1000,
        "batchId": "unknown",
        "comment": "\nРоссия, Центральный федеральный округ, Мо...",
        "createTS": 0,
        "accessType": "pinCodeSingle"
    },
    {
        "stationId": 1091,
        "batchId": "unknown",
        "comment": "?????????????no addr 9.12.2016...",
        "createTS": 1596412800,
        "accessType": "pinCodeSingle"
    },
    {
        "stationId": 1191,
        "batchId": "unknown",
        "comment": "Protocol C  00:22:4d:ab:30:1e\nРоссия, Центральный...",
        "createTS": 1596412800,
        "accessType": "pinCodeSingle"
    }
]

или с флагом extend

[
    {
        "stationId": 1000,
        "batchId": "unknown",
        "batchComment": "Unknown",
        "batchDescription": "Unknown",
        "contractId": "f0a4a090-2d2a-11ee-9e56-3024a981a036",
        "contractComment": "Deleted Modems",
        "contractNumber": "Deleted Modems",
        "companyId": "f092e500-2d2a-11ee-9e56-3024a981a036",
        "companyFullName": "Root Company",
        "companyShortName": "Root Company",
        "companyApiKey": "uspdbleata3ludcedw3co5iwpqk57b2ff76cufs9rwfo1c526cee99thmh1r4175p9",
        "comment": "\nРоссия, Цен...",
        "createTS": 0,
        "accessType": "pinCodeSingle"
    },
    {
        "stationId": 1091,
        "batchId": "unknown",
        "batchComment": "Unknown",
        "batchDescription": "Unknown",
        "contractId": "f0a4a090-2d2a-11ee-9e56-3024a981a036",
        "contractComment": "Deleted Modems",
        "contractNumber": "Deleted Modems",
        "companyId": "f092e500-2d2a-11ee-9e56-3024a981a036",
        "companyFullName": "Root Company",
        "companyShortName": "Root Company",
        "companyApiKey": "uspdbleata3ludcedw3co5iwpqk57b2ff76cufs9rwfo1c526cee99thmh1r4175p9",
        "comment": "?????????????no addr 9.12.2016 Protoc...",
        "createTS": 1596412800,
        "accessType": "pinCodeSingle"
    },
    {
        "stationId": 1191,
        "batchId": "unknown",
        "batchComment": "Unknown",
        "batchDescription": "Unknown",
        "contractId": "f0a4a090-2d2a-11ee-9e56-3024a981a036",
        "contractComment": "Deleted Modems",
        "contractNumber": "Deleted Modems",
        "companyId": "f092e500-2d2a-11ee-9e56-3024a981a036",
        "companyFullName": "Root Company",
        "companyShortName": "Root Company",
        "companyApiKey": "uspdbleata3ludcedw3co5iwpqk57b2ff76cufs9rwfo1c526cee99thmh1r4175p9",
        "comment": "Protocol C  00:22:4d:ab:30:1e\nРоссия, Центр...",
        "createTS": 1596412800,
        "accessType": "pinCodeSingle"
    }
]

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

stationId

int

ID (фильтрация)

не обязательный

offset int Сдвиг в ответе

обязательный параметр 

limit

int Ограничение количества в ответе

не обязательный параметр

(1000 по умолчанию)

batchId

string

ID отгрузки (фильтрация)

не обязательный

comment

string

Комментарий (фильтрация)

не обязательный

createTS

int

Время создания (фильтрация)

не обязательный

accessType

string

Режим получения доступ (фильтрация)

не обязательный

extend

bool

Расширенная информация

не обязательный

logicOr

bool

Логическое ИЛИ фильтров

не обязательный

Создание станций

Проверяются права доступа "auth":{"stations":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

POST запрос:

URL

Список параметров

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

/auth/stations


/auth/stations

BODY

[
    {
        "stationId": 1000,
        "batchId": "unknown",
        "comment": "\nРоссия, Це...",
        "createTS": 0,
        "accessType": "single",
        "accessCreate": 123
    },
    {
        "stationId": 1091,
        "batchId": "unknown",
        "comment": "?????????????no addr 9.12.2016 Protocol C Бывша...",
        "createTS": 1596412800,
        "accessType": "multi",
        "accessCreate": 123
    },
    {
        "stationId": 1191,
        "batchId": "unknown",
        "comment": "Protocol C  00:22:4d:ab:30:1e\nРоссия, Центральный ...",
        "createTS": 1596412800,
        "accessType": "pinCodeSingle",
        "accessCreate": 123
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Редактирование полей станций

Проверяются права доступа "auth":{"stations":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

PUT запрос:

URL

Список параметров

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

/auth/stations


/auth/stations

BODY

[
    {
        "stationId": 1000,
        "batchId": "unknown",
        "comment": "\nРоссия, Центральный федеральны...",
        "createTS": 0,
        "accessType": "single",
        "accessCreate": 123
    },
    {
        "stationId": 1091,
        "batchId": "unknown",
        "comment": "?????????????no addr 9.12.2016 Protocol C Бывшая...",
        "createTS": 1596412800,
        "accessType": "multi",
        "accessCreate": 123
    },
    {
        "stationId": 1191,
        "batchId": "unknown",
        "comment": "Protocol C  00:22:4d:ab:30:1e\nРоссия, Центральный ...",
        "createTS": 1596412800,
        "accessType": "pinCodeSingle",
        "accessCreate": 123
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Удаление станций

Проверяются права доступа "auth":{"stations":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

DELETE запрос:

URL

Список параметров

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

/auth/stations


/auth/stations

BODY

[
    {
        "stationId": 1191,
    },
    {
        "stationId": 1000,
    },
    {
        "stationId": 1001,
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Получение списка связей станция - компания

Проверяются права доступа "auth":{"stationCompany":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

GET запрос:

URL

Список параметров

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

/auth/stationCompany

offset, limit, orderstationId, companyId /auth/stationCompany?offset=0

Body: пустой

Ответ:

BODY

[
    {
        "stationId": 1000,
        "companyId": "e22f7fd0-015d-11ee-b60a-3024a981a036"
    },
    {
        "stationId": 1000,
        "companyId": "fec3a7b8-015d-11ee-b67f-3024a981a036"
    },
    {
        "stationId": 1201,
        "companyId": "e01f5928-015d-11ee-b5fa-3024a981a036"
    }
]

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

stationId

int

ID (фильтрация)

не обязательный

offset int Сдвиг в ответе

обязательный параметр 

limit

int Ограничение количества в ответе

не обязательный параметр

(1000 по умолчанию)

companyId

string

ID компании (фильтрация)

не обязательный

order

string

Поле сортировки

не обязательный

Создание связей станция - компания

Проверяются права доступа "auth":{"stationCompany":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

POST запрос:

URL

Список параметров

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

/auth/stationCompany


/auth/stationCompany

BODY

[
    {
        "stationId": 1201,
        "companyId": "e01f5928-015d-11ee-b5fa-3024a981a036"
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Удаление связей станция - компания

Проверяются права доступа "auth":{"stationCompany":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

DELETE запрос:

URL

Список параметров

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

/auth/stationCompany


/auth/stationCompany

BODY

[
    {
        "companyId": "fec3a7b8-015d-11ee-b67f-3024a981a036"
    }
]

или

[
    {
        "stationId": 1201
    }
]

или

[
    {
        "stationId": 1201,
        "companyId": "e01f5928-015d-11ee-b5fa-3024a981a036"
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Ограниченный поиск пользователей

Проверяются права доступа "auth":{"simpleUsers":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

В поле поиска необходимо ввести минимум 4 символа.

Ответ ограничен 10 вариантами

GET запрос:

URL

Список параметров

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

/auth/simpleUsers

userId, email, phone, firstName, middleName, lastName /auth/companies?firstName=Алек

BODY


Ответ:

BODY

[
    {
        "userId": "00728fff-3180-4f00-83f7-04fcd2b4aa2d",
        "email": "[email protected]",
        "phone": "79774101405",
        "firstName": "Алексей",
        "middleName": "Алексеевич",
        "lastName": "Рыжов"
    },
    {
        "userId": "0078cef9-5c8f-4add-bd59-7df3a9279e62",
        "email": "[email protected]",
        "phone": "79104717576",
        "firstName": "Алексей",
        "middleName": "Анатольевич",
        "lastName": "Соловьев"
    },
    {
        "userId": "0089d09a-8749-4046-a3c9-56bcc2dadada",
        "email": "[email protected]",
        "phone": "79227382322",
        "firstName": "Алексей",
        "middleName": "Сергеевич",
        "lastName": "Малков"
    },
    {
        "userId": "009942c3-39ab-48a3-a1cf-f35dad5750bf",
        "email": "[email protected]",
        "phone": "79264330783",
        "firstName": "Алексей",
        "middleName": "Владимирович",
        "lastName": "Лукьянчук"
    },
    {
        "userId": "00c92627-17ba-4677-a45d-7451b30a39ee",
        "email": "[email protected]",
        "phone": "79219117712",
        "firstName": "Алексей",
        "middleName": "Юрьевич",
        "lastName": "Тимофеев"
    },
    {
        "userId": "00cedaa3-e378-4b5d-8005-e626662191a1",
        "email": "[email protected]",
        "phone": "79162049113",
        "firstName": "Алексей",
        "middleName": "Станиславович",
        "lastName": "Крахмалев"
    },
    {
        "userId": "00f4ee46-f157-4739-b83b-1bc690e163e2",
        "email": "[email protected]",
        "phone": "79807334444",
        "firstName": "Александр",
        "middleName": "Валентинович",
        "lastName": "Ухов"
    },
    {
        "userId": "0107390a-e5a4-497b-91f3-295f00415813",
        "email": "[email protected]",
        "phone": "79055544123",
        "firstName": "Александр",
        "middleName": "Николаевич",
        "lastName": "Никуленков"
    },
    {
        "userId": "011470dc-199a-4ee6-ab9d-fa0329003578",
        "email": "[email protected]",
        "phone": "79213835020",
        "firstName": "Александр",
        "middleName": "Иванович",
        "lastName": "Бушманов"
    },
    {
        "userId": "011eadfa-6ea7-40f1-a8d1-ae385b5ca882",
        "email": "[email protected]",
        "phone": "79531757329",
        "firstName": "Александр",
        "middleName": "Иванович",
        "lastName": "Семащенко"
    }
]

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

userId

string

ID пользователя (фильтрация)

не обязательный

email

string

Email (фильтрация)

не обязательный

phone

string

Номер телефона (фильтрация)

не обязательный

firstName

string

Имя (фильтрация)

не обязательный

middleName

string

Отчество (фильтрация)

не обязательный

lastName

string

Фамилия (фильтрация)

не обязательный

Ограниченный поиск компаний

Проверяются права доступа "auth":{"simpleCompanies":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

В поле поиска необходимо ввести минимум 4 символа.

Ответ ограничен 10 вариантами

GET запрос:

URL

Список параметров

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

/auth/simpleCompanies

companyId, shortName, fullName /auth/companies?shortName=Телематиче

BODY


Ответ:

BODY

[
    {
        "companyId": "3cf41de4-27b7-11ee-b4ad-3024a981a036",
        "shortName": "ООО Телематические Решения",
        "fullName": "Общество с ограниченной ответственностью Телематические Решения"
    },
    {
        "companyId": "47072b27-27b7-11ee-b4ad-3024a981a036",
        "shortName": "Телематические Системы",
        "fullName": "Телематические Системы ООО"
    }
]

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

companyId

string

ID компании (фильтрация)

не обязательный

shortName

string

Сокращенное название (фильтрация)

не обязательный

fullName

string

Полное название (фильтрация)

не обязательны

Получение прав доступа к модемам

Проверяются права доступа "auth":{"modemAccess":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

POST запрос:

URL

Список параметров

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

/auth/modemAccess


/auth/modemAccess
[
    {
        "modemId":10120871,
        "userId":"ff5f95de-4a20-11e9-b19e-ac1f6b267ad7",
        "accessCode" : 36919
    },
    {
        "modemId":10120872,
        "accessCode" : 36919
    }
]

userId - может отсутствовать, в таком случае берется из JWT пользователя. Привязка модема происходит к companyId из регистрационных данных uesrIdОтвет:

BODY

{
    "status": "ok"
}

Выдача прав доступа пользователю на свои модемы

Проверяются права доступа "auth":{"modemUser":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

За исключением права  "b":{"admin":"}, это право даёт доступ ко всем модемам.

POST запрос:

URL

Список параметров

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

/auth/modemUser


/auth/modemUser

BODY

[
    {
        "userId": "0287a457-70f1-4df2-97dc-4aef5f73b876",
         "companyId": "c118ed83-86ea-11ef-adf9-00059a3c7a00",
        "modemId": [
            8325477,
            8325478
        ]
    },
    {
        "userId": "0287a457-70f1-4df2-97dc-4aef5f73b876",
        "companyId": "c118ed83-86ea-11ef-adf9-00059a3c7a00",
        "modemId": 8325479
    },
    {
        "userId": "0287a457-70f1-4df2-97dc-4aef5f73b876",
        "modemId": [
            8325487,
            8325488
        ]
    },
    {
        "userId": "0287a457-70f1-4df2-97dc-4aef5f73b876",
        "modemId": 8325489
    }  
]

Проверяется привязка пользователя к компании, при отсутствии "companyId" берется из регистрационных данных

Ответ:

BODY

{
    "status": "ok"
}

Получение прав доступа к станциям

Проверяются права доступа "auth":{"stationAccess":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

POST запрос:

URL

Список параметров

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

/auth/stationAccess


/auth/stationAccess

BODY

[
    {
        "stationId":10871,
        "userId":"ff5f95de-4a20-11e9-b19e-ac1f6b267ad7",
        "accessCode" : 36919
    },
    {
        "stationId":1072,
        "accessCode" : 36919
    }
]

userId - может отсутствовать, в таком случае берется из JWT пользователя. Привязка модема происходит к companyId из регистрационных данных uesrIdОтвет:

BODY

{
    "status": "ok"
}

Выдача прав доступа пользователю на свои станциям

Проверяются права доступа "auth":{"stationUser":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

За исключением права  "b":{"admin":"}, это право даёт доступ ко всем модемам.

POST запрос:

URL

Список параметров

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

/auth/stationUser


/auth/stationUser

BODY

[
    {
        "userId": "0287a457-70f1-4df2-97dc-4aef5f73b876",
         "companyId": "c118ed83-86ea-11ef-adf9-00059a3c7a00",
         "stationId": [
            11111,
            11113
        ]
    },
    {
        "userId": "0287a457-70f1-4df2-97dc-4aef5f73b876",
        "companyId": "c118ed83-86ea-11ef-adf9-00059a3c7a00",
        "stationId": 11114
    },
    {
        "userId": "0287a457-70f1-4df2-97dc-4aef5f73b876",
        "stationId": [
            11115,
            11116
        ]
    },
    {
        "userId": "0287a457-70f1-4df2-97dc-4aef5f73b876",
        "stationId": 11117
    }  
]

Проверяется привязка пользователя к компании, при отсутствии "companyId" берется из регистрационных данных.

Ответ:

BODY

{
    "status": "ok"
}

Получение списка особенностей поведения UI

Права доступ для GET не проверяются.

Все поля кодированы в base64.

GET запрос:

URL

Список параметров

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

/auth/custom


/auth/custom

BODY


Ответ:

BODY

{
    "comment": {
        "scope": "lk",
        "type": "boolean",
        "value": false
    },
    "stationId": {
        "scope": "auth",
        "type": "number",
        "value": 1234
    },
    "ui": {
        "scope": "lk",
        "type": "string",
        "value": "cmVnd2VydHdlcnQ="
    }
}

Добавление списка особенностей поведения UI

Проверяются права доступа "auth":{"custom":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

POST запрос:

URL

Список параметров

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

/auth/custom


/auth/custom

BODY

{
    "comment": {
        "scope": "lk",
        "type": "boolean",
        "value": false
    },
    "stationId": {
        "scope": "auth",
        "type": "number",
        "value": 1234
    },
    "ui": {
        "scope": "lk",
        "type": "string",
        "value": "cmVnd2VydHdlcnQ="
    }
}

Ответ:

BODY

{
    "status": "ok"
}

Удаление списка особенностей поведения UI

Проверяются права доступа "auth":{"custom":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

DELETE запрос:

URL

Список параметров

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

/auth/custom


/auth/custom

BODY

{
    "stationId": ",
    "commentcommentcommentcommentcommentcommentcommentcomment": ",
    "ui": "
}

Ответ:

BODY

{
    "status": "ok"
}

Cоздание модемов из лицензии

Проверяются права доступа "auth":{"license":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

POST запрос:

URL

Список параметров

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

/auth/license


/auth/license

BODY

{
    "version": 3,
    "data_key": "iSLACUBNE1P1RWV3vghiJ+ZExHdoLJjH822EuV3JCVgxxdjQ\/AyRq02VWNWeZD0qzxv\/V7e2S5HCxpc....",
    "modem_id": {
        "10976457": "zLwMZn6860iUv1YVa4tKHPZ93gxta24W4O3zp5Y6RsLIlr7BMfDethlLZsgsdLBw",
        "10976458": "9vcvbU1zSHp9d0Er9t5beHqguSMi1Fx2Go4XXvbdhZ\/pUiJvektQp8AV2HGPUmKU",
        "10976459": "3KsP1AU3YWq25TdVv0iOPxiIQj5RQlEi5PLBwMsL62peYpbdss8zdw9OQW01e2Pr"
    },
    "devices": [
        {
            "FW": [
                {
                    "type": "STM",
                    "version": "stm_l0_20230517_set_b_0",
                    "comment": "stm_l0_20230517_set_b_0",
                    "data": "GHZxftheC+H9o7LsitCvuuSmbPtuM...",
                    "use_id": true
                }
            ],
            "NBFi": {
                "dl_mode": "DRX",
                "protocol": "water7",
                "nbfi_ver": 5,
                "hw_type": "aqua2set_wa_stm",
                "ul_base_freq": 868800000,
                "ul_bitrates": [
                    30,
                    31,
                    32,
                    33
                ],
                "dl_base_freq": 869150000,
                "dl_bitrates": [
                    10,
                    11,
                    12,
                    13
                ],
                "dl_num_of_retries": 132,
                "dl_strength": 26,
                "destination_region": "RU"
            },
            "full_name": "АКВА L110 D15 B E",
            "version": "АКВА L110 D15 B E",
            "params": [
                {
                    "name": "LENGTH ",
                    "value": "110"
                },
                {
                    "name": "CLASS ",
                    "value": "B"
                },
                {
                    "name": "DIAMETER ",
                    "value": "15"
                },
                {
                    "name": "Destination region",
                    "value": "RU"
                }
            ],
            "comment": "SET B OMH481 (RU L110 D15) STM",
            "batch": 3382
        },
        {
            "FW": [
                {
                    "type": "STM",
                    "version": "stm_l0_20231110_set_b_kz0",
                    "comment": "stm_l0_20231110_set_b_kz0",
                    "data": "GHZxftheC+H9o7LsitCvuuSmbPtuM......",
                    "use_id": true
                }
            ],
            "NBFi": {
                "dl_mode": "DRX",
                "protocol": "water7",
                "nbfi_ver": 5,
                "hw_type": "aqua2set_wa_stm",
                "ul_base_freq": 864000000,
                "ul_bitrates": [
                    30,
                    31,
                    32,
                    33
                ],
                "dl_base_freq": 863500000,
                "dl_bitrates": [
                    10,
                    11,
                    12,
                    13
                ],
                "dl_num_of_retries": 2,
                "dl_strength": 26,
                "destination_region": "KZ"
            },
            "full_name": "АКВА L110 D15 B E",
            "version": "АКВА L110 D15 B E",
            "params": [
                {
                    "name": "LENGTH ",
                    "value": "110"
                },
                {
                    "name": "CLASS ",
                    "value": "B"
                },
                {
                    "name": "DIAMETER ",
                    "value": "15"
                },
                {
                    "name": "Destination region",
                    "value": "KZ"
                }
            ],
            "comment": "SET B OMH481 (KZ L110 D15) STM",
            "batch": 3382
        }
    ],
    "created": "2024_02_09___18_34_08",
    "creator": "amolin"
}30654f27a6df6ba00e8fcaaa9d88fba70b30104ab1d8f4382452cccf....

Ответ:

BODY

{
    "status": "ok"
}

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

Проверяются права доступа "auth":{"logs":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

GET запрос:

URL

Список параметров

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

/auth/logs

offset, limit,logId, userIdFrom, userIdTo, createTS, address, userAgent, action, status, data, logicOr, extend /auth/logs?offset=0

BODY


Ответ:

BODY

[
    {
        "logId": "c8f2ecc0-d0cc-11ee-99e7-3024a981a036",
        "userIdFrom": "superAdmin",
        "userIdTo": "guest",
        "createTS": 1708528845,
        "address": " 10.1.5.20",
        "userAgent": " Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36",
        "action": "companies_PUT",
        "status": "ok",
        "data": "{\"companyId\":\"a3b87466-d0c9-11ee-9205-3024a981a036\",\"shortName\":\"Алексей  a3b69912-d0c9-11ee-9..."
    },
    {
        "logId": "cdb675b6-d0cc-11ee-99e7-3024a981a036",
        "userIdFrom": "superAdmin",
        "userIdTo": "guest",
        "createTS": 1708528853,
        "address": " 10.1.5.20",
        "userAgent": " Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36",
        "action": "modemCompany_POST",
        "status": "ok",
        "data": "{\"modemId\":10976137,\"companyId\":\"a3b87466-d0c9-11ee-9205-3024a981a036\"}"
    },
    {
        "logId": "cdd223d8-d0cc-11ee-99e7-3024a981a036",
        "userIdFrom": "superAdmin",
        "userIdTo": "guest",
        "createTS": 1708528854,
        "address": " 10.1.5.20",
        "userAgent": " Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36",
        "action": "companies_PUT",
        "status": "ok",
        "data": "{\"companyId\":\"a3b87466-d0c9-11ee-9205-3024a981a036\",\"shortName\":\"Алексей  a3b69912-d0c9-11ee-9205-3024..."
    }
]

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

logId

string

ID (фильтрация)

не обязательный

offset int Сдвиг в ответе

обязательный параметр 

limit

int Ограничение количества в ответе

не обязательный параметр

(1000 по умолчанию)

userIdFrom

string

ID пользователя совершающего действие (фильтрация)

не обязательный

userIdTo

string

ID пользователя над которым совершается действие (фильтрация) 

не обязательный

address

string

IP адрес пользователя (фильтрация)

не обязательный

createTS int

Timestamp получения (фильтрация)

не обязательный

userAgent

string

Приложение пользователя (фильтрация)

не обязательный

action

string

Совершаемое действие (фильтрация)

не обязательный

status

string

Результат (фильтрация)

не обязательный

data

string

Описующие действие данные (фильтрация)

не обязательный

order

string

Поле сортировки

не обязательный

logicOr

bool

Логическое или полей фильтрации 

не обязательный

extend bool

Расширенная информация

не обязательный

Восстановление пароля

GET запрос:

Запрос кода.

URL

Список параметров

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

/auth/recovery

login/email,phone,code,password

Через почту

/auth/[email protected]&method=email

Через СМС

/auth/recovery?phone=79777665535&method=sms

Через звонок

/auth/recovery?phone=79777665535&method=call

BODY


Ответ:

BODY

{
    "status": "ok"
}

Восстановление пароля по полученному коду. Время жизни кода ограничено.

URL

Список параметров

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

/auth/recovery

login/email,password,phone,code

Через почту

/auth/[email protected]&code=1234&method=email&password=123123

Через телефон

/auth/recovery?phone=79777665535&code=1234&method=sms&password=123123

BODY


Ответ:

BODY

{
           "status": "ok"
}

Описание параметров запроса 

Имя параметра

Тип

Описание

Значение по умолчанию

email/login

string

Логин/почта

обязательный параметр

phone

string

Номер телефона

обязательный параметр

code

string

Полученный код

обязательный параметр

method

string

Метод получения кода

обязательный параметр

password

string

Новый пароль

обязательный параметр

POST запрос:

Запрос кода.

URL

Список параметров

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

/auth/recovery


/auth/recovery

BODY

Через СМС

{
    "method":"sms",
    "phone":"79777665535"
}

Через звонок

{

    "method":"call",
    "phone":"79777665535"
}

Через почту

{
    "method":"email",
    "email":"[email protected]"
}

Ответ:

BODY

{
    "status": "ok"
}

Восстановление пароля по полученному коду. Время жизни кода ограничено.

BODY

Через телефон

{
    "method":"sms",
    "phone":"79777665535",
    "code":"1234",
    "password":"1212334"
}

Через почту

{
    "method":"email",
    "email":"[email protected]",
    "code":"1234",
    "password":"1212334"
}

Ответ:

BODY

{
    "status": "ok"
}

Создание связей модем - компания батчами

Проверяются права доступа "auth":{"modemCompanyBatch":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

Проводится проверка принадлежность модемов пользователю, через api key в claims. 

За исключением права  "b":{"admin":"}, это право даёт доступ ко всем модемам.

POST запрос:

URL

Список параметров

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

/auth/modemCompanyBatch


/auth/modemCompanyBatch

BODY

[
    {
        "companyId": "d34669ae-047b-11ef-b047-00ff20ca465a",
        "batchId" :"e876625f-047b-11ef-b2b8-00ff20ca465a"
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Удаление связей модем - компания батчами

Проверяются права доступа "auth":{"modemCompanyBatch":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

Проводится проверка принадлежность модемов пользователю, через api key в claims. 

За исключением права  "b":{"admin":"}, это право даёт доступ ко всем модемам.

DELETE запрос:

URL

Список параметров

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

/auth/modemCompanyBatch


/auth/modemCompanyBatch

BODY

[
    {
        "companyId": "d34669ae-047b-11ef-b047-00ff20ca465a",
        "batchId" :"e876625f-047b-11ef-b2b8-00ff20ca465a"
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Создание связей станция - компания батчами

Проверяются права доступа "auth":{"stationCompanyBatch":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

Проводится проверка принадлежность модемов пользователю, через api key в claims. 

За исключением права  "b":{"admin":"}, это право даёт доступ ко всем модемам.

POST запрос:

URL

Список параметров

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

/auth/stationCompanyBatch


/auth/stationCompanyBatch

BODY

[
    {
        "companyId": "d34669ae-047b-11ef-b047-00ff20ca465a",
        "batchId" :"e876625f-047b-11ef-b2b8-00ff20ca465a"
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Удаление связей станция - компания батчами

Проверяются права доступа "auth":{"stationCompanyBatch":"} предоставленные в заголовке "Authorization" или cookie "WAVIOT_JWT".

Проводится проверка принадлежность модемов пользователю, через api key в claims. 

За исключением права  "b":{"admin":"}, это право даёт доступ ко всем модемам.

DELETE запрос:

URL

Список параметров

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

/auth/stationCompanyBatch


/auth/stationCompanyBatch

BODY

[
    {
        "companyId": "d34669ae-047b-11ef-b047-00ff20ca465a",
        "batchId" :"e876625f-047b-11ef-b2b8-00ff20ca465a"
    }
]

Ответ:

BODY

{
    "status": "ok"
}

Помогла ли вам статья?