एल्बम मैनेज करना

Google Photos में, एल्बम का इस्तेमाल करके फ़ोटो और अन्य मीडिया आइटम व्यवस्थित किए जा सकते हैं. मीडिया आइटम को एक या उससे ज़्यादा एल्बम से जोड़ा जा सकता है. किसी एल्बम में मीडिया आइटम जोड़ने के लिए, आपको पहले एल्बम बनाना होगा.

अनुमति के लिए ज़रूरी स्कोप

एल्बम बनाने के लिए, आपके पास 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 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 अनुमति स्कोप का इस्तेमाल करना होगा.

एल्बम के टाइटल में 500 से ज़्यादा वर्ण नहीं होने चाहिए. कवर के तौर पर इस्तेमाल किए जाने वाले मीडिया आइटम का मालिकाना हक, एल्बम के मालिक के पास होना चाहिए. साथ ही, ये आइटम उसी एल्बम से जुड़े होने चाहिए जिसका कवर बनाया जा रहा है.

REST

यहां किसी एल्बम के title और coverPhotomediaItemId को अपडेट करने के लिए, PATCH अनुरोध हेडर दिया गया है.

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

इस अनुरोध से तय होता है कि किन प्रॉपर्टी को अपडेट किया जा रहा है. यह एक फ़ील्ड मास्क शामिल करके किया जाता है. इस मास्क को यूआरएल में updateMask पैरामीटर के ज़रिए दिखाया जाता है. अपडेट की जा रही हर एल्बम प्रॉपर्टी के लिए, 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 रिस्पॉन्स और एचटीटीपी की सफलता की स्थिति दिखाता है.

किसी एल्बम से मीडिया आइटम हटाना

आपके ऐप्लिकेशन से बनाए गए मीडिया आइटम को, आपके ऐप्लिकेशन से बनाए गए एल्बम से हटाया जा सकता है. इसके लिए, 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 रिस्पॉन्स और एचटीटीपी के साथ रिस्पॉन्स की स्थिति दिखती है.

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
}