Login

Запрос

POST /login

Тело запроса

{
  "login": "yourlogin@example.com",
  "password": "yourstrongpassword",
  "service": "ServiceName",
  "version": "1.0"
}

Attention

Все поля в данном запросе обязательны.

Описание полей

  • login - Ваш логин
  • password - Ваш пароль
  • service - Название используемого Вами сервиса

    Указанное название будет использоваться как подпись для всех действий выполняемых сервисом

  • version - Версия используемого Вами API

    На данный момент доступна только версия 1.0

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

curl -H 'Content-Type: application/json' \
    -X POST \
    -d '{"login": "yourlogin@example.com", "password": "yourstrongpassword", "service": "ServiceName", "version": "1.0"}}' \
    https://direct.lptracker.ru/login

Пример ответа при успешном выполнении:

{
    "status": "success",
    "result": {
        "token": "Here will be your token"
    }
}

Пример ошибки:

{
  "status": "error",
  "errors": [
    {
      "code": 401,
      "message": "Invalid login or password"
    }
  ]
}

Подробней об ошибках вы можете почитать тут

Attention

Полученный в результате успешного выполнения данного запроса token (result.token) неодходимо добавлять к остальным запросам в заголовок в поле token.

/login и /service-login - единственные запросы, передаваемые без токена.

Service login (для внутренних сервисов LPTracker)

Токен от имени аккаунта без пароля клиента — по сервисному ключу LPTracker. Доступен только внутренним сервисам, у которых есть этот ключ (тот же, что ходит в my.lptracker.ru/rest/...?key=). Клиентам сервиса метод не предназначен.

Запрос

POST /service-login

Тело запроса

{
  "account_id": 123456,
  "key": "<сервисный ключ>",
  "service": "lpt_to_lpt",
  "version": "1.0"
}

Описание полей

  • account_id (Обязательное) - ID аккаунта LPTracker, от имени которого выдаётся токен
  • key (Обязательное) - сервисный ключ
  • service (Обязательное) - название сервиса, как в /login
  • version - версия API, по умолчанию 1.0

Пример ответа при успешном выполнении:

{
    "status": "success",
    "result": {
        "token": "Here will be your token",
        "account_id": 123456,
        "expires_at": "2026-10-23 12:00:00"
    }
}

Что важно знать:

  • Токен такой же, как после /login: доступ только к проектам аккаунта account_id, время жизни 24 часа с последнего запроса (expires_at отодвигается при каждом обращении). Хранить токен не обязательно — при 401 просто запросите новый.
  • Для аккаунта действуют те же ограничения тарифа, что и при /login: если в тарифе нет функции «API», ответ будет с ошибкой «На вашем тарифе запрещено использование API».
  • Неверный ключ, несуществующий аккаунт или тариф без «API» — ошибка 400 с текстом причины (как у /login при неактивном тарифе).

Logout

Logout представляет собой POST запрос, в результате выполнения которого Ваш токен будет удален из базы.

Запрос

POST /logout

Несмотря на то что это POST-запрос - тело запроса тут не требуется

В заголовке запроса необходимо указать Ваш token, который Вы получили в результате предыдущего запроса.

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

curl -H 'Content-Type: application/json' \
    -X POST \
    https://direct.lptracker.ru/logout

Пример ответа при успешном выполнении:

{
    "status": "success",
    "result": true
}

Важные дополнения

  • У токена есть "время жизни" - 24 часа. Если в течении этого периода не будет произведено никаких действий - токен станет недействительным.
  • С одного IP адреса можно авторизоваться только под 1-м пользователем lptracker.
  • С одного IP адреса может быть авторизовано сколько угодно сервисов.