You need to enable JavaScript to run this app.
导航

ListBucketInventory

最近更新时间2023.11.21 10:22:23

首次发布时间2023.10.12 19:40:16

功能描述

此接口用于批量获取存储桶中的所有桶清单的规则。

注意事项

单次请求最多可以获取 100 条桶清单。若需获取超过 100 条桶清单,则需发送多次请求,并保留相应的 continuation-token,作为下一次请求的参数。

请求消息洋式

获取超过 100 条桶清单规则时,建议使用携带 continuation-token 的请求消息格式,使得本次返回的桶清单从上一次请求返回的桶清单后继续进行列举,而不是从头开始列举。

  • 不携带 continuation-token 的请求消息格式
GET /?inventory HTTP/1.1
Host: BucketName.tos-cn-beijing.volces.com
Date: Fri, 30 Jul 2021 13:59:18 GMT
Authorization: authorization string
  • 携带 continuation-token 的请求消息格式
GET /?inventory&continuation-token=ContinuationToken HTTP/1.1
Host: BucketName.tos-cn-beijing.volces.com
Date: Fri, 30 Jul 2021 13:59:18 GMT
Authorization: authorization string

请求参数和消息头

该请求使用的公共请求消息头,请参见公共参数

名称

位置

参数类型

是否必选

示例值

说明

inventroy

Query

String

-

代表 ListBucketInventory 请求的特殊标识。

continuation-token

Query

String

next_inventory_id

超过 100 条桶清单时,可以设置 continuation-token,使得本次返回的桶清单从上一次请求返回的桶清单后继续进行列举,而不是从头开始列举。

请求元素

该请求不使用消息元素。

响应消息头

该请求返回的公共响应消息头,请参见公共参数

响应元素

名称

参数类型

示例值

说明

ListInventoryConfigurationsResult

Array

-

列举桶清单规则的结果。

InventoryConfiguration

Array

-

桶清单规则。

IsTruncated

Bool

true

是否列举全部的清单任务。取值说明如下:

  • true:未完整列出存储桶中的所有清单任务,您可以将 NextContinuationToken 字段的值作为下一次请求的 continuation-token 参数,以获取下一页的清单配置列表。
  • false:已全部列出存储桶中的所有清单任务。

NextContinuationToken

String

next_inventory_id

当未完整列出存储桶中的所有清单任务时,返回该字段。您可以使用该字段作为下一次请求的 continuation-token 参数,以获取下一页的桶清单配置列表。

Id

String

report

桶清单名称。

IsEnabled

Bool

true

是否启用桶清单功能。取值如下:

  • true:启用桶清单功能。
  • false:不启用桶清单功能。

Destination

Array

-

清单文件的相关信息。

TOSBucketDestination

Array

-

清单文件的存储桶相关信息。
父节点:Destination

Role

String

TosArchiveTOSInventory

角色名称,用于授予对象存储读取源存储桶所有文件和向目标存储桶写入文件的权限。该角色必须具有 TOS 的读写权限及服务访问权限,您也可以使用 TOS 默认角色 TosArchiveTOSInventory

Format

String

CSV

清单文件的格式。取值CSV,即清单文件的格式为使用 GZIP 压缩后的 CSV 格式。
父节点:TOSBucketDestination

AccountId

String

200000****

存储桶所有者的账号 ID。
父节点:TOSBucketDestination

Bucket

String

bucket_0001

保存清单文件的存储桶。
父节点:TOSBucketDestination

Prefix

String

prefix1

清单文件的存储路径前缀。
父节点:TOSBucketDestination

Schedule

Array

-

桶清单导出周期信息。

Frequency

String

Daily

清单文件导出的周期。取值如下:

  • Daily:按天导出清单文件。
  • Weekly:按周导出清单文件。

父节点:Schedule

IncludedObjectVersions

String

All

导出的对象版本。取值如下:

  • All:导出所有版本的对象信息。
  • Current:导出当前版本的对象信息。

Filter

Array

-

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

Prefix

String

Pics/

导出文件前缀匹配信息,如果不设置,默认生成桶中所有对象的清单。
父节点:Filter

OptionalFields

Array

-

清单文件导出的信息。

Field

String

Size

清单文件需要导出的信息。支持多选,取值如下:

  • Size:对象的大小。
  • LastModifiedDate:对象的最后修改时间。
  • ETag:对象的 ETag 值,用于标识对象的内容。
  • StorageClass:对象的存储类型。
  • IsMultipartUploaded:是否为通过分片上传方式上传的对象。
  • EncryptionStatus:对象是否加密。
  • CRC64:对象的 CRC64 值。
  • ReplicationStatus:对象的跨区域复制或同区域复制状态。

父节点:OptionalFields

请求示例

GET /?inventory HTTP/1.1
Host: BucketName.tos-cn-beijing.volces.com
Date: Fri, 30 Jul 2021 13:59:18 GMT
Authorization: authorization string

响应示例

HTTP/1.1 200 OK
x-tos-id-2: 4fac130beeb50032-a444ed0
x-tos-request-id: 4fac130beeb50032-a444ed0
Date: Fri, 30 Jul 2021 13:59:18 GMT
server: TosServer
Content-Length: 1429

{
  "ListInventoryConfigurationsResult": {
    "InventoryConfiguration": [
      {
        "Id": "report",
        "IsEnabled": "true",
        "Filter": { "Prefix": "Pics/" },
        "Destination": {
          "TOSBucketDestination": {
            "Format": "CSV",
            "AccountId": "200000****",
            "Role": "TosArchiveTOSInventory",
            "Bucket": "test23",
            "Prefix": "prefix1"
          }
        },
        "Schedule": { "Frequency": "Daily" },
        "IncludedObjectVersions": "Current",
        "OptionalFields": {
          "Field": [
            "Size",
            "StorageClass"
          ]
        }
      },
      {
        "Id": "report1",
        "IsEnabled": "true",
        "Filter": { "Prefix": "fast" },
        "Destination": {
          "TOSBucketDestination": {
            "Format": "CSV",
            "AccountId": "200000****",
            "Role": "TosArchiveTOSInventory",
            "Bucket": "test12",
            "Prefix": "tos_bucket_inventory"
          }
        },
        "Schedule": { "Frequency": "Weekly" },
        "IncludedObjectVersions": "Current",
        "OptionalFields": {
          "Field": [
            "IsMultipartUploaded",
            "EncryptionStatus",
            "CRC64",
            "Size",
            "StorageClass",
            "LastModifiedDate",
            "ETag"
          ]
        }
      }
    ],
    "IsTruncated": "false"
  }
}