Method: mediaItems.search

Cerca elementi multimediali nella raccolta Google Foto di un utente. Se non sono impostati filtri, vengono restituiti tutti gli elementi multimediali della raccolta dell'utente. Se è impostato un album, vengono restituiti tutti gli elementi multimediali nell'album specificato. Se vengono specificati filtri, vengono elencati gli elementi multimediali che corrispondono ai filtri della raccolta dell'utente. Se imposti sia l'album sia i filtri, la richiesta genera un errore.

Richiesta HTTP

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

L'URL utilizza la sintassi di transcodifica gRPC.

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "albumId": string,
  "pageSize": integer,
  "pageToken": string,
  "filters": {
    object (Filters)
  },
  "orderBy": string
}
Campi
albumId

string

Identificatore di un album. Se popolato, elenca tutti gli elementi multimediali nell'album specificato. Non può essere impostato in combinazione con alcun filtro.

pageSize

integer

Numero massimo di elementi multimediali da restituire nella risposta. È possibile che vengano restituiti meno elementi multimediali rispetto al numero specificato. Il valore predefinito di pageSize è 25, il massimo è 100.

pageToken

string

Un token di continuazione per visualizzare la pagina successiva dei risultati. Se aggiungi questo elemento alla richiesta, vengono restituite le righe che seguono pageToken. pageToken deve essere il valore restituito nel parametro nextPageToken nella risposta alla richiesta searchMediaItems.

filters

object (Filters)

Filtri da applicare alla richiesta. Non può essere impostato insieme a un albumId.

orderBy

string

Un campo facoltativo per specificare l'ordinamento dei risultati di ricerca. Il campo orderBy funziona solo quando si utilizza un dateFilter. Se questo campo non è specificato, i risultati vengono visualizzati per primi, il meno recente è indicato per creationTime. Se specifichi MediaMetadata.creation_time, i risultati di ricerca vengono mostrati in ordine opposto, dal meno recente al più recente. Per visualizzare i risultati dal più recente al meno recente, includi l'argomento desc come segue: MediaMetadata.creation_time desc.

Gli unici filtri aggiuntivi che possono essere utilizzati con questo parametro sono includeArchivedMedia e excludeNonAppCreatedData. Non sono supportati altri filtri.

Corpo della risposta

Elenco di elementi multimediali che corrispondono ai parametri di ricerca.

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "mediaItems": [
    {
      object (MediaItem)
    }
  ],
  "nextPageToken": string
}
Campi
mediaItems[]

object (MediaItem)

Solo output. Elenco di elementi multimediali che corrispondono ai parametri di ricerca.

nextPageToken

string

Solo output. Utilizza questo token per ottenere il successivo insieme di elementi multimediali. La sua presenza è l'unico indicatore affidabile della disponibilità di altri elementi multimediali nella richiesta successiva.

Ambiti di autorizzazione

Richiede uno dei seguenti ambiti OAuth:

  • https://www.googleapis.com/auth/photoslibrary
  • https://www.googleapis.com/auth/photoslibrary.readonly
  • https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata

Filtri

Filtri che possono essere applicati alla ricerca di elementi multimediali. Se vengono specificate più opzioni di filtro, queste vengono trattate come AND tra loro.

Rappresentazione JSON
{
  "dateFilter": {
    object (DateFilter)
  },
  "contentFilter": {
    object (ContentFilter)
  },
  "mediaTypeFilter": {
    object (MediaTypeFilter)
  },
  "featureFilter": {
    object (FeatureFilter)
  },
  "includeArchivedMedia": boolean,
  "excludeNonAppCreatedData": boolean
}
Campi
dateFilter

object (DateFilter)

Filtra gli elementi multimediali in base alla loro data di creazione.

contentFilter

object (ContentFilter)

Filtra gli elementi multimediali in base ai relativi contenuti.

mediaTypeFilter

object (MediaTypeFilter)

Filtra gli elementi multimediali in base al tipo di elemento multimediale.

featureFilter

object (FeatureFilter)

Filtra gli elementi multimediali in base alle loro funzionalità.

includeArchivedMedia

boolean

Se impostati, i risultati includono gli elementi multimediali archiviati dall'utente. Il valore predefinito è false (gli elementi multimediali archiviati non sono inclusi).

