앱에서 만든 미디어 항목 및 앨범 나열

필수 승인 범위

앱에서 만든 콘텐츠를 등록하려면 photoslibrary.readonly.appcreateddata 범위가 필요합니다. 범위에 대한 자세한 내용은 승인을 참조하세요. 범위를 참조하세요.

개요

라이브러리 API를 사용하면 애플리케이션에서 사용하는 미디어 항목을 나열하고 액세스할 수 있습니다. 확인할 수 있습니다.

미디어 항목 나열의 몇 가지 주요 기능은 다음과 같습니다.

  • 앱에서 만든 특정 앨범 또는 앱에서 만든 전체 앱의 미디어 항목 나열 라이브러리
  • 필터 적용 (날짜, 콘텐츠 카테고리, 미디어) 유형)를 사용하여 검색 범위를 좁힐 수 있습니다. 개 결과

  • mediaItem 객체 검색 직접 링크 및 메타데이터와 같은 필수 세부정보를 포함합니다.

라이브러리와 앨범 콘텐츠를 나열하면 미디어 항목 목록이 반환됩니다. 앨범에 포함된 보강 기능 포함되어 있지 않습니다. 미디어 항목은 사진, 동영상 또는 기타 미디어를 설명합니다. 가 mediaItem에는 항목으로 연결되는 직접 링크와 Google 포토 및 기타 관련 메타데이터가 포함됩니다. 자세한 내용은 미디어 항목에 액세스 mediaItems

앱에서 만든 앨범 나열

albums.list를 사용하여 앱에서 만든 앨범을 나열할 수 있습니다.

REST

샘플 요청은 다음과 같습니다.

GET https://photoslibrary.googleapis.com/v1/albums

요청은 다음 결과를 반환합니다.

{
  "albums": [
    {
      "id": "album-id",
      "title": "album-title",
      "productUrl": "album-product-url",
      "coverPhotoBaseUrl": "album-cover-base-url_do-not-use-directly",
      "coverPhotoMediaItemId": "album-cover-media-item-id",
      "isWriteable": "whether-you-can-write-to-this-album",
      "mediaItemsCount": "number-of-media-items-in-album"
    },
    ...
  ],
  "nextPageToken": "token-for-pagination"
}

반환된 각 앨범에는 앨범 콘텐츠 목록에 표시된 대로 앨범의 콘텐츠를 검색하는 데 사용할 수 있는 ID가 있습니다. 또한 에는 제목과 포함된 미디어 항목의 개수가 포함됩니다.

productUrl는 Google 포토에서 확인할 수 있습니다

coverPhotoMediaItemId에는 미디어 항목이 포함됩니다. 표지를 나타내는 ID 이 앨범의 사진입니다. 이 표지 이미지에 액세스하려면 coverPhotoBaseUrl을(를) 사용하세요. coverPhotoBaseUrl를 지정하지 않고 직접 사용해서는 안 됩니다. 추가 매개변수.

응답에는 nextPageToken도 포함됩니다. 자세한 내용은 페이지로 나누기

빈 앨범의 응답은 mediaItemsCountcoverPhotoMediaItemId가 기본적으로 0으로 설정되고 REST 응답에서 생략된다는 점에서 다릅니다. 또한 coverPhotoBaseUrl는 기본 자리표시자를 가리킵니다. 이미지

앱에서 만든 라이브러리 콘텐츠 나열

사용자의 Google 포토 라이브러리에 있는 모든 미디어 항목을 나열할 수 있습니다. 확인할 수 있습니다. 보관처리된 항목 및 삭제된 항목은 제외됩니다. 나 콘텐츠, 날짜, 기타 속성에 따라 미디어 항목을 나열하거나 필터 적용에 대해 자세히 알아보세요.

미디어 항목을 나열하려면 다음을 호출합니다. mediaItems.list

REST

샘플 요청은 다음과 같습니다.

