tencent cloud

Smart Media Hosting

Product Introduction
Product Overview
Feature Description
Product Strengths
Use Cases
Basic Concept
Purchase Guide
Quick Start
Create Media Library
Initiate request
Service Level API Document
History
Introduction
API Category
Making API Requests
PaaS Service APIs
Official Cloud Disk APIs
Data Types
Error Codes
Business Level API Document
Introduction
Access Token Operation API
Tenant Space Operation API
File Operation API
Directory or Album Operation API
Recycle Bin Operation API
Quota Operation API
Query Task Operation API
Search Operation API
Historical Version Operations API
Directory and File Batch Operation API
Collection Operation API
Error Codes
SDK Documentation
Android SDK
iOS SDK
HarmonyOS SDK
FAQs
Enterprise Network Disk
Product Introduction
Purchase Guide
Quick Start
FAQs
Service Level Agreement
Glossary

Batch Recovering Recycle Bin Projects

PDF
포커스 모드
폰트 크기
마지막 업데이트 시간: 2026-01-07 10:49:05

Introduction

This document provides an API overview for batch recovery of files in the recycle bin and SDK sample code.
API
Operation Description
Batch recover files in the recycle bin

SDK API Reference

For specific parameters and method descriptions of all APIs in the SDK, please see SDK API Reference.

Batch Recovering Files in the Recycle Bin

Feature Description

Used for batch recovery of directories or files
When recovering multiple projects asynchronously, return HTTP 202 Accepted.
When recovering fewer projects synchronously, return HTTP 200 OK (all execution successful) or HTTP 207 Multi-Status (part or all execution failed).

Batch Recovering Recycle Bin File Example Code

Starting Batch Recovery

QCloudSMHBatchRestoreRecycleObjectReqeust *req = [QCloudSMHBatchRestoreRecycleObjectReqeust new];
req.priority = self.priority;
req.libraryId = self.libraryId;
req.spaceId = self.spaceId;
req.recycledItemIds = self.batchInfos;
[req setFinishBlock:^(QCloudSMHBatchResult *result, NSError * _Nullable error) {
//if it is a sync task, obtain the task status from the http status code
QCloudSMHBatchTaskStatus status = QCloudSMHBatchTaskStatusTypeFromStatus([result __originHTTPURLResponse__].statusCode);
result.status = status;
if(status != QCloudSMHBatchTaskStatusWating || error){
// End when task status is not wait or there is an error
if(self.finishBlock){
self.finishBlock(result, error);
}
}else{
// Use the returned taskid to poll task status
result.taskId;
}

}];
[[QCloudSMHService defaultSMHService]batchRestoreRecycleObject:req];


Query Task Status

Poll the task status here until the task result is queried.
QCloudGetTaskStatusRequest *req = [QCloudGetTaskStatusRequest new];
req.spaceId = @"spaceId";
req.libraryId = @"libraryId";
// taskId returned from the previous step
req.taskIdList = @[taskId];
[req setFinishBlock:^(NSArray * _Nonnull result, NSError * _Nonnull error) {

}];
[[QCloudSMHService defaultSMHService] getTaskStatus:req];

Advanced Batch Recovering Recycle Bin File Example Code

This API encapsulates batch recovery of files in the recycle bin and polling task status. The setFinishBlock returns the final task result directly with no need to manually query task status.
QCloudSMHRestoreObjectRequest *req = [QCloudSMHRestoreObjectRequest new];
req.spaceId = @"spaceId";
req.libraryId = @"libraryId";

req.batchInfos = @[@"1"];
[req setFinishBlock:^(QCloudSMHBatchResult *result, NSError *_Nullable error) {

}];
[[QCloudSMHService defaultSMHService] restoreObject:req];


도움말 및 지원

문제 해결에 도움이 되었나요?

피드백