จัดการอัลบั้ม

ใน Google Photos คุณสามารถจัดระเบียบรูปภาพและรายการสื่ออื่นๆ โดยใช้อัลบั้ม สามารถเชื่อมโยงรายการสื่อกับอัลบั้มได้อย่างน้อย 1 รายการ หากต้องการเริ่มเชื่อมโยงรายการสื่อกับอัลบั้ม คุณต้องสร้างอัลบั้มก่อน

ขอบเขตการให้สิทธิ์ที่จําเป็น

การสร้างอัลบั้มต้องใช้ขอบเขต photoslibrary.appendonly

การเปลี่ยนชื่อหรือรูปภาพปกของอัลบั้มหลังจากสร้างต้องใช้ขอบเขต photoslibrary.edit.appcreateddata

ดูข้อมูลเพิ่มเติมเกี่ยวกับขอบเขตได้ที่ขอบเขตการให้สิทธิ์

สร้างอัลบั้มใหม่

หากต้องการสร้างอัลบั้ม ให้เรียกใช้ albums.create และใส่ title โปรดทราบว่า title มีความยาวได้ไม่เกิน 500 อักขระ

การเรียกใช้จะแสดงผลอัลบั้ม แอปของคุณสามารถจัดเก็บรหัสอัลบั้มจากข้อมูลนี้และใช้เพื่ออัปโหลดรายการสื่อไปยังอัลบั้มที่ต้องการ

REST

ต่อไปนี้เป็นส่วนหัวสำหรับคำขอ POST:

POST https://photoslibrary.googleapis.com/v1/albums
Content-type: application/json
Authorization: Bearer oauth2-token

เนื้อหาคําขอมีลักษณะดังนี้

{
  "album": {
    "title": "new-album-title"
  }
}

หากดำเนินการสำเร็จ การตอบกลับจะแสดงอัลบั้มดังนี้

{
  "productUrl": "album-product-url",
  "id": "album-id",
  "title": "album-title",
  "isWriteable": "whether-you-can-write-to-this-album"
}

เรียกข้อมูลรายละเอียดอัลบั้ม

หากต้องการเรียกดูรายละเอียดของอัลบั้มที่มีอยู่ซึ่งแอปของคุณสร้างขึ้น โปรดโทรไปที่ albums.get และระบุ albumId ของอัลบั้มที่คุณต้องการดึงข้อมูล

การเรียกใช้จะแสดงผลอัลบั้ม

REST

ส่วนหัวของคำขอ GET มีดังนี้

GET https://photoslibrary.googleapis.com/v1/albums/{albumId}
Content-type: application/json
Authorization: Bearer oauth2-token

เนื้อหาคําขอมีลักษณะดังนี้

{
  "albumId": album-id
}

หากสำเร็จ การตอบกลับจะแสดงอัลบั้มดังนี้

{
  "id": album-id,
  "title": album-title,
  "productUrl": album-product-url,
  "mediaItemsCount": media-items-count,
  "coverPhotoBaseUrl": cover-photo-base-url,
  "coverPhotoMediaItemId": cover-photo-media-item-id
}

เปลี่ยนชื่ออัลบั้มและรูปภาพปก

หากต้องการเปลี่ยนชื่อหรือรูปภาพปกของอัลบั้ม ให้สร้าง album update call ที่มีตัวระบุของอัลบั้ม และระบุชื่อใหม่หรือรหัสรายการสื่อของรูปภาพปกใหม่ในคำขอ คุณต้องใช้ขอบเขต photoslibrary.edit.appcreateddata authorization เพื่อทําการเปลี่ยนแปลง

ชื่ออัลบั้มต้องมีความยาวไม่เกิน 500 อักขระ รายการสื่อหน้าปกต้องเป็นของเจ้าของอัลบั้มและเป็นส่วนหนึ่งของอัลบั้มที่จะใช้เป็นเพลงคัฟเวอร์

REST

ส่วนหัวคำขอ PATCH สำหรับอัปเดต title และ coverPhotomediaItemId ของอัลบั้มมีดังนี้

PATCH https://photoslibrary.googleapis.com/v1/albums/album-id?updateMask=title&updateMask=coverPhotoMediaItemId

คำขอนี้จะระบุว่าพร็อพเพอร์ตี้ใดกำลังอัปเดตอยู่โดยใส่มาสก์ของช่อง ซึ่งระบุโดยพารามิเตอร์ updateMask ใน URL คุณต้องส่งพารามิเตอร์ updateMask สำหรับที่พักแต่ละแห่งที่จะอัปเดต

