In Google Fotos können Sie Fotos und andere Medien mithilfe von Alben organisieren. Ein Medienelement kann mit einem oder mehreren Alben verknüpft werden. So verknüpfen Sie Medienelemente mit einem Album müssen Sie zunächst das Album erstellen.
Erforderliche Autorisierungsbereiche
Zum Erstellen von Alben ist der Bereich photoslibrary.appendonly
erforderlich.
Um den Titel oder das Titelbild eines Albums nach der Erstellung zu ändern, müssen Sie
photoslibrary.edit.appcreateddata
Bereich.
Weitere Informationen zu Bereichen finden Sie unter Autorisierung Bereiche.
Neues Album erstellen
Rufen Sie zum Erstellen eines Albums albums.create
auf und geben Sie die title
an. title
ist auf 500 Zeichen beschränkt.
Der Aufruf gibt ein Album zurück. Ihre App kann die Album-ID aus diesen Informationen speichern und zum Hochladen von Medienelementen in das jeweilige Album verwenden.
REST
Dies ist die Kopfzeile einer POST-Anfrage:
POST https://photoslibrary.googleapis.com/v1/albums Content-type: application/json Authorization: Bearer oauth2-token
Der Anfragetext sieht so aus:
{ "album": { "title": "new-album-title" } }
Wenn der Vorgang erfolgreich war, wird in der Antwort ein Album:
{ "productUrl": "album-product-url", "id": "album-id", "title": "album-title", "isWriteable": "whether-you-can-write-to-this-album" }
Albumdetails abrufen
Um die Details zu einem vorhandenen Album abzurufen, das von Ihrer App erstellt wurde, rufen Sie
albums.get
und fügen Sie den
albumId
des Albums, das Sie abrufen möchten.
Der Aufruf gibt ein Album zurück.
REST
Hier ist ein Header für eine GET-Anfrage:
GET https://photoslibrary.googleapis.com/v1/albums/{albumId} Content-type: application/json Authorization: Bearer oauth2-token
Der Anfragetext sieht so aus:
{ "albumId": album-id }
Wenn der Vorgang erfolgreich war, wird in der Antwort ein 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 }
Albumtitel und -cover ändern
Wenn Sie einen Albumtitel oder ein Titelbild ändern möchten, erstellen Sie ein album update
call
mit der ID
Album und geben Sie den neuen Titel oder die Medienelement-ID des neuen Titelbilds an
der Anfrage. Sie müssen den Gültigkeitsbereich photoslibrary.edit.appcreateddata
für die Autorisierung verwenden, um die Änderung vorzunehmen.
Albumtitel dürfen maximal 500 Zeichen lang sein. Cover-Medien müssen dem Eigentümer des Albums gehören und zu dem Album gehören, dass sie als Cover dienen. für die Sie angegeben haben.
REST
Hier ist ein PATCH-Anfrageheader zum Aktualisieren des title
und
coverPhotomediaItemId
.
PATCH https://photoslibrary.googleapis.com/v1/albums/album-id?updateMask=title&updateMask=coverPhotoMediaItemId
Diese Anfrage bestimmt, welche Attribute aktualisiert werden, indem
eine Feldmaske, die durch die updateMask
-Parameter im
URL Der Parameter updateMask
muss für jede
Album-Eigenschaft, die aktualisiert wird.
Geben Sie für jede Property, die Sie aktualisieren, den Text der Anfrage:
{ "title": "new-album-title", "coverPhotoMediaItemId": "new-cover-media-item-id" }
Bei Erfolg gibt die Antwort die aktualisierte album
zurück.
Details:
{ "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" }
Einem Album Medien hinzufügen
Sie können von Ihrer App erstellte Medieninhalte zu Alben hinzufügen, die von Ihrer App erstellt wurden. Gehen Sie dazu wie folgt vor:
Anrufen
albums.batchAddMediaItems
Medienelemente werden in der in diesem Aufruf angegebenen Reihenfolge am Ende des Albums hinzugefügt.
Die gesamte Anfrage schlägt fehl, wenn ein ungültiges Medienelement oder ein ungültiges Album angegeben wird. Teilweise erfolgreiche Aktionen werden nicht unterstützt.
Jedes Album kann bis zu 20.000 Medienelemente enthalten. um weitere Elemente hinzuzufügen, die diese Beschränkung überschreiten würde, schlägt fehl.
Um Medieninhalte zu einem Album hinzuzufügen, rufen Sie
albums.batchAddMediaItems
durch die IDs der Medienelemente und des Albums.
REST
Dies ist die Kopfzeile einer POST-Anfrage:
POST https://photoslibrary.googleapis.com/v1/albums/album-id:batchAddMediaItems Content-type: application/json Authorization: Bearer oauth2-token
Der Anfragetext sieht so aus:
{ "mediaItemIds": [ "media-item-id", "another-media-item-id", ... ] }
Bei Erfolg wird eine leere JSON-Antwort und der HTTP-Status „Success“ zurückgegeben.
Medien aus einem Album entfernen
Sie können von Ihrer App erstellte Medienelemente aus von Ihrer App erstellten Alben entfernen, indem Sie albums.batchRemoveMediaItems
aufrufen.
Die gesamte Anfrage schlägt fehl, wenn ungültige Mediaelemente angegeben werden. Teilweise Erfolge werden nicht unterstützt.
Um Medienelemente aus einem Album zu entfernen, rufen Sie
albums.batchRemoveMediaItems
durch die IDs der Medienelemente und des Albums.
REST
Dies ist die Kopfzeile einer POST-Anfrage:
POST https://photoslibrary.googleapis.com/v1/albums/album-id:batchRemoveMediaItems Content-type: application/json Authorization: Bearer oauth2-token
Der Anfragetext sieht so aus:
{ "mediaItemIds": [ "media-item-id", "another-media-item-id", ... ] }
Wenn der Vorgang erfolgreich ist, gibt die Antwort eine leere JSON-Antwort und das HTTP- Erfolgsstatus.
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 }