GET https://photoslibrary.googleapis.com/v1/mediaItems
Content-type: application/json
Authorization: Bearer oauth2-token
{
  "pageSize": "100",
}

GET 요청은 다음 응답을 반환합니다.

{
  "mediaItems": [
    ...
  ],
  "nextPageToken": "token-for-pagination"
}

응답에는 미디어 항목 목록이 포함되며, 최신 순서의 순서로 정렬됩니다. 자세한 내용은 mediaItems를 참고하세요. 또한 에 nextPageToken가 포함되어 있습니다. 자세한 내용은 다음 도움말을 참고하세요. 페이지로 나누기.

앨범 콘텐츠 목록

앨범의 모든 미디어 항목을 나열하려면 검색 요청에 albumId 필드를 추가합니다. albumId에 대한 자세한 내용은 목록을 참조하세요. 앨범을 선택합니다. albumId가 유효하지 않은 경우 Bad Request 오류는 다음과 같습니다. 반환합니다. ID는 유효하지만 인증된 앨범이 없는 경우 Not Found 오류가 반환됩니다. 오류에 관한 자세한 내용은 성능 도움말권장사항.

REST

샘플 요청은 다음과 같습니다.

POST https://photoslibrary.googleapis.com/v1/mediaItems:search
Content-type: application/json
Authorization: Bearer oauth2-token
{
  "pageSize": "100",
  "albumId": "album-id"
}

POST 요청은 다음 응답을 반환합니다.

{
  "mediaItems": [
    ...
  ],
  "nextPageToken": "token-for-pagination"
}

응답에는 nextPageToken 및 미디어 항목 목록이 포함됩니다. 좋아요 취소 나열하는 경우 미디어 항목은 앨범 자세한 내용은 mediaItems페이지로 나누기: 사용자는 Google 포토 인터페이스에서 주문을 수정할 수 있습니다.

albumId가 설정된 경우 앨범 콘텐츠를 나열할 때 필터를 적용할 수 없습니다. 그렇게 하면 Bad Request 오류가 발생합니다.

REST용 페이지로 나누기

성능을 개선하기 위해 많은 수의 결과 (예: list 메서드)를 사용하여 응답을 페이지로 나눌 수 있습니다. 각 인스턴스의 최대 결과 수입니다. 페이지는 pageSize 매개변수로 지정됩니다.

mediaItems.searchmediaItems.list 호출의 경우 기본 페이지 크기는 다음과 같습니다. 항목 25개 이 페이지 크기는 응답 크기와 충전율 간에 균형을 이루므로 권장됩니다. 미디어 항목 검색 및 목록 요청의 최대 페이지 크기는 100개 항목입니다.

앨범을 나열할 때 기본 및 권장 페이지 크기는 20개 앨범이며 최대 50개의 앨범이 있습니다.

사용 가능한 결과의 수가 페이지 크기보다 크면 응답은 nextPageToken가 포함되어 있습니다. 이는 애플리케이션에 더 많은 결과를 가져올 수 있습니다.

다음 예와 같이 매개변수 pageToken의 후속 요청에 nextPageToken를 추가해야 합니다. pageToken을 함께 지정 이 쿼리 매개변수로 전달합니다.

요청 #1

{
  "pageSize": "5",
  "filters": { … }
}

응답 #1

{
  "mediaItem": [ … ],
  "nextPageToken": "next-page-token"
}

요청 #2

{
  "pageSize": "5",
  "filters": { … },
  "pageToken": "page-token"
}

응답 #2

{
  "mediaItem": [ … ],
  "nextPageToken": "next-page-token"
}

nextPageToken 객체가 더 이상 없을 때까지 이 패턴을 계속합니다.

nextPageToken는 동일한 요청에만 유효합니다. 매개변수 중 하나가 이전에 사용된 nextPageToken를 동일한 객체에 사용해서는 안 됩니다. 합니다.