สำหรับที่พักแต่ละแห่งที่อัปเดต ให้ใส่รายละเอียดของที่พักนั้นในเนื้อหาของคำขอ

{
  "title": "new-album-title",
  "coverPhotoMediaItemId": "new-cover-media-item-id"
}

หากดำเนินการสำเร็จ การตอบกลับจะแสดงรายละเอียด album ที่อัปเดตแล้ว ดังนี้

{
  "id": "album-id",
  "title": "new-album-title",
  "productUrl": "album-product-url",
  "isWriteable": "true-if-user-can-write-to-this-album",
  "mediaItemsCount": "number-of-media-items-in-album",
  "coverPhotoBaseUrl": "cover-photo-base-url_use-only-with-parameters",
  "coverPhotoMediaItemId": "new-cover-media-item-id"
}

เพิ่มรายการสื่อลงในอัลบั้ม

คุณสามารถเพิ่มรายการสื่อที่แอปของคุณสร้างขึ้นลงในอัลบั้มที่แอปของคุณสร้างขึ้นได้โดยการเรียกใช้ albums.batchAddMediaItems ระบบจะเพิ่มรายการสื่อไว้ท้ายอัลบั้มตามลำดับที่ระบุในการเรียกใช้นี้

คำขอทั้งหมดจะดำเนินการไม่สำเร็จหากระบุรายการสื่อหรืออัลบั้มที่ไม่ถูกต้อง ระบบไม่รองรับความสำเร็จบางส่วน

แต่ละอัลบั้มมีรายการสื่อได้สูงสุด 20,000 รายการ คำขอเพิ่มรายการที่จะเกินขีดจำกัดนี้จะดำเนินการไม่สำเร็จ

หากต้องการเพิ่มรายการสื่อลงในอัลบั้ม ให้เรียก albums.batchAddMediaItems ที่มีตัวระบุของรายการสื่อและอัลบั้ม

REST

ต่อไปนี้เป็นส่วนหัวสำหรับคำขอ POST:

POST https://photoslibrary.googleapis.com/v1/albums/album-id:batchAddMediaItems
Content-type: application/json
Authorization: Bearer oauth2-token

เนื้อหาของคำขอมีลักษณะดังนี้

{
   "mediaItemIds": [
     "media-item-id",
     "another-media-item-id",
     ...
   ]
}

หากดำเนินการสำเร็จ ระบบจะแสดงการตอบกลับ JSON ว่างเปล่าและสถานะ HTTP สำเร็จ

นำรายการสื่อออกจากอัลบั้ม

คุณนำรายการสื่อที่แอปสร้างขึ้นออกจากอัลบั้มที่แอปสร้างได้โดยเรียกใช้ albums.batchRemoveMediaItems

คำขอทั้งหมดจะดำเนินการไม่สำเร็จหากระบุรายการสื่อที่ไม่ถูกต้อง ระบบไม่รองรับ "บางส่วนสำเร็จ"

หากต้องการนำรายการสื่อออกจากอัลบั้ม ให้เรียกใช้ albums.batchRemoveMediaItems พร้อมตัวระบุของรายการสื่อและอัลบั้ม

REST

ต่อไปนี้เป็นส่วนหัวสำหรับคำขอ POST:

POST https://photoslibrary.googleapis.com/v1/albums/album-id:batchRemoveMediaItems
Content-type: application/json
Authorization: Bearer oauth2-token

เนื้อหาของคำขอมีลักษณะดังนี้

{
   "mediaItemIds": [
     "media-item-id",
     "another-media-item-id",
     ...
   ]
}

หากดำเนินการสำเร็จ ระบบจะแสดงการตอบกลับ JSON ว่างเปล่าและสถานะ HTTP สำเร็จ

Java

try {
  // List of media item IDs to remove
  List<String> mediaItemIds = Arrays
      .asList("MEDIA_ITEM_ID", "ANOTHER_MEDIA_ITEM_ID");

  // ID of the album to remove media items from
  String albumId = "ALBUM_ID";

  // Remove all given media items from the album
  photosLibraryClient.batchRemoveMediaItemsFromAlbum(albumId, mediaItemIds);

} catch (ApiException e) {
  // An exception is thrown if the media items could not be removed
}

PHP

try {

    // List of media item IDs to remove
    $mediaItemIds = ["MEDIA_ITEM_ID", "ANOTHER_MEDIA_ITEM_ID"];

    // ID of the album to remove media items from
    $albumId = "ALBUM_ID";

    // Remove all given media items from the album
    $response = $photosLibraryClient->batchRemoveMediaItemsFromAlbum($albumId, $mediaItemIds);

} catch (\Google\ApiCore\ApiException $e) {
    // Handle Error
}