Questa guida illustra le differenze tra le versioni 1 e 2 dell'API Google Drive Activity v1 e come modificare l'applicazione v1 per supportare l'API v2.
Autorizzazione
L'API v1 ha utilizzato questo ambito:
https://www.googleapis.com/auth/activity
L'API v2 richiede uno dei seguenti ambiti:
https://www.googleapis.com/auth/drive.activity
https://www.googleapis.com/auth/drive.activity.readonly
Nomi delle risorse
Nell'API v1, gli identificatori di oggetti come gli elementi e gli utenti di Google Drive erano stringhe opache. Nell'API v2, a questi oggetti in genere viene fatto riferimento tramite nomi delle risorse. Per ulteriori informazioni, consulta la Guida alla progettazione delle API Cloud .
Questi identificatori possono generalmente essere convertiti. Ad esempio, per il riferimento agli elementi di Drive nell'API v2 viene utilizzato il nome della risorsa items/ITEM_ID_V1
.
Richieste
Il formato della richiesta per la versione 2 è simile a quello per la versione 1. Nello specifico, puoi comunque richiedere attività per un file di Drive o un predecessore di Drive, ma tieni presente che devi formattare questi parametri della richiesta come nomi delle risorse anteponendo loro il prefisso items/
.
Il "raggruppamento" ora si chiama
Consolidamento e i parametri delle richieste source
e
userId
sono stati rimossi.
Esistono anche nuove opzioni di filtro che ti consentono di limitare i tipi di dati relativi alle attività restituiti nella risposta.
Azioni
Nell'API v1, il tipo di attività e i dati associati a quell'attività erano in campi separati. Ad esempio, se il campo primaryEventType
contiene il valore move
, le app presuppongono che un campo move
di primo livello sia compilato con i valori principali aggiunti e rimossi.
Nell'API v2, questi campi non sono più distinti. Per il messaggio ActionDetail
è stato impostato un solo campo. Indica il tipo di azione e contiene i dettagli associati. Ad esempio, un ActionDetail
che rappresenta uno spostamento imposta solo il campo move
, in cui sono elencati i principali aggiunti e rimossi.
Il campo primaryEventType
dell'API v1 corrisponde approssimativamente alla versione primaryActionDetail
v2.
Actors
Nell'API v1, l'attività restituita conteneva un User
se l'attore era un utente noto e, facoltativamente, conteneva un campo di primo livello come fromUserDeletion
per i casi speciali.
Nell'API v2 è disponibile un set più completo di tipi Actor
e il valore user.knownUser
viene completato quando l'attore è un utente noto. Se
la tua applicazione ha bisogno di informazioni dettagliate sugli utenti, può eseguire query
dall'API People passando il campo KnownUser
personName
al
metodo people.get
.
Target
Nell'API v1, le destinazioni erano sempre elementi di Drive. Nell'API v2, i target
possono essere altri tipi di oggetti in Drive. Ad esempio,
le modifiche a un Drive hanno come target
Drive
. La cartella principale di un Drive condiviso viene comunque restituita (come DriveItem
nel campo root
), ma non è la destinazione immediata dell'attività. Un concetto simile si applica a una risorsa FileComment
, il cui campo parent
fa riferimento all'elemento di Drive contenente il thread di commenti di destinazione.
Attività consolidata
Nell'API v1, lo stile della risposta è cambiato quando è stata impostata una strategia di consolidamento ("raggruppamento"). In particolare, quando il consolidamento era attivo, ogni attività
conteneva il componente singleEvents
e un elemento combinedEvent
che riepilogava
l'attività comune tra questi eventi. Quando il consolidamento è stato disattivato, il campo combinedEvent
conteneva l'evento originale non consolidato per ogni attività. Ognuno di questi eventi può rappresentare più
azione, ad esempio una creazione insieme a una condivisione.
Nell'API v2, lo stile della risposta non cambia in base alla strategia di consolidamento, in quanto l'elemento DriveActivity
restituito contiene sempre l'insieme completo di attori, target e azioni.