Drive Activity API v1'den geçiş

Bu kılavuzda, Google Drive Activity API v1 ile v2 arasındaki farklar ve v1 uygulamanızı v2 API'yi destekleyecek şekilde değiştirme hakkında bilgiler verilmektedir.

Yetkilendirme

v1 API şu kapsamı kullanıyordu:

  • https://www.googleapis.com/auth/activity

v2 API için aşağıdaki kapsamlardan biri gereklidir:

  • https://www.googleapis.com/auth/drive.activity
  • https://www.googleapis.com/auth/drive.activity.readonly

Kaynak adları

v1 API'de Google Drive öğeleri ve kullanıcılar gibi nesnelerin tanımlayıcıları opak dizelerdi. v2 API'de bu nesnelere genellikle kaynak adları kullanılarak referans verilir. Daha fazla bilgi için Cloud API Tasarım Kılavuzu'na bakın.

Bu tanımlayıcılar genellikle dönüştürülebilir. Örneğin, v2 API'deki Drive öğelerine items/ITEM_ID_V1 kaynak adı kullanılarak referans verilir.

İstekler

v2 için istek biçimi, v1'e benzer. Daha açık belirtmek gerekirse, Drive dosyası veya Drive üst öğesi için etkinlik isteğinde bulunabilirsiniz. Ancak bu istek parametrelerini items/ ön ekiyle kaynak adı olarak biçimlendirmeniz gerektiğini unutmayın.

"Gruplandırma"nın adı Birleştirme olarak değiştirildi ve source ile userId istek parametreleri kaldırıldı.

Ayrıca, yanıtta döndürülen etkinlik verilerinin türlerini kısıtlamanıza olanak tanıyan yeni Filtre seçenekleri de vardır.

İşlemler

v1 API'de etkinlik türü ve bu etkinlikle ilişkili veriler ayrı alanlardaydı. Örneğin, primaryEventType alanı move değerini içeriyorsa uygulamalar, üst düzey bir move alanının eklenen ve kaldırılan üst öğelerle doldurulduğunu varsayar.

v2 API'de bu alanlar artık farklı değildir. ActionDetail mesajında tam olarak bir alan ayarlanmıştır. İşlem türünü belirtir ve bu işlemle ilişkili ayrıntıları içerir. Örneğin, bir taşıma işlemini temsil eden ActionDetail yalnızca move alanını ayarlar ve bu alan, eklenen ve kaldırılan üst öğeleri listeler.

v1 API primaryEventType alanı, v2 primaryActionDetail alanına yaklaşık olarak karşılık gelir.

Actors

1. sürüm API'sinde, aktör bilinen bir kullanıcıysa döndürülen etkinlik bir User içeriyordu ve isteğe bağlı olarak özel durumlar için fromUserDeletion gibi bir üst düzey alan içeriyordu.

v2 API'de daha zengin bir Actor türü grubu mevcuttur ve user.knownUser, aktör bilinen bir kullanıcı olduğunda doldurulur. Uygulamanız kullanıcılarla ilgili ayrıntılı bilgilere ihtiyaç duyuyorsa KnownUser alanını personName people.get yöntemine ileterek People API'den bu bilgileri sorgulayabilir.

Hedefler

v1 API'de hedefler her zaman Drive öğeleriydi. v2 API'de hedefler, Drive'daki diğer nesne türleri olabilir. Örneğin, bir sürücüdeki değişikliklerin hedef türü Drive'dur. Ortak Drive'ın kök klasörü yine döndürülür (root alanında DriveItem olarak), ancak etkinliğin doğrudan hedefi değildir. Benzer bir kavram, parent alanının hedef yorum mesaj dizisini içeren Drive öğesini andığı FileComment kaynağı için de geçerlidir.

Birleştirilmiş etkinlik

v1 API'de, bir birleştirme ("gruplandırma") stratejisi ayarlandığında yanıt stili değişiyordu. Daha açık belirtmek gerekirse, birleştirme etkinleştirildiğinde her etkinlik, bileşen singleEvents'ü ve bu bileşen etkinlikleri arasındaki ortak etkinliği özetleyen bir combinedEvent içeriyordu. Birleştirme devre dışıyken combinedEvent alanı, her etkinlik için orijinal birleştirilmemiş etkinliği içeriyordu. Bu etkinliklerden herhangi biri birden fazla işlemi temsil edebilir (ör. paylaşımla birlikte oluşturma).

V2 API'de, döndürülen DriveActivity her zaman tüm aktör, hedef ve işlem grubunu içerdiğinden yanıt stili, birleştirme stratejisine göre değişmez.