Коды ошибок
Коды ошибок делятся на два уровня. Внешний code отражает результат на уровне API, а data.bizCode — бизнес-результат. Вызов считается успешным, только если одновременно code == 0 и data.bizCode == 0. См. Единая структура ответа.
Коды ошибок API (code)
| code | Описание | Рекомендация |
|---|---|---|
| 0 | Успех | — |
| 401 | Ошибка аутентификации | Конкретную причину найдите в таблице ниже |
| 429 | Too Many Requests | Снизьте частоту вызовов и повторите запрос; каждый API допускает не более 10 запросов / с |
Причины ошибки 401
| Сообщение | Значение | Рекомендация |
|---|---|---|
| Missing required headers | Отсутствует обязательный заголовок запроса | Убедитесь, что переданы все Общие заголовки запроса |
| Invalid timestamp format | Неверный формат временной метки | X-Timestamp должен быть временной меткой в секундах |
| Request timestamp expired | Временная метка запроса устарела | Синхронизируйте часы сервера и отправьте запрос снова |
| Invalid nonce format | Nonce не соответствует правилу формата | Должен соответствовать ^[A-Za-z0-9]{16,32}$ |
| Nonce already used or validation failed | Nonce уже использовался или не прошёл проверку | Используйте новую случайную строку в каждом запросе; не используйте её повторно |
| appId not found | appId не существует | Проверьте APP-ID |
| appId is disabled | appId отключён | Обратитесь в техническую поддержку |
| Signature calculation failed | Не удалось вычислить подпись | Проверьте реализацию подписи; см. Механизм подписи |
| Signature verification failed | Подпись не прошла проверку | Проверьте порядок частей строки для подписи, наличие префикса /open-apis в path, а также совпадение timestamp и nonce со значениями в заголовках |
Бизнес-коды ошибок (bizCode)
| bizCode | Описание |
|---|---|
| 0 | Успех |
| 10000001 | Недопустимые параметры |
| 10000003 | Слишком много запросов. Подождите и повторите попытку |
| 10000103 | Сбой системной службы, обратитесь в службу поддержки |
| 100027001 | Недопустимые параметры операции с кредитами |
| 100027003 | Недостаточно кредитов на балансе |
| 100041003 | Задача пространственного моделирования не существует |
| 100041004 | Результат пространственного моделирования не найден |
| 100041006 | Пространство не найдено |
| 100041010 | У AppId нет прав на пространственное моделирование |
| 100041016 | Задача в статусе [моделирование], удаление запрещено |
| 100041017 | Задачу нельзя отменить в текущем статусе |
Диагностика ошибок моделирования
Когда задача переходит в статус «Ошибка моделирования» (9), вызовите Постраничный список задач или Сведения о задачах и посмотрите поля errorCode и failedReason, чтобы найти причину.
Эти два поля содержат сведения об ошибке внутри конвейера моделирования и используют набор значений, отличный от bizCode выше. Если вызов API прошёл успешно, но моделирование задачи завершилось ошибкой, bizCode по-прежнему равен 0.