Alben verwalten

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
}