excludeNonAppCreatedData

boolean

Se impostato, i risultati escludono gli elementi multimediali non creati da questa app. Il valore predefinito è false (vengono restituiti tutti gli elementi multimediali). Questo campo viene ignorato se viene utilizzato l'ambito photoslibrary.readonly.app createddata.

DateFilter

Questo filtro definisce le date o gli intervalli di date consentiti per i contenuti multimediali restituiti. È possibile scegliere un insieme di date specifiche e di intervalli di date. Gli elementi multimediali caricati senza metadati che specificano la data di acquisizione dell'elemento multimediale non verranno restituiti nelle query che utilizzano i filtri della data. In questo caso, il tempo di caricamento del server di Google Foto non viene utilizzato come metodo alternativo.

Rappresentazione JSON
{
  "dates": [
    {
      object (Date)
    }
  ],
  "ranges": [
    {
      object (DateRange)
    }
  ]
}
Campi
dates[]

object (Date)

Elenco di date che corrispondono alla data di creazione dell'elemento multimediale. È possibile includere un massimo di 5 date per richiesta.

ranges[]

object (DateRange)

Elenco di intervalli di date che corrispondono alla data di creazione degli elementi multimediali. Puoi includere un massimo di 5 intervalli di date per richiesta.

Data

Rappresenta una data di calendario intera. Imposta day su 0 quando solo il mese e l'anno sono significativi, ad esempio, tutto dicembre 2018. Imposta day e month su 0 se solo l'anno è significativo, ad esempio tutto il 2018. Imposta year su 0 quando solo il giorno e il mese sono significativi, ad esempio un anniversario o un compleanno.

Non supportato: vengono impostati tutti i valori su 0, solo month è impostato su 0 o entrambi i valori day e year sono impostati su 0 contemporaneamente.

Rappresentazione JSON
{
  "year": integer,
  "month": integer,
  "day": integer
}
Campi
year

integer

Anno della data. Il valore deve essere compreso tra 1 e 9999 oppure 0 per specificare una data senza anno.

month

integer

Mese di un anno. Il valore deve essere compreso tra 1 e 12 oppure 0 per specificare un anno senza giorno e mese.

day

integer

Giorno del mese. Deve essere compreso tra 1 e 31 ed essere valido per l'anno e il mese oppure 0 se specifichi un anno o un mese in cui il giorno non è significativo.

DateRange

Definisce un intervallo di date. Entrambe le date devono essere nello stesso formato. Per ulteriori informazioni, vedi Date.

Rappresentazione JSON
{
  "startDate": {
    object (Date)
  },
  "endDate": {
    object (Date)
  }
}
Campi
startDate

object (Date)

