简介
本文档提供关于清单的 API 概览以及 SDK 示例代码。
API | 操作名 | 操作描述 |
---|---|---|
PUT Bucket inventory | 设置清单任务 | 设置存储桶的清单任务 |
GET Bucket inventory | 查询清单任务 | 查询存储桶的清单任务 |
DELETE Bucket inventory | 删除清单任务 | 删除存储桶的清单任务 |
设置清单任务
功能说明
PUT Bucket inventory 用于在存储桶中创建清单任务。
方法原型
public Guzzle\Service\Resource\Model PutBucketInventory(array $args = array());
请求示例
try {
$result = $cosClient->putBucketInventory(array(
'Bucket' => 'examplebucket-1250000000', //格式:BucketName-APPID
'Id' => 'string',
'Destination' => array(
'COSBucketDestination'=>array(
'Format' => 'CSV',
'AccountId' => '100000000001',
'Bucket' => 'qcs::cos:ap-chengdu::examplebucket-1250000000',
'Prefix' => 'string',
)
),
'IsEnabled' => 'True',
'Schedule' => array(
'Frequency' => 'Daily',
),
'Filter' => array(
'Prefix' => 'string',
),
'IncludedObjectVersions' => 'Current',
'OptionalFields' => array(
'Size',
'ETag',
)
));
// 请求成功
print_r($result);
} catch (\Exception $e) {
// 请求失败
echo "$e\n";
}
参数说明
参数名称 | 父节点 | 描述 | 类型 | 是否必选 |
---|---|---|---|---|
Bucket | 无 | 设置清单任务的存储桶,格式为 BucketName-APPID ,详情请参见 命名规范 | String、Array | 是 |
Id | 无 | 清单的名称,与请求参数中的 id 对应 | Array | 是 |
IsEnabled | 无 | 清单是否启用的标识: |
String | 是 |
IncludedObjectVersions | 无 | 是否在清单中包含对象版本: |
String | 是 |
Filter | 无 | 筛选待分析对象。清单功能将分析符合 Filter 中设置的前缀的对象 | Array | 否 |
Prefix | Filter | 需要分析的对象的前缀 | String | 否 |
OptionalFields | 无 | 清单结果中可选包含的分析项目名称,可选字段包括:Size,LastModifiedDate,StorageClass,ETag,IsMultipartUploaded,ReplicationStatus | Array | 否 |
Schedule | 无 | 配置清单任务周期 | Array | 是 |
Frequency | Schedule | 清单任务周期,可选项为按日或者按周,枚举值:Daily、Weekly | String | 是 |
Destination | 无 | 描述存放清单结果的信息 | Array | 是 |
COSBucketDestination | Destination | 清单结果导出后存放的存储桶信息 | Array | 是 |
Bucket | COSBucketDestination | 清单分析结果的存储桶名 | String | 是 |
AccountId | COSBucketDestination | 存储桶的所有者 UIN,例如100000000001 | String | 否 |
Prefix | COSBucketDestination | 清单分析结果的前缀 | String | 否 |
Format | COSBucketDestination | 清单分析结果的文件形式,可选项为 CSV 格式 | String | 是 |
Encryption | COSBucketDestination | 为清单结果提供服务端加密的选项 | Array | 否 |
SSE-COS | Encryption | COS 托管密钥的加密方式,无需填充 | String | 否 |
其他清单配置参数请参考API文档。
错误码说明
该请求可能会发生的一些常见的特殊错误如下:
错误码 | 描述 | 状态码 |
---|---|---|
InvalidArgument | 不合法的参数值 | HTTP 400 Bad Request |
TooManyConfigurations | 清单数量已经达到1000条的上限 | HTTP 400 Bad Request |
AccessDenied | 未授权的访问。您可能不具备访问该存储桶的权限 | HTTP 403 Forbidden |
查询清单任务
功能说明
GET Bucket inventory 接口用于查询存储桶中用户的清单任务信息。
方法原型
public Guzzle\Service\Resource\Model GetBucketInventory(array $args = array());
请求示例
try {
$result = $cosClient->getBucketInvnetory(array(
'Bucket' => 'examplebucket-1250000000', //格式:BucketName-APPID
'Id' => 'string',
));
// 请求成功
print_r($result);
} catch (\Exception $e) {
// 请求失败
echo($e);
}
参数说明
参数名称 | 描述 | 类型 |
---|---|---|
bucket | 查询清单任务的存储桶,格式为 BucketName-APPID ,详情请参见 命名规范 | bucket |
Id | 清单任务的名称,合法字符:a-z,A-Z,0-9,-,_,. | String |
返回结果示例
GuzzleHttp\Command\Result Object
(
[Destination] => Array
(
[COSBucketDestination] => Array
(
[Format] => CSV
[AccountId] => 100000000001
[Bucket] => qcs::cos:ap-chengdu::examplebucket-1250000000
[Prefix] => String
)
)
[Schedule] => Array
(
[Frequency] => Daily
)
[OptionalFields] => Array
(
[0] => Size
[1] => ETag
)
[IsEnabled] => true
[Id] => string
[IncludedObjectVersions] => Current
[RequestId] => NWRmMzQwMDVfMjNiMjU4NjRfOGQ4MV9iN2Jk****
)
返回结果说明
参数名称 | 描述 | 类型 |
---|---|---|
Bucket | 存储桶名称格式为 BucketName-APPID ,详情请参见 命名规范 | String、Array |
Id | 清单的名称,与请求参数中的 id 对应 | Array |
IsEnabled | 清单是否启用的标识: |
String |
IncludedObjectVersions | 是否在清单中包含对象版本: |
String |
Filter | 筛选待分析对象。清单功能将分析符合 Filter 中设置的前缀的对象 | Array |
Prefix | 需要分析的对象的前缀 | String |
OptionalFields | 清单结果中可选包含的分析项目名称,可选字段包括:Size,LastModifiedDate,StorageClass,ETag,IsMultipartUploaded,ReplicationStatus | Array |
Schedule | 配置清单任务周期 | Array |
Frequency | 清单任务周期,可选项为按日或者按周,枚举值:Daily、Weekly | String |
Destination | 描述存放清单结果的信息 | Array |
COSBucketDestination | 清单结果导出后存放的存储桶信息 | Array |
Bucket | 清单分析结果的存储桶名 | String |
AccountId | 存储桶的所有者 UIN,例如100000000001 | String |
Prefix | 清单分析结果的前缀 | String |
Format | 清单分析结果的文件形式 | String |
Encryption | 为清单结果提供服务端加密的选项 | Array |
SSE-COS | COS 托管密钥的加密方式,无需填充 | String |
删除清单任务
功能说明
DELETE Bucket inventory 删除存储桶中指定的清单任务。
方法原型
public Guzzle\Service\Resource\Model DeleteBucketInventory(array $args = array());
请求示例
try {
$result = $cosClient->deleteBucketInvnetory(array(
'Bucket' => 'examplebucket-1250000000', //格式:BucketName-APPID
'Id' => 'string',
));
// 请求成功
print_r($result);
} catch (\Exception $e) {
// 请求失败
echo($e);
}
参数说明
参数名称 | 描述 | 类型 |
---|---|---|
bucket | 存储桶名称的格式为 BucketName-APPID ,详情请参见 命名规范 | String |
Id | 清单任务的名称,合法字符:a-z,A-Z,0-9,-,_,. | String |