iBusAPI

Доступ, ключи и приватность

Ключи#

IP-адреса#

Проект может принимать запросы только с перечисленных адресов (IPv4, IPv6, сети). Тогда запросу нужны и верный ключ, и разрешённый адрес (иначе IP_NOT_ALLOWED с ip_seen). Какой адрес видит сервер:

curl
curl -H "Authorization: Bearer $IBUS_API_KEY" https://api.ibusisrael.online/api/access/whoami

В ответе - ip_seen и checks в том порядке, в каком их применяет сервер: секрет, ключ, проект, адрес (allowed, denied или not_configured). Отказ останавливается на первой непройденной проверке и показывает только её код, префикс ключа и ip_seen. Квоту данных запрос не тратит, но ограничен 30 вызовами в минуту.

Коды отказов#

В каждом отказе есть code, короткий detail, docs (ссылка на эту таблицу) и request_id. Указывайте request_id, когда пишете в iBus.

codeHTTPЧто значит и что делать
KEY_REQUIRED401Для этого адреса нужен ключ. Передайте Authorization: Bearer <ключ>; если ключа нет, подайте заявку.
KEY_INVALID401Ключ неизвестен или скопирован с ошибкой. Скопируйте его заново из кабинета разработчика; частые неверные ключи из одной сети временно ограничиваются.
KEY_REVOKED401Ключ отозван (вами, после замены или командой iBus). Создайте новый ключ в кабинете.
KEY_EXPIRED401Срок действия ключа закончился. Создайте новый ключ.
KEY_IN_QUERY400В адресе запроса найден ключ или токен. Ключ передаётся только в заголовке Authorization; ключ, попавший в адрес, лучше заменить.
KEY_NOT_ACCEPTED_HERE401Ключ отправлен не на api.ibusisrael.online (например, на адрес самого приложения). Ключи проверяются только на https://api.ibusisrael.online - отправьте запрос туда; на других адресах запрос с ключом отклоняется, а не выполняется без него.
GROUP_NOT_ALLOWED403У проекта нет доступа к этой группе методов. Запросите её на странице проекта.
OPERATION_NOT_AVAILABLE403Метод не публичный или доступен только одобренному проекту.
IP_NOT_ALLOWED403Ключ верный, но запрос пришёл с адреса, которого нет в списке проекта. В ответе есть ip_seen - адрес, который увидел сервер.
PROJECT_SUSPENDED403Проект приостановлен командой iBus. Причина указана на странице проекта; ключи сохраняются.
PROJECT_BLOCKED403Проект заблокирован, его ключи отозваны. Причина указана на странице проекта, там же можно ответить.
ACCESS_EXPIRED403Срок доступа проекта закончился. Попросите продление на странице проекта.
PLATE_LOOKUP_NOT_ALLOWED403Поиск машины по номерному знаку проекту недоступен. Машины показываются под суточными псевдонимами.
RATE_LIMITED429Слишком много запросов в минуту - у проекта (с ключом) или у вашей сети (без ключа). Подождите Retry-After секунд.
QUOTA_EXCEEDED429Израсходован дневной, месячный или «тяжёлый» бюджет проекта. Какой именно - в scope; когда обновится - в Retry-After.
CONCURRENCY_LIMIT429Слишком много одновременных запросов проекта. Дождитесь ответов, прежде чем отправлять новые.
TEMPORARILY_RESTRICTED429Запросы временно приостановлены после повторных нарушений (например, многих неверных ключей). Подождите Retry-After.
CAPACITY_RESERVED503Сервис загружен и бережёт ресурсы для пассажиров. Повторите через Retry-After секунд.
POLICY_UNAVAILABLE503Правила доступа сейчас нельзя проверить, поэтому запросы с ключом отклоняются, а не пропускаются. Повторите чуть позже.
EXTERNAL_PAUSED503iBus временно приостановил внешние интеграции (инцидент или работы). Повторите после Retry-After; ключи и лимиты не меняются.
BODY_TOO_LARGE413Тело запроса больше допустимого. Методам чтения тело не нужно.

Что не входит в этот API#

Браузеры и CORS#

Кросс-доменные запросы из браузера разрешены только веб-приложению iBus (https://app.ibusisrael.online), без cookie. Ключи не для браузеров: страница другого сайта обращается к своему серверу.

Что хранит сервер#

Связаться#

Вопросы и сообщения о проблемах: ibusisrael.online/contact. Об отказе - с его request_id.

Руководство
↑ ↓ перейтиEnter открытьEsc закрыть