# Ma trận thử lại và hoàn tất của Cloud Storage

Chính sách thử lại, idempotency và hoàn tất cho 24 thao tác của Cloud Storage. Trong đó 12 thao tác có ghi mã lỗi nghiệp vụ riêng của endpoint.

> Với các thao tác làm thay đổi trạng thái, timeout HTTP nghĩa là kết quả chưa xác định, không phải bằng chứng thao tác đã thất bại. Hãy truy vấn trạng thái hiện tại trước khi thử lại.


Xem [Ma trận thử lại endpoint](/vi/api-reference/getting-started/endpoint-behavior) để biết định nghĩa chính sách và các sản phẩm khác, hoặc [Bản kê hành vi thao tác](/assets/operation-behavior.c7be57979902d535863b8d6a0eef0e3fb4768f96d388fa815ab123af6ce6038f.ec0bf2e0.yaml) dạng máy đọc được.

## Cloud Storage Local API

| Thao tác | Chính sách thử lại | Idempotency | Hoàn tất / khôi phục |
|  --- | --- | --- | --- |
| `GET /api/cloudstorage/info``queryCloudStorageInfoLocal` | An toàn khi thử lại với backoff lũy tiến có giới hạn kèm jitter. | Chỉ đọc; các request lặp lại không làm thay đổi trạng thái tài nguyên. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Các mã lỗi nghiệp vụ đã ghi nhận: `39001`. |
| `POST /api/cloudstorage/file/page``pageCloudStorageFilesLocal` | An toàn khi thử lại với backoff lũy tiến có giới hạn kèm jitter. | Chỉ đọc; các request lặp lại không làm thay đổi trạng thái tài nguyên. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Không có lỗi nghiệp vụ riêng của endpoint được ghi nhận; hãy dùng hợp đồng lỗi dùng chung. |
| `POST /api/cloudstorage/upload/init``batchRequestCloudStoragePresignedUploadUrlsLocal` | Đừng thử lại tự động trừ khi tài liệu riêng của endpoint nói rằng điều đó an toàn. | Không có bảo đảm idempotency công khai nào được ghi nhận. | Tải từng đối tượng lên URL đã ký trước của nó, rồi gọi POST /cloudstorage/upload/complete. Các mã lỗi nghiệp vụ đã ghi nhận: `39001`, `39037`, `39044`, `39045`, `39047`, `39050`, `39051`. |
| `POST /api/cloudstorage/upload/complete``confirmCloudStorageUploadCompleteLocal` | Đừng thử lại tự động; trước tiên hãy truy vấn xem tài nguyên, lần tải lên hay tác vụ đã được tạo chưa. | Không có hợp đồng khóa idempotency công khai nào được ghi nhận. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Các mã lỗi nghiệp vụ đã ghi nhận: `39001`, `39011`, `39014`, `39041`, `39046`, `39047`. |
| `POST /api/cloudstorage/file/delete/batch``batchDeleteCloudStorageFilesLocal` | Sau timeout hoặc lỗi truyền tải, hãy truy vấn trạng thái hiện tại trước khi thử lại. | Kết quả có thể đã được áp dụng; việc thực thi lặp lại không đảm bảo idempotent theo hợp đồng. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Các mã lỗi nghiệp vụ đã ghi nhận: `39011`. |
| `POST /api/cloudstorage/file/tag/set``setCloudStorageFileTagsLocal` | Sau timeout hoặc lỗi truyền tải, hãy truy vấn trạng thái hiện tại trước khi thử lại. | Kết quả có thể đã được áp dụng; việc thực thi lặp lại không đảm bảo idempotent theo hợp đồng. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Các mã lỗi nghiệp vụ đã ghi nhận: `39011`, `39048`, `39049`. |
| `POST /api/cloudstorage/file/tag/add``addCloudStorageFileTagsLocal` | Đừng thử lại tự động; trước tiên hãy truy vấn xem tài nguyên, lần tải lên hay tác vụ đã được tạo chưa. | Không có hợp đồng khóa idempotency công khai nào được ghi nhận. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Các mã lỗi nghiệp vụ đã ghi nhận: `39011`, `39048`, `39049`. |
| `POST /api/cloudstorage/file/tag/query``queryCloudStorageFileTagsLocal` | An toàn khi thử lại với backoff lũy tiến có giới hạn kèm jitter. | Chỉ đọc; các request lặp lại không làm thay đổi trạng thái tài nguyên. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Không có lỗi nghiệp vụ riêng của endpoint được ghi nhận; hãy dùng hợp đồng lỗi dùng chung. |
| `GET /api/cloudstorage/tag/all``queryAllCloudStorageFileTagsLocal` | An toàn khi thử lại với backoff lũy tiến có giới hạn kèm jitter. | Chỉ đọc; các request lặp lại không làm thay đổi trạng thái tài nguyên. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Không có lỗi nghiệp vụ riêng của endpoint được ghi nhận; hãy dùng hợp đồng lỗi dùng chung. |
| `POST /api/cloudstorage/tag/create``createCloudStorageFileTagLocal` | Đừng thử lại tự động; trước tiên hãy truy vấn xem tài nguyên, lần tải lên hay tác vụ đã được tạo chưa. | Không có hợp đồng khóa idempotency công khai nào được ghi nhận. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Không có lỗi nghiệp vụ riêng của endpoint được ghi nhận; hãy dùng hợp đồng lỗi dùng chung. |
| `POST /api/cloudstorage/tag/edit``editCloudStorageFileTagLocal` | Sau timeout hoặc lỗi truyền tải, hãy truy vấn trạng thái hiện tại trước khi thử lại. | Kết quả có thể đã được áp dụng; việc thực thi lặp lại không đảm bảo idempotent theo hợp đồng. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Không có lỗi nghiệp vụ riêng của endpoint được ghi nhận; hãy dùng hợp đồng lỗi dùng chung. |
| `POST /api/cloudstorage/tag/delete/batch``deleteCloudStorageFileTagsLocal` | Sau timeout hoặc lỗi truyền tải, hãy truy vấn trạng thái hiện tại trước khi thử lại. | Kết quả có thể đã được áp dụng; việc thực thi lặp lại không đảm bảo idempotent theo hợp đồng. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Không có lỗi nghiệp vụ riêng của endpoint được ghi nhận; hãy dùng hợp đồng lỗi dùng chung. |


