Method: mediaItems.batchCreate

ユーザーの Google フォト ライブラリに 1 つまたは複数のメディア アイテムを作成します。

これはメディア アイテムを作成するための 2 つ目のステップです。1 つ目のステップである未加工のバイト列を Google サーバーにアップロードする方法について詳しくは、メディアのアップロードをご覧ください。

この呼び出しを実行すると、ライブラリにメディア アイテムが追加されます。アルバム id が指定されている場合は、アルバムにもメディア アイテムが追加されます。各アルバムには最大 20,000 個のメディア アイテムを追加できます。デフォルトでは、メディア アイテムはライブラリまたはアルバムの最後に追加されます。

アルバム id と位置の両方が定義されている場合、メディア アイテムは指定された位置でアルバムに追加されます。

呼び出しに複数のメディア アイテムが含まれる場合は、指定された位置にそれらが追加されます。自分がオーナーではない共有アルバムにメディア アイテムを作成する場合、メディア アイテムの位置を指定することはできません。こうすると、BAD REQUEST エラーが発生します。

HTTP リクエスト

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

この URL は gRPC Transcoding 構文を使用します。

リクエストの本文

リクエストの本文には、次の構造のデータが含まれます。

JSON 表現
{
  "albumId": string,
  "newMediaItems": [
    {
      object (NewMediaItem)
    }
  ],
  "albumPosition": {
    object (AlbumPosition)
  }
}
フィールド
albumId

string

メディア アイテムが追加されるアルバムの ID。メディア アイテムはユーザーのライブラリにも追加されます。このフィールドは省略できます。

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)

このメディア アイテムの作成中にエラーが発生した場合、エラーに関連する情報がこのフィールドに入力されます。このフィールドについて詳しくは、ステータスをご覧ください。

mediaItem

object (MediaItem)

アップロード トークンで作成されたメディア アイテム。エラーが発生せず、メディア アイテムが正常に作成された場合に入力されます。