添加自定义文件属性

自定义文件属性是键值对,用于存储 Google 云端硬盘文件的自定义元数据(例如标记)、其他数据存储区的 ID、工作流应用之间共享的信息等。例如,您可以为销售部门在第一季度生成的所有文档添加文件属性。

如需添加对所有应用可见的属性,请使用 files 资源的 properties 字段。如需添加仅限您的应用使用的属性,请使用 files 资源的 appProperties 字段。

属性还可以在搜索表达式中使用。

这是典型属性的结构,该属性可用于在文件中存储云端硬盘文件的数据库 ID。

云端硬盘 API v3

"appProperties": {
  "additionalID": "ID",
}

云端硬盘 API v2

{
  'key':        'additionalID',
  'value':      'ID',
  'visibility': 'PRIVATE'
}

使用自定义文件属性

本部分介绍如何执行会影响所有应用的一些与自定义文件属性相关的任务。

添加或更新自定义文件属性

如需添加或更新对所有应用可见的属性,请使用 files.update 方法设置 files 资源的 properties 字段。

PATCH https://www.googleapis.com/drive/v3/files/FILE_ID
{
  "properties": {
    "name": "wrench",
    "mass": "1.3kg",
    "count": "3"
  }
}

您还可以使用 Google Apps 脚本中的高级云端硬盘服务为文件添加自定义属性。如需了解详情,请参阅添加自定义属性

获取或列出自定义文件属性

如需查看对所有应用可见的属性,请使用 files.get 方法检索文件的自定义文件属性。

GET https://www.googleapis.com/drive/v3/files/FILE_ID?fields=properties

响应由 properties 对象组成,该对象包含一系列键值对。

{
  "properties": {
    "name": "wrench",
    "mass": "1.3kg",
    "count": "3"
  }
}

删除自定义文件属性

如需删除对所有应用可见的属性值,请使用 files.update 方法将 files 资源的 properties 字段设置为 null。

PATCH https://www.googleapis.com/drive/v3/files/FILE_ID
{
  "name": null
}

如需查看更改,请调用 files.get 方法来检索文件的 properties 对象。

{
  "properties": {
    "mass": "1.3kg",
    "count": "3"
  }
}

自定义文件属性的限制

自定义属性有以下限制:

  • 每个文件最多包含 100 个自定义属性,总计来自所有来源。
  • 每个文件最多包含 30 个公共属性,总计来自所有来源。
  • 任何一个应用的每个文件最多包含 30 个私有属性。
  • 采用 UTF-8 编码的每个属性字符串(包括键和值)不得超过 124 个字节。例如,键为 10 个字符的属性只能有 114 个字符的值。同样,如果某个属性的值需要 100 个字符,键最多可以使用 24 个字符。

如需了解详情,请参阅 files 资源。对于 Drive API v2,请参阅 properties 资源。

访问不公开的自定义文件属性

您只能通过使用通过 OAuth 2.0 客户端 ID 获取的访问令牌进行身份验证的请求,使用 appProperties 字段检索私有属性。您无法使用 API 密钥检索私有属性。