## Cloud Storage Open API

| Thao tác | Chính sách thử lại | Idempotency | Hoàn tất / khôi phục |
|  --- | --- | --- | --- |
| `GET /cloudstorage/info``queryCloudStorageInfo` | An toàn khi thử lại với backoff lũy tiến có giới hạn kèm jitter. | Chỉ đọc; các request lặp lại không làm thay đổi trạng thái tài nguyên. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Các mã lỗi nghiệp vụ đã ghi nhận: `39001`. |
| `POST /cloudstorage/file/page``pageCloudStorageFiles` | An toàn khi thử lại với backoff lũy tiến có giới hạn kèm jitter. | Chỉ đọc; các request lặp lại không làm thay đổi trạng thái tài nguyên. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Không có lỗi nghiệp vụ riêng của endpoint được ghi nhận; hãy dùng hợp đồng lỗi dùng chung. |
| `POST /cloudstorage/upload/init``batchRequestCloudStoragePresignedUploadUrls` | Đừng thử lại tự động trừ khi tài liệu riêng của endpoint nói rằng điều đó an toàn. | Không có bảo đảm idempotency công khai nào được ghi nhận. | Tải từng đối tượng lên URL đã ký trước của nó, rồi gọi POST /cloudstorage/upload/complete. Các mã lỗi nghiệp vụ đã ghi nhận: `39001`, `39037`, `39044`, `39045`, `39047`, `39050`, `39051`. |
| `POST /cloudstorage/upload/complete``confirmCloudStorageUploadComplete` | Đừng thử lại tự động; trước tiên hãy truy vấn xem tài nguyên, lần tải lên hay tác vụ đã được tạo chưa. | Không có hợp đồng khóa idempotency công khai nào được ghi nhận. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Các mã lỗi nghiệp vụ đã ghi nhận: `39001`, `39011`, `39014`, `39041`, `39046`, `39047`. |
| `POST /cloudstorage/file/delete/batch``batchDeleteCloudStorageFiles` | Sau timeout hoặc lỗi truyền tải, hãy truy vấn trạng thái hiện tại trước khi thử lại. | Kết quả có thể đã được áp dụng; việc thực thi lặp lại không đảm bảo idempotent theo hợp đồng. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Các mã lỗi nghiệp vụ đã ghi nhận: `39011`. |
| `POST /cloudstorage/file/tag/set``setCloudStorageFileTags` | Sau timeout hoặc lỗi truyền tải, hãy truy vấn trạng thái hiện tại trước khi thử lại. | Kết quả có thể đã được áp dụng; việc thực thi lặp lại không đảm bảo idempotent theo hợp đồng. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Các mã lỗi nghiệp vụ đã ghi nhận: `39011`, `39048`, `39049`. |
| `POST /cloudstorage/file/tag/add``addCloudStorageFileTags` | Đừng thử lại tự động; trước tiên hãy truy vấn xem tài nguyên, lần tải lên hay tác vụ đã được tạo chưa. | Không có hợp đồng khóa idempotency công khai nào được ghi nhận. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Các mã lỗi nghiệp vụ đã ghi nhận: `39011`, `39048`, `39049`. |
| `POST /cloudstorage/file/tag/query``queryCloudStorageFileTags` | An toàn khi thử lại với backoff lũy tiến có giới hạn kèm jitter. | Chỉ đọc; các request lặp lại không làm thay đổi trạng thái tài nguyên. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Không có lỗi nghiệp vụ riêng của endpoint được ghi nhận; hãy dùng hợp đồng lỗi dùng chung. |
| `GET /cloudstorage/tag/all``queryAllCloudStorageFileTags` | An toàn khi thử lại với backoff lũy tiến có giới hạn kèm jitter. | Chỉ đọc; các request lặp lại không làm thay đổi trạng thái tài nguyên. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Không có lỗi nghiệp vụ riêng của endpoint được ghi nhận; hãy dùng hợp đồng lỗi dùng chung. |
| `POST /cloudstorage/tag/create``createCloudStorageFileTag` | Đừng thử lại tự động; trước tiên hãy truy vấn xem tài nguyên, lần tải lên hay tác vụ đã được tạo chưa. | Không có hợp đồng khóa idempotency công khai nào được ghi nhận. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Không có lỗi nghiệp vụ riêng của endpoint được ghi nhận; hãy dùng hợp đồng lỗi dùng chung. |
| `POST /cloudstorage/tag/edit``editCloudStorageFileTag` | Sau timeout hoặc lỗi truyền tải, hãy truy vấn trạng thái hiện tại trước khi thử lại. | Kết quả có thể đã được áp dụng; việc thực thi lặp lại không đảm bảo idempotent theo hợp đồng. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Không có lỗi nghiệp vụ riêng của endpoint được ghi nhận; hãy dùng hợp đồng lỗi dùng chung. |
| `POST /cloudstorage/tag/delete/batch``deleteCloudStorageFileTags` | Sau timeout hoặc lỗi truyền tải, hãy truy vấn trạng thái hiện tại trước khi thử lại. | Kết quả có thể đã được áp dụng; việc thực thi lặp lại không đảm bảo idempotent theo hợp đồng. | Phản hồi là tín hiệu hoàn tất duy nhất được ghi nhận; không có hợp đồng bất đồng bộ nào được quy định. Không có lỗi nghiệp vụ riêng của endpoint được ghi nhận; hãy dùng hợp đồng lỗi dùng chung. |