La data di inizio (inclusa come parte dell'intervallo) in uno dei formati descritti.

endDate

object (Date)

La data di fine (inclusa come parte dell'intervallo). Deve essere specificata nello stesso formato della data di inizio.

ContentFilter

Questo filtro ti consente di restituire elementi multimediali in base al tipo di contenuti.

Puoi specificare un elenco di categorie da includere e/o un elenco di categorie da escludere. All'interno di ogni elenco, le categorie sono combinate con un operatore OR.

Il filtro per contenuti includedContentCategories: [c1, c2, c3] otterrà gli elementi multimediali che contengono (c1 OR c2 OR c3).

Il filtro per contenuti excludedContentCategories: [c1, c2, c3] NON otterrà gli elementi multimediali che contengono (c1 OR c2 OR c3).

Puoi anche includere alcune categorie ed escluderne altre, come in questo esempio: includedContentCategories: [c1, c2], excludedContentCategories: [c3, c4]

L'esempio precedente otterrebbe elementi multimediali che contengono (c1 OR c2) AND NOT (c3 OR c4). Una categoria visualizzata in includedContentategories non deve apparire in excludedContentCategories.

Rappresentazione JSON
{
  "includedContentCategories": [
    enum (ContentCategory)
  ],
  "excludedContentCategories": [
    enum (ContentCategory)
  ]
}
Campi
includedContentCategories[]

enum (ContentCategory)

L'insieme di categorie da includere nei risultati di ricerca degli elementi multimediali. Gli elementi dell'insieme sono impostati con OR. È previsto un massimo di 10 includedContentCategories per richiesta.

excludedContentCategories[]

enum (ContentCategory)

L'insieme di categorie che non devono essere incluse nei risultati di ricerca degli elementi multimediali. Gli elementi dell'insieme sono impostati con OR. È previsto un massimo di 10 excludedContentCategories per richiesta.

ContentCategory

Si tratta di un insieme di categorie di contenuti predefinite in base ai quali puoi applicare un filtro.

Enum
NONE Categoria di contenuti predefinita. Questa categoria viene ignorata quando nel filtro viene utilizzata qualsiasi altra categoria.
LANDSCAPES Elementi multimediali che contengono paesaggi.
RECEIPTS Elementi multimediali contenenti ricevute.
CITYSCAPES Elementi multimediali che contengono paesaggi urbani.
LANDMARKS Elementi multimediali contenenti punti di riferimento.
SELFIES Elementi multimediali che sono selfie.
PEOPLE Elementi multimediali contenenti persone.
PETS Elementi multimediali contenenti animali domestici.
WEDDINGS Elementi multimediali di matrimoni.
BIRTHDAYS Elementi multimediali relativi ai compleanni.
DOCUMENTS Elementi multimediali contenenti documenti.
TRAVEL Elementi multimediali acquisiti durante il viaggio.
ANIMALS Elementi multimediali contenenti animali.
FOOD Elementi multimediali contenenti cibo.
SPORT Elementi multimediali di eventi sportivi.
NIGHT Elementi multimediali acquisiti di notte.
PERFORMANCES Elementi multimediali delle prestazioni.
WHITEBOARDS Elementi multimediali contenenti lavagne.
SCREENSHOTS Elementi multimediali che sono screenshot.
UTILITY Elementi multimediali considerati utilità. Questi includono, a titolo esemplificativo, documenti, screenshot, lavagne virtuali e così via.
ARTS Elementi multimediali contenenti opere d'arte.
CRAFTS Elementi multimediali che contengono attività manuali.
FASHION Elementi multimediali correlati alla moda.
HOUSES Elementi multimediali contenenti case.
GARDENS Elementi multimediali che contengono giardini.
FLOWERS Elementi multimediali contenenti fiori.
HOLIDAYS Elementi multimediali presi durante le festività.

MediaTypeFilter

Questo filtro definisce il tipo di elementi multimediali da restituire, ad esempio video o foto. È supportato un solo tipo di elemento multimediale.

Rappresentazione JSON
{
  "mediaTypes": [
    enum (MediaType)
  ]
}
Campi
mediaTypes[]

enum (MediaType)

I tipi di elementi multimediali da includere. Questo campo deve essere compilato con un solo tipo di media. Se specifichi più tipi di contenuti multimediali, viene visualizzato un errore.

MediaType

L'insieme di tipi di contenuti multimediali che è possibile cercare.

Enum
ALL_MEDIA È considerata come se non venisse applicato alcun filtro. Sono inclusi tutti i tipi di contenuti multimediali.
VIDEO Tutti gli elementi multimediali che sono considerati video. Sono inclusi anche i filmati che l'utente ha creato utilizzando l'app Google Foto.
PHOTO Tutti gli elementi multimediali considerati foto. Sono inclusi .bmp, .gif, .ico, .jpg (e altre ortografie), .tiff, .webp e tipi di foto speciali come Live Photo su iOS, foto in movimento Android, panoramiche e foto sferiche.

FeatureFilter

Questo filtro definisce le caratteristiche che gli elementi multimediali devono avere.

Rappresentazione JSON
{
  "includedFeatures": [
    enum (Feature)
  ]
}
Campi
includedFeatures[]

enum (Feature)

L'insieme di funzionalità da includere nei risultati di ricerca degli elementi multimediali. Gli elementi dell'insieme sono impostati con l'operatore OR e possono corrispondere a qualsiasi caratteristica specificata.

Selezione delle

L'insieme di funzionalità in base a cui puoi filtrare.

Enum
NONE È considerata come se non venisse applicato alcun filtro. Tutte le funzionalità sono incluse.
FAVORITES Elementi multimediali che l'utente ha contrassegnato come preferiti nell'app Google Foto.