In Google Foto puoi organizzare le foto e altri elementi multimediali utilizzando gli album. Un elemento multimediale può essere associato a uno o più album. Per iniziare l'associazione elementi multimediali a un album, devi prima creare l'album.
Ambiti di autorizzazione obbligatori
La creazione di album richiede l'ambito photoslibrary.appendonly
.
Per modificare il titolo o la foto di copertina degli album dopo la loro creazione è necessario lo scopophotoslibrary.edit.appcreateddata
.
Per ulteriori informazioni sugli ambiti, consulta Autorizzazione ambiti.
Creare un nuovo album
Per creare un album, chiama
albums.create
e includi
title
. Tieni presente che il campo title
è limitato a 500 caratteri.
La chiamata restituisce un album. La tua app può memorizzare l'ID album a partire da queste informazioni e utilizzarlo per caricare contenuti multimediali elementi all'album specifico.
REST
Ecco un'intestazione per una richiesta POST:
POST https://photoslibrary.googleapis.com/v1/albums Content-type: application/json Authorization: Bearer oauth2-token
Il corpo della richiesta è simile al seguente:
{ "album": { "title": "new-album-title" } }
Se ha esito positivo, la risposta restituisce un album:
{ "productUrl": "album-product-url", "id": "album-id", "title": "album-title", "isWriteable": "whether-you-can-write-to-this-album" }
Recuperare i dettagli dell'album
Per recuperare i dettagli di un album esistente creato dalla tua app, chiama
albums.get
e includi
albumId
dell'album da recuperare.
La chiamata restituisce un album.
REST
Ecco un'intestazione per una richiesta GET:
GET https://photoslibrary.googleapis.com/v1/albums/{albumId} Content-type: application/json Authorization: Bearer oauth2-token
Il corpo della richiesta è simile al seguente:
{ "albumId": album-id }
In caso di esito positivo, la risposta restituisce un 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 }
Modificare i titoli degli album e le foto di copertina
Per modificare il titolo di un album o la foto di copertina, crea una album update
call
con l'identificatore
all'album e includi il nuovo titolo o l'ID elemento multimediale della nuova foto di copertina nella
la richiesta. Dovrai usare photoslibrary.edit.appcreateddata
autorizzazione per apportare la modifica.
I titoli degli album non possono contenere più di 500 caratteri. Gli elementi multimediali di copertina devono essere di proprietà del proprietario dell'album e appartenere all'album di cui saranno la copertina.
REST
Ecco l'intestazione della richiesta PATCH per aggiornare title
e
coverPhotomediaItemId
.
PATCH https://photoslibrary.googleapis.com/v1/albums/album-id?updateMask=title&updateMask=coverPhotoMediaItemId
Questa richiesta determina quali proprietà vengono aggiornate includendo
una maschera di campo, indicata dai parametri updateMask
nel
URL. Il parametro updateMask
deve essere passato per ogni
proprietà album in fase di aggiornamento.
Per ogni proprietà che aggiorni, includi i dettagli in il corpo della richiesta:
{ "title": "new-album-title", "coverPhotoMediaItemId": "new-cover-media-item-id" }
In caso di esito positivo, la risposta restituisce l'oggetto album
aggiornato
dettagli:
{ "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" }
Aggiungere elementi multimediali a un album
Puoi aggiungere elementi multimediali creati dalla tua app agli album creati dalla tua app
chiamata
albums.batchAddMediaItems
Gli elementi multimediali vengono aggiunti alla fine dell'album nell'ordine indicato in questa chiamata.
Se viene specificato un elemento multimediale o un album non valido, l'intera richiesta avrà esito negativo. L'esito positivo parziale non è supportato.
Ogni album può contenere fino a 20.000 elementi multimediali. Richieste di aggiungere altri elementi che se superi questo limite non riusciranno.
Per aggiungere elementi multimediali a un album, chiama
albums.batchAddMediaItems
con gli identificatori degli elementi multimediali e dell'album.
REST
Ecco un'intestazione per una richiesta POST:
POST https://photoslibrary.googleapis.com/v1/albums/album-id:batchAddMediaItems Content-type: application/json Authorization: Bearer oauth2-token
Il corpo della richiesta è simile al seguente:
{ "mediaItemIds": [ "media-item-id", "another-media-item-id", ... ] }
Se l'esito è positivo, la risposta restituisce una risposta JSON vuota e l'istruzione HTTP Stato operazione riuscita.
Rimuovere elementi multimediali da un album
Puoi rimuovere elementi multimediali creati dalla tua app negli album creati dalla tua app
chiamata
albums.batchRemoveMediaItems
L'intera richiesta non andrà a buon fine se vengono specificati elementi multimediali non validi. Parziale l'operazione non è supportata.
Per rimuovere elementi multimediali da un album, chiama
albums.batchRemoveMediaItems
con gli identificatori degli elementi multimediali e dell'album.
REST
Ecco un'intestazione per una richiesta POST:
POST https://photoslibrary.googleapis.com/v1/albums/album-id:batchRemoveMediaItems Content-type: application/json Authorization: Bearer oauth2-token
Il corpo della richiesta è simile al seguente:
{ "mediaItemIds": [ "media-item-id", "another-media-item-id", ... ] }
Se l'esito è positivo, la risposta restituisce una risposta JSON vuota e l'istruzione HTTP Stato operazione riuscita.
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 }