Skip to main content

Получить приложения

Возвращает приложения владельца — все или одно по AppEUI — вместе с действующими токенами каждого. Пригодится, чтобы найти AppEUI для create_device_req или токен приложения.

Запрос и ответ: get_applications_req → get_applications_resp.
Доступ: только токен высокого уровня. С токеном низкого уровня сервер ответит ошибкой 1.

Текущая версия ONS

В успешном ответе есть поле status — в примере v0.17 его нет. Кода ошибки 3 (Unexpected error) сервер не возвращает.

Запрос​

Поля без пометки «обязательно» можно не передавать.

ПолеТипОписание
cmdstringget_applications_req
operation_idstringПроизвольная строка; сервер вернёт её в ответе — по ней сопоставляют запрос и ответ
appEuistringAppEUI приложения, 16 hex-символов; регистр букв имеет значение. Без поля вернутся все приложения владельца
{
"cmd": "get_applications_req",
"operation_id": "abc",
"appEui": "819EA8554FCD762A"
}

Ответ​

ПолеТипОписание
cmdstringget_applications_resp
operation_idstringЗначение из запроса
statusuint81 — успех, 2 — ошибка
applicationCountuint32Сколько приложений в списке
applicationListarrayПриложения: appEui — AppEUI, tokens — действующие токены приложения любого уровня доступа
error_code, error_textuint8, stringТолько при ошибке, см. ниже
{
"cmd": "get_applications_resp",
"operation_id": "abc",
"status": 1,
"applicationCount": 1,
"applicationList": [
{
"appEui": "819EA8554FCD762A",
"tokens": [
"1VZYsWzJeyDIUHSmwddlbD",
"YrLNyNnPNW3bYhoOHwtEN8"
]
}
]
}

Ошибки​

error_codeerror_textЧто случилось
1Unauthorized accessЗапрос пришёл с токеном низкого уровня
2Application not foundУ владельца нет приложения с таким appEui, или оно удалено

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

  • Токены в ответе открытым текстом, в том числе токены высокого уровня. Уровень доступа токена ответ не показывает.
  • Приложение, у которого все токены отозваны, в список не попадает. Приложение без токенов попадает с пустым tokens.
  • app_id в ответе нет. Для подключения нужен идентификатор приложения app_id, а команда возвращает только AppEUI. app_id нового приложения приходит в ответе на create_application_req.

См. также​