Method: mediaItems.batchCreate

在用户的 Google 相册媒体库中创建一项或多项媒体内容。

这是创建媒体项的第二步。有关第 1 步(将原始字节上传到 Google 服务器)的详细信息,请参阅上传媒体内容

此调用会将媒体内容添加到媒体库。如果指定影集 id,则此调用亦会将媒体内容添加该影集中。每个影集最多可包含 20,000 项媒体内容。默认情况下,媒体内容将添加到媒体库或影集的末尾。

如果同时定义了影集 id 和位置,则媒体内容将添加到影集的指定位置。

如果调用包含多项媒体内容,则这些内容会添加到指定位置。如果在非您所有的共享影集中创建媒体内容,则您将无法定位媒体内容。这样做会导致 BAD REQUEST 错误。

HTTP 请求

POST https://photoslibrary.googleapis.com/v1/mediaItems:batchCreate

网址采用 gRPC 转码语法。

请求正文

请求正文中包含结构如下的数据:

JSON 表示法
{
  "albumId": string,
  "newMediaItems": [
    {
      object (NewMediaItem)
    }
  ],
  "albumPosition": {
    object (AlbumPosition)
  }
}
字段
albumId

string

添加媒体内容的影集的标识符。媒体内容也会添加到用户的媒体库中。这是一个可选字段。

newMediaItems[]

object (NewMediaItem)

必需。要创建的媒体项列表。每次调用最多可包含 50 项媒体内容。

albumPosition

object (AlbumPosition)

在影集中添加媒体内容的位置。如果未指定,则媒体内容将添加到影集末尾(根据默认值,即为 LAST_IN_ALBUM)。如果设置了此字段但未指定 albumId,则请求失败。如果您设置了此字段,但不是共享影集的所有者,请求也将失败。

响应正文

已创建媒体内容列表。

如果成功,响应正文将包含结构如下的数据:

JSON 表示法
{
  "newMediaItemResults": [
    {
      object (NewMediaItemResult)
    }
  ]
}
字段
newMediaItemResults[]

object (NewMediaItemResult)

仅限输出。已创建媒体内容列表。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/photoslibrary
  • https://www.googleapis.com/auth/photoslibrary.appendonly
  • https://www.googleapis.com/auth/photoslibrary.sharing

NewMediaItem

用户的 Google 相册账号中创建的新媒体内容。

JSON 表示法
{
  "description": string,

  // Union field new_media_item_type can be only one of the following:
  "simpleMediaItem": {
    object (SimpleMediaItem)
  }
  // End of list of possible types for union field new_media_item_type.
}
字段
description

string

媒体项的说明。用户可以在 Google 相册应用的媒体内容信息部分看见此内容。必须少于 1,000 个字符。仅包含用户撰写的文本。说明应提供背景信息,帮助用户了解媒体内容。请勿添加任何自动生成的字符串,例如文件名、标签和其他元数据。

联合字段 new_media_item_type。新媒体内容的类型可能不同,具体取决于上传路径。目前支持的上传内容仅使用简单的媒体内容路径。new_media_item_type 只能是下列其中一项:
simpleMediaItem

object (SimpleMediaItem)

通过包含的 uploadToken 上传的新媒体内容。

SimpleMediaItem

通过上传令牌在 Google 相册中创建的简单媒体内容。

JSON 表示法
{
  "uploadToken": string,
  "fileName": string
}
字段
uploadToken

string

用于标识已上传到 Google 的媒体字节的令牌。

fileName

string

带有媒体内容扩展名的文件名。用户在 Google 相册中会看到该名称。如果设置了此字段,则系统将忽略字节上传过程中指定的文件名。文件名(包括文件扩展名)不应超过 255 个字符。这是一个可选字段。

NewMediaItemResult

创建新媒体项的结果。

JSON 表示法
{
  "uploadToken": string,
  "status": {
    object (Status)
  },
  "mediaItem": {
    object (MediaItem)
  }
}
字段
uploadToken

string

用于创建此新(简单)媒体项的上传令牌。仅当媒体内容简单且需要单个上传令牌时才填充。

status

object (Status)

如果在创建此媒体内容期间出现错误,则此字段会填充为错误相关信息。有关此字段的详细信息,请参阅 Status

mediaItem

object (MediaItem)

使用上传令牌创建的媒体内容。如果未出现错误且媒体内容已成功创建,系统会填充此字段。