private ExportResult<PhotosContainerResource> requestAlbums(
      TokensAndUrlAuthData authData, PaginationData paginationData) throws IOException {
    ImmutableList.Builder<PhotoAlbum> albumBuilder = ImmutableList.builder();
    List<IdOnlyContainerResource> albumIds = new ArrayList<>();

    int page = paginationData == null ? 0 : ((IntPaginationToken) paginationData).getStart();

    String url = format(ALBUMS_URL_TEMPLATE, page);

    List<Map<String, Object>> items = requestData(authData, url);

    // Request result doesn't indicate if it's the last page
    boolean hasMore = (items != null && items.size() != 0);

    for (Map<String, Object> item : items) {
      albumBuilder.add(
          new PhotoAlbum(
              (String) item.get("id"),
              (String) item.get("title"),
              (String) item.get("description")));
      // Save album id for recalling export to get all the photos in albums
      albumIds.add(new IdOnlyContainerResource((String) item.get("id")));
    }

    if (page == 0) {
      // For checking non-album photos. Their export should be performed after all the others
      // Album will be created later
      albumIds.add(new IdOnlyContainerResource(DEFAULT_ALBUM_ID));
    }

    PaginationData newPage = null;
    if (hasMore) {
      newPage = new IntPaginationToken(page + 1);
      int start = ((IntPaginationToken) newPage).getStart();
      monitor.info(() -> format("albums size: %s, newPage: %s", items.size(), start));
    }

    PhotosContainerResource photosContainerResource =
        new PhotosContainerResource(albumBuilder.build(), null);

    ContinuationData continuationData = new ContinuationData(newPage);
    albumIds.forEach(continuationData::addContainerResource);

    ExportResult.ResultType resultType = ExportResult.ResultType.CONTINUE;
    if (newPage == null) {
      resultType = ExportResult.ResultType.END;
    }
    return new ExportResult<>(resultType, photosContainerResource, continuationData);
  }
Exports albums.

@param authData authentication information
@param paginationData pagination information to use for subsequent calls
extensions/data-transfer/portability-data-transfer-imgur/src/main/java/org/datatransferproject/datatransfer/imgur/photos/ImgurPhotosExporter.java