全部产品
Search
文档中心

对象存储 OSS:GetBucketInventory

更新时间:Feb 06, 2026

GetBucketInventory用于查看某个存储空间(Bucket)中指定的清单(Inventory)任务。

注意事项

阿里云账号默认拥有查看Bucket指定清单任务的权限。如果您需要通过RAM用户或者STS的方式进行查看,您必须拥有oss:GetBucketInventory权限。

请求语法

GET /?inventory&inventoryId=inventoryId HTTP/1.1

请求元素

名称

类型

是否必选

描述

inventoryId

字符串

查询的清单规则Id。

响应元素

名称

类型

描述

Id

字符串

由用户指定的清单名称,清单名称在当前存储空间下必须全局唯一。

IsEnabled

布尔

清单是否启用的标识。

有效值:true或false

  • 如果设置为true,清单功能将生效。

  • 如果设置为false,将不生成任何清单。

Filter

容器

清单筛选的前缀。指定前缀后,清单将筛选出符合前缀设置的对象。

Prefix

字符串

筛选规则的匹配前缀。

父节点:Filter

Destination

容器

存放清单结果的信息。

OSSBucketDestination

容器

清单结果导出后存放的存储空间信息。

父节点:Destination

Format

字符串

导出清单文件的文件格式。

有效值:CSV

父节点:OSSBucketDestination

AccountId

字符串

存储空间所有者授予的账户ID。

父节点:OSSBucketDestination

RoleArn

字符串

存储空间所有者授予操作权限的角色名。

格式为:acs:ram::uid:role/rolename

父节点:OSSBucketDestination

Bucket

字符串

存放导出的清单文件的存储空间。

父节点:OSSBucketDestination

Prefix

字符串

清单文件的存储路径前缀。

父节点:OSSBucketDestination

Encryption

容器

清单文件的加密方式。

有效值:SSE-OSS、SSE-KMS或空

父节点:OSSBucketDestination

SSE-OSS

容器

SSE-OSS加密方式的容器。

父节点:Encryption

SSE-KMS

容器

用于保存SSE-KMS加密方式下的密钥的容器。

父节点:Encryption

KeyId

字符串

KMS密钥id。

父节点:SSE-KMS

Schedule

容器

存放清单导出周期信息的容器。

Frequency

字符串

清单文件导出的周期。

有效值:Daily或Weekly

父节点:Schedule

IncludedObjectVersions

字符串

是否在清单中包含Object版本信息。

有效值:All或Current

  • 如果为All,则导出Object的所有版本信息。

  • 如果为Current,则导出Object的当前版本信息。

OptionalFields

容器

设置清单结果中应包含的配置项。

Field

字符串

清单结果中包含的配置项。

可选的配置项:Size、LastModifiedDate、TransitionTime、ETag、StorageClass、IsMultipartUploaded、EncryptionStatus、ObjectAcl、TaggingCount、ObjectType、Crc64

父节点:OptionalFields

IncrementalInventory

容器

增量清单的配置信息。

IsEnabled

布尔

是否开启增量清单。

有效值:

  • true:开启

  • false:关闭

当取值为true 时,增量清单功能启用,不受上层enable=false 的影响。

父节点:IncrementalInventory

Schedule

容器

增量清单的导出周期。

父节点:IncrementalInventory

Frequency

正整数

增量清单的导出频率,单位为秒。

系统当前以 600 秒为固定周期,每个周期自动创建一个目录前缀,并生成对应的 manifest 文件及该周期内产生的多份 CSV 文件。暂不支持自定义频率设置。

父节点:Schedule

OptionalFields

容器

设置增量清单中包含的配置项。

父节点:IncrementalInventory

Field

字符串

增量清单中包含的配置项。

