Google フォトでは、アルバムを使用して写真やその他のメディア アイテムを整理できます。 メディア アイテムは 1 つ以上のアルバムに関連付けることができます。関連付けを始めるには メディアアイテムをアルバムに追加する場合は、まずアルバムを作成する必要があります。
必要な認可スコープ
アルバムを作成するには、photoslibrary.appendonly
スコープが必要です。
作成後にアルバムのタイトルやカバー写真を変更するには、photoslibrary.edit.appcreateddata
スコープが必要です。
スコープの詳細については、認可スコープをご覧ください。
新しいアルバムを作成
アルバムを作成するには、
albums.create
と以下を含む
title
。title
は 500 文字に制限されています。
この呼び出しではアルバムが返されます。アプリ この情報からアルバム ID を保存し、メディアのアップロードに使用できます。 特定のアルバムに追加できます。
REST
POST リクエストのヘッダーは次のようになります。
POST https://photoslibrary.googleapis.com/v1/albums Content-type: application/json Authorization: Bearer oauth2-token
リクエスト本文は次のようになります。
{ "album": { "title": "new-album-title" } }
成功した場合、レスポンスはアルバムを返します。
{ "productUrl": "album-product-url", "id": "album-id", "title": "album-title", "isWriteable": "whether-you-can-write-to-this-album" }
アルバムの詳細を取得する
アプリで作成された既存のアルバムの詳細を取得するには、次の呼び出しを呼び出します。
albums.get
。
取得するアルバムの albumId
。
この呼び出しはアルバムを返します。
REST
GET リクエストのヘッダーを次に示します。
GET https://photoslibrary.googleapis.com/v1/albums/{albumId} Content-type: application/json Authorization: Bearer oauth2-token
リクエスト本文は次のようになります。
{ "albumId": album-id }
成功した場合、レスポンスは Album:
{ "id": album-id, "title": album-title, "productUrl": album-product-url, "mediaItemsCount": media-items-count, "coverPhotoBaseUrl": cover-photo-base-url, "coverPhotoMediaItemId": cover-photo-media-item-id }
アルバムのタイトルとカバー写真を変更する
アルバムのタイトルまたはカバー写真を変更するには、アルバムの ID を使用して album update
call
を作成し、新しいタイトルまたは新しいカバー写真のメディア アイテム ID をリクエストに含めます。photoslibrary.edit.appcreateddata
を使用する必要があります
authorization スコープで変更が行われます。
アルバム タイトルは 500 文字以内で指定してください。メディア アイテムをカバーする アルバムのオーナーがオーナーで、カバーとなるアルバムに属している できます。
REST
アルバムの title
を更新するための PATCH リクエスト ヘッダーは次のとおりです。
coverPhotomediaItemId
。
PATCH https://photoslibrary.googleapis.com/v1/albums/album-id?updateMask=title&updateMask=coverPhotoMediaItemId
このリクエストは、URL の updateMask
パラメータで指定されたフィールド マスクを含めることで、更新されるプロパティを決定します。updateMask
パラメータは、各値で渡す必要があります。
更新します。
更新するプロパティごとに、その詳細を 使用します。
{ "title": "new-album-title", "coverPhotoMediaItemId": "new-cover-media-item-id" }
成功すると、レスポンスは更新された album
を返します。
詳細:
{ "id": "album-id", "title": "new-album-title", "productUrl": "album-product-url", "isWriteable": "true-if-user-can-write-to-this-album", "mediaItemsCount": "number-of-media-items-in-album", "coverPhotoBaseUrl": "cover-photo-base-url_use-only-with-parameters", "coverPhotoMediaItemId": "new-cover-media-item-id" }
アルバムにメディア アイテムを追加する
アプリで作成したメディア アイテムを、アプリで作成したアルバムに追加するには、
通話中
albums.batchAddMediaItems
。
メディア アイテムは、この呼び出しで指定された順序でアルバムの最後に追加されます。
無効なメディア アイテムまたはアルバムを指定すると、リクエスト全体が失敗します。 部分的な成功はサポートされていません。
各アルバムには最大 20,000 個のメディア アイテムを含めることができます。次のアイテムの追加リクエスト: この上限を超えると失敗します
アルバムにメディア アイテムを追加するには、
albums.batchAddMediaItems
メディア アイテムとアルバムの識別子を返します。
REST
POST リクエストのヘッダーは次のようになります。
POST https://photoslibrary.googleapis.com/v1/albums/album-id:batchAddMediaItems Content-type: application/json Authorization: Bearer oauth2-token
リクエスト本文は次のようになります。
{ "mediaItemIds": [ "media-item-id", "another-media-item-id", ... ] }
成功すると、レスポンスは空の JSON レスポンスを返し、HTTP 成功ステータス。
アルバムからメディア アイテムを削除する
アプリで作成されたメディア アイテムを、アプリによって作成されたアルバムから削除するには、
通話中
albums.batchRemoveMediaItems
。
無効なメディア アイテムを指定すると、リクエスト全体が失敗します。部分的な成功はサポートされていません。
アルバムからメディア アイテムを削除するには、メディア アイテムとアルバムの識別子を指定して albums.batchRemoveMediaItems
を呼び出します。
REST
POST リクエストのヘッダーは次のようになります。
POST https://photoslibrary.googleapis.com/v1/albums/album-id:batchRemoveMediaItems Content-type: application/json Authorization: Bearer oauth2-token
リクエスト本文は次のようになります。
{ "mediaItemIds": [ "media-item-id", "another-media-item-id", ... ] }
成功すると、レスポンスは空の JSON レスポンスを返し、HTTP 成功ステータス。
Java
try { // List of media item IDs to remove List<String> mediaItemIds = Arrays .asList("MEDIA_ITEM_ID", "ANOTHER_MEDIA_ITEM_ID"); // ID of the album to remove media items from String albumId = "ALBUM_ID"; // Remove all given media items from the album photosLibraryClient.batchRemoveMediaItemsFromAlbum(albumId, mediaItemIds); } catch (ApiException e) { // An exception is thrown if the media items could not be removed }
PHP
try { // List of media item IDs to remove $mediaItemIds = ["MEDIA_ITEM_ID", "ANOTHER_MEDIA_ITEM_ID"]; // ID of the album to remove media items from $albumId = "ALBUM_ID"; // Remove all given media items from the album $response = $photosLibraryClient->batchRemoveMediaItemsFromAlbum($albumId, $mediaItemIds); } catch (\Google\ApiCore\ApiException $e) { // Handle Error }