이 가이드에서는 Google Drive Activity API v1과 v2의 차이점과 v2 API를 지원하도록 v1 애플리케이션을 변경하는 방법을 설명합니다.
승인
v1 API는 다음 범위를 사용했습니다.
https://www.googleapis.com/auth/activity
v2 API에는 다음 범위 중 하나가 필요합니다.
https://www.googleapis.com/auth/drive.activity
https://www.googleapis.com/auth/drive.activity.readonly
리소스 이름
v1 API에서 Google Drive 항목 및 사용자와 같은 객체의 식별자는 불투명 문자열이었습니다. v2 API에서 이러한 객체는 일반적으로 리소스 이름을 사용하여 참조됩니다. 자세한 내용은 Cloud API 디자인 가이드를 참고하세요.
이러한 식별자는 일반적으로 변환할 수 있습니다. 예를 들어 v2 API의 Drive 항목은 리소스 이름 items/ITEM_ID_V1
을 사용하여 참조됩니다.
요청
v2의 요청 형식은 v1의 요청 형식과 유사합니다. 특히 Drive 파일 또는 Drive 상위 요소의 활동을 계속 요청할 수 있지만 이러한 요청 매개변수 앞에 items/
를 추가하여 리소스 이름 형식으로 지정해야 합니다.
'그룹화'가 이제 통합으로 변경되었으며 source
및 userId
요청 매개변수가 삭제되었습니다.
응답에 반환되는 활동 데이터 유형을 제한할 수 있는 새로운 필터 옵션도 있습니다.
작업
v1 API에서는 활동 유형과 해당 활동과 연결된 데이터가 별도의 필드에 있었습니다. 예를 들어 primaryEventType
필드에 값 move
가 포함된 경우 앱은 최상위 move
필드가 추가 및 삭제된 상위 요소로 채워졌다고 가정합니다.
v2 API에서는 이러한 필드가 더 이상 구별되지 않습니다. ActionDetail
메시지에는 필드 세트가 정확히 하나 있습니다. 작업 유형을 나타내며 해당 작업과 관련된 세부정보를 포함합니다. 예를 들어 이동을 나타내는 ActionDetail
는 move
필드만 설정하며 이 필드에는 추가 및 삭제된 상위 요소가 나열됩니다.
v1 API primaryEventType
필드는 대략 v2 primaryActionDetail
에 해당합니다.
행위자
v1 API에서 반환된 활동에는 행위자가 알려진 사용자인 경우 User
가 포함되었으며, 경우에 따라 특수한 경우의 fromUserDeletion
와 같은 최상위 필드가 포함되었습니다.
v2 API에서는 더 다양한 Actor
유형을 사용할 수 있으며, 작업 수행자가 알려진 사용자인 경우 user.knownUser
가 채워집니다. 애플리케이션에 사용자에 관한 세부정보가 필요한 경우 KnownUser
필드 personName
를 people.get
메서드에 전달하여 People API에서 쿼리할 수 있습니다.
대상
v1 API에서는 타겟이 항상 Drive 항목이었습니다. v2 API에서 타겟은 Drive의 다른 유형의 객체가 될 수 있습니다. 예를 들어 드라이브 변경사항의 대상 유형은 Drive
입니다. 공유 드라이브의 루트 폴더는 여전히 root
필드에서 DriveItem
로 반환되지만 활동의 즉각적인 타겟은 아닙니다. FileComment
리소스에도 유사한 개념이 적용되며, 이 리소스의 parent
필드는 타겟 댓글 대화목록이 포함된 Drive 항목을 참조합니다.
통합 활동
v1 API에서는 통합 ('그룹화') 전략이 설정될 때 응답 스타일이 변경되었습니다. 특히 통합이 사용 설정된 경우 각 활동에는 구성요소 singleEvents
와 이러한 구성요소 이벤트 간의 공통 활동을 요약한 combinedEvent
가 포함되었습니다. 통합이 사용 중지된 경우 combinedEvent
필드에는 각 활동의 원래 통합되지 않은 이벤트가 포함되었습니다. 이러한 이벤트는 공유와 함께 생성과 같이 두 개 이상의 작업을 나타낼 수 있습니다.
v2 API에서는 반환된 DriveActivity
에 항상 모든 행위자, 타겟, 작업이 포함되므로 응답 스타일이 통합 전략에 따라 변경되지 않습니다.