父节点:OptionalFields

  • SequenceNumber:序列号,每条记录的SequenceNumber唯一,同Bucket同Object下的记录,可按照SequenceNumber排序,通常保证排序后的记录遵循时间逻辑顺序。

  • RecordType:事件类型:CREATE、UPDATE_METADATA、DELETE

    • CREATE:所选前缀下发生的所有上传方式,如 Put/Post/Append/MultipartUpload/Copy

    • UPDATE_METADATA:所选前缀下所有元数据的更新都记录在该类型中

    • DELETE:所选前缀下的文件的所有删除方式,如 DeleteObject/DeleteMultipleObjects、开启多版本后生成 DeleteMarker、生命周期删除。删除有DeleteMarker和永久删除,其中,永久删除记录仅保留 BucketKeySequenceNumberRecordTypeRecordTimestamp 和 VersionId 核心字段,其余列均为空(null)。

  • RecordTimestamp:时间戳 ( 示例: "2024-08-25 18:08:01.024"),采用格林威治时区,精度到毫秒。

  • Requester:请求者的阿里云 ID 或者 Principal ID。

  • RequestId:请求的唯一标识。

  • SourceIp:请求者源 IP。

  • Key:Bucket 中 Object 的名称,采用URL编码。

  • VersionId:Object的版本ID。仅当配置的清单规则为导出所有版本时出现此字段。

    • 如果配置清单规则的Bucket未开启版本控制,则该字段显示为空。

    • 如果配置清单规则的Bucket已开启版本控制,则该字段显示为Object的VersionId。

  • IsDeleteMarker:Object版本是否为删除标记。仅当配置的清单规则为导出所有版本时出现此字段。

    • 如果配置清单规则的Bucket未开启版本控制,则该字段默认显示为false

    • 如果配置清单规则的Bucket已开启版本控制,且Object为删除标记时,则该字段显示为true。如果Object不是删除标记,则该字段显示为false

  • Size:Object的大小。

  • StorageClass:Object的存储类型。

  • LastModifiedDate:Object的最后修改时间。

  • ETag:Object的ETag值,用于标识Object的内容。Object生成时会创建相应的ETag,用于标识一个Object的内容。

    • 通过PutObject接口创建的Object,ETag值是其内容的MD5值。

    • 通过其他方式创建的Object,ETag值是基于一定计算规则生成的唯一值,但不是其内容的MD5值。

  • IsMultipartUploaded:是否为通过分片上传方式上传的Object。

  • ObjectType:Object类型。

  • ObjectAcl:Object的读写权限。

  • Crc64:Object的CRC64。

  • EncryptionStatus:Object是否加密。

示例

  • 请求示例

    GET /?inventory&inventoryId=list1 HTTP/1.1
  • 返回示例

      HTTP/1.1 200 OK
      x-oss-request-id: 56594298207FB304438516F9
      Date: Mon, 31 Oct 2016 12:00:00 GMT
      Server: AliyunOSS
      Content-Length: length
    
      <?xml version="1.0" encoding="UTF-8"?>
      <InventoryConfiguration>
         <Id>report1</Id>
         <IsEnabled>true</IsEnabled>
         <Destination>
            <OSSBucketDestination>
               <Format>CSV</Format>
               <AccountId>1000000000000000</AccountId>
               <RoleArn>acs:ram::1000000000000000:role/AliyunOSSRole</RoleArn>
               <Bucket>acs:oss:::bucket_0001</Bucket>
               <Prefix>prefix1</Prefix>
               <Encryption>
                  <SSE-OSS/>
               </Encryption>
            </OSSBucketDestination>
         </Destination>
         <Schedule>
            <Frequency>Daily</Frequency>
         </Schedule>
         <Filter>
           <Prefix>myprefix/</Prefix>
         </Filter>
         <IncludedObjectVersions>All</IncludedObjectVersions>
         <OptionalFields>
            <Field>Size</Field>
            <Field>LastModifiedDate</Field>
            <Field>ETag</Field>
            <Field>StorageClass</Field>
            <Field>IsMultipartUploaded</Field>
            <Field>EncryptionStatus</Field>
         </OptionalFields>
      </InventoryConfiguration>

SDK

此接口所对应的各语言SDK如下:

命令行工具ossutil

GetBucketInventory接口所对应的ossutil命令,请参见get-bucket-inventory