Политика повторов, идемпотентности и завершения для 24 операций Cloud Storage. Из них 12 документируют бизнес-коды ошибок, специфичные для эндпоинта.
Для операций, меняющих состояние, тайм-аут HTTP означает неизвестный результат, а не доказательство неудачи. Прежде чем повторять, запросите текущее состояние.
Определения политик и другие продукты см. в Матрице повторов эндпоинтов, машиночитаемую версию — в Манифесте поведения операций.
| Операция | Политика повторов | Идемпотентность | Завершение / восстановление |
|---|---|---|---|
GET /api/cloudstorage/infoqueryCloudStorageInfoLocal | Безопасно с ограниченной экспоненциальной задержкой и дрожанием. | Только чтение; повторные запросы не должны менять состояние ресурса. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Задокументированные бизнес-ошибки: 39001. |
POST /api/cloudstorage/file/pagepageCloudStorageFilesLocal | Безопасно с ограниченной экспоненциальной задержкой и дрожанием. | Только чтение; повторные запросы не должны менять состояние ресурса. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Бизнес-ошибки, специфичные для эндпоинта, не задокументированы; используйте общий контракт ошибок. |
POST /api/cloudstorage/upload/initbatchRequestCloudStoragePresignedUploadUrlsLocal | Не повторяйте автоматически, если документация эндпоинта не говорит, что это безопасно. | Публичных гарантий идемпотентности не задокументировано. | Загрузите каждый объект по его предподписанному URL, затем вызовите POST /cloudstorage/upload/complete. Задокументированные бизнес-ошибки: 39001, 39037, 39044, 39045, 39047, 39050, 39051. |
POST /api/cloudstorage/upload/completeconfirmCloudStorageUploadCompleteLocal | Не повторяйте автоматически; сначала выясните, был ли создан ресурс, загрузка или задача. | Публичный контракт ключа идемпотентности не задокументирован. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Задокументированные бизнес-ошибки: 39001, 39011, 39014, 39041, 39046, 39047. |
POST /api/cloudstorage/file/delete/batchbatchDeleteCloudStorageFilesLocal | После тайм-аута или сбоя передачи запросите текущее состояние перед повтором. | Результат мог уже примениться; повторное выполнение не идемпотентно по контракту. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Задокументированные бизнес-ошибки: 39011. |
POST /api/cloudstorage/file/tag/setsetCloudStorageFileTagsLocal | После тайм-аута или сбоя передачи запросите текущее состояние перед повтором. | Результат мог уже примениться; повторное выполнение не идемпотентно по контракту. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Задокументированные бизнес-ошибки: 39011, 39048, 39049. |
POST /api/cloudstorage/file/tag/addaddCloudStorageFileTagsLocal | Не повторяйте автоматически; сначала выясните, был ли создан ресурс, загрузка или задача. | Публичный контракт ключа идемпотентности не задокументирован. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Задокументированные бизнес-ошибки: 39011, 39048, 39049. |
POST /api/cloudstorage/file/tag/queryqueryCloudStorageFileTagsLocal | Безопасно с ограниченной экспоненциальной задержкой и дрожанием. | Только чтение; повторные запросы не должны менять состояние ресурса. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Бизнес-ошибки, специфичные для эндпоинта, не задокументированы; используйте общий контракт ошибок. |
GET /api/cloudstorage/tag/allqueryAllCloudStorageFileTagsLocal | Безопасно с ограниченной экспоненциальной задержкой и дрожанием. | Только чтение; повторные запросы не должны менять состояние ресурса. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Бизнес-ошибки, специфичные для эндпоинта, не задокументированы; используйте общий контракт ошибок. |
POST /api/cloudstorage/tag/createcreateCloudStorageFileTagLocal | Не повторяйте автоматически; сначала выясните, был ли создан ресурс, загрузка или задача. | Публичный контракт ключа идемпотентности не задокументирован. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Бизнес-ошибки, специфичные для эндпоинта, не задокументированы; используйте общий контракт ошибок. |
POST /api/cloudstorage/tag/editeditCloudStorageFileTagLocal | После тайм-аута или сбоя передачи запросите текущее состояние перед повтором. | Результат мог уже примениться; повторное выполнение не идемпотентно по контракту. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Бизнес-ошибки, специфичные для эндпоинта, не задокументированы; используйте общий контракт ошибок. |
POST /api/cloudstorage/tag/delete/batchdeleteCloudStorageFileTagsLocal | После тайм-аута или сбоя передачи запросите текущее состояние перед повтором. | Результат мог уже примениться; повторное выполнение не идемпотентно по контракту. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Бизнес-ошибки, специфичные для эндпоинта, не задокументированы; используйте общий контракт ошибок. |
| Операция | Политика повторов | Идемпотентность | Завершение / восстановление |
|---|---|---|---|
GET /cloudstorage/infoqueryCloudStorageInfo | Безопасно с ограниченной экспоненциальной задержкой и дрожанием. | Только чтение; повторные запросы не должны менять состояние ресурса. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Задокументированные бизнес-ошибки: 39001. |
POST /cloudstorage/file/pagepageCloudStorageFiles | Безопасно с ограниченной экспоненциальной задержкой и дрожанием. | Только чтение; повторные запросы не должны менять состояние ресурса. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Бизнес-ошибки, специфичные для эндпоинта, не задокументированы; используйте общий контракт ошибок. |
POST /cloudstorage/upload/initbatchRequestCloudStoragePresignedUploadUrls | Не повторяйте автоматически, если документация эндпоинта не говорит, что это безопасно. | Публичных гарантий идемпотентности не задокументировано. | Загрузите каждый объект по его предподписанному URL, затем вызовите POST /cloudstorage/upload/complete. Задокументированные бизнес-ошибки: 39001, 39037, 39044, 39045, 39047, 39050, 39051. |
POST /cloudstorage/upload/completeconfirmCloudStorageUploadComplete | Не повторяйте автоматически; сначала выясните, был ли создан ресурс, загрузка или задача. | Публичный контракт ключа идемпотентности не задокументирован. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Задокументированные бизнес-ошибки: 39001, 39011, 39014, 39041, 39046, 39047. |
POST /cloudstorage/file/delete/batchbatchDeleteCloudStorageFiles | После тайм-аута или сбоя передачи запросите текущее состояние перед повтором. | Результат мог уже примениться; повторное выполнение не идемпотентно по контракту. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Задокументированные бизнес-ошибки: 39011. |
POST /cloudstorage/file/tag/setsetCloudStorageFileTags | После тайм-аута или сбоя передачи запросите текущее состояние перед повтором. | Результат мог уже примениться; повторное выполнение не идемпотентно по контракту. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Задокументированные бизнес-ошибки: 39011, 39048, 39049. |
POST /cloudstorage/file/tag/addaddCloudStorageFileTags | Не повторяйте автоматически; сначала выясните, был ли создан ресурс, загрузка или задача. | Публичный контракт ключа идемпотентности не задокументирован. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Задокументированные бизнес-ошибки: 39011, 39048, 39049. |
POST /cloudstorage/file/tag/queryqueryCloudStorageFileTags | Безопасно с ограниченной экспоненциальной задержкой и дрожанием. | Только чтение; повторные запросы не должны менять состояние ресурса. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Бизнес-ошибки, специфичные для эндпоинта, не задокументированы; используйте общий контракт ошибок. |
GET /cloudstorage/tag/allqueryAllCloudStorageFileTags | Безопасно с ограниченной экспоненциальной задержкой и дрожанием. | Только чтение; повторные запросы не должны менять состояние ресурса. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Бизнес-ошибки, специфичные для эндпоинта, не задокументированы; используйте общий контракт ошибок. |
POST /cloudstorage/tag/createcreateCloudStorageFileTag | Не повторяйте автоматически; сначала выясните, был ли создан ресурс, загрузка или задача. | Публичный контракт ключа идемпотентности не задокументирован. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Бизнес-ошибки, специфичные для эндпоинта, не задокументированы; используйте общий контракт ошибок. |
POST /cloudstorage/tag/editeditCloudStorageFileTag | После тайм-аута или сбоя передачи запросите текущее состояние перед повтором. | Результат мог уже примениться; повторное выполнение не идемпотентно по контракту. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Бизнес-ошибки, специфичные для эндпоинта, не задокументированы; используйте общий контракт ошибок. |
POST /cloudstorage/tag/delete/batchdeleteCloudStorageFileTags | После тайм-аута или сбоя передачи запросите текущее состояние перед повтором. | Результат мог уже примениться; повторное выполнение не идемпотентно по контракту. | Ответ — единственный задокументированный сигнал завершения; асинхронный контракт не определён. Бизнес-ошибки, специфичные для эндпоинта, не задокументированы; используйте общий контракт ошибок. |