Google Photos में, एल्बम का इस्तेमाल करके फ़ोटो और अन्य मीडिया आइटम व्यवस्थित किए जा सकते हैं. मीडिया आइटम को एक या उससे ज़्यादा एल्बम से जोड़ा जा सकता है. किसी एल्बम में मीडिया आइटम जोड़ने के लिए, आपको पहले एल्बम बनाना होगा.
अनुमति के लिए ज़रूरी स्कोप
एल्बम बनाने के लिए, आपके पास photoslibrary.appendonly
स्कोप होना चाहिए.
एल्बम बनाने के बाद, उनके टाइटल या कवर फ़ोटो को बदलने के लिए, आपके पास photoslibrary.edit.appcreateddata
स्कोप होना चाहिए.
दायरों के बारे में ज़्यादा जानकारी के लिए, अनुमति का दायरा देखें.
नया एल्बम बनाना
एल्बम बनाने के लिए, albums.create
को कॉल करें और title
को शामिल करें. ध्यान दें कि title
में सिर्फ़ 500 वर्ण इस्तेमाल किए जा सकते हैं.
कॉल से एल्बम मिलता है. आपका ऐप्लिकेशन, इस जानकारी से एल्बम आईडी सेव कर सकता है. साथ ही, इसका इस्तेमाल किसी खास एल्बम में मीडिया आइटम अपलोड करने के लिए कर सकता है.
यहां किसी POST अनुरोध का हेडर दिया गया है:
POST https://photoslibrary.googleapis.com/v1/albums Content-type: application/json Authorization: Beareroauth2-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
शामिल करें जिसकी जानकारी आपको चाहिए.
कॉल से एल्बम मिलता है.
यहां जीईटी अनुरोध का हेडर दिया गया है:
GET https://photoslibrary.googleapis.com/v1/albums/{albumId} Content-type: application/json Authorization: Beareroauth2-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 से ज़्यादा वर्ण नहीं होने चाहिए. कवर के तौर पर इस्तेमाल किए जाने वाले मीडिया आइटम का मालिकाना हक, एल्बम के मालिक के पास होना चाहिए. साथ ही, ये आइटम उसी एल्बम से जुड़े होने चाहिए जिसका कवर बनाया जा रहा है.
यहां किसी एल्बम के 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
को कॉल करें.
यहां किसी POST अनुरोध का हेडर दिया गया है:
POST https://photoslibrary.googleapis.com/v1/albums/album-id :batchAddMediaItems Content-type: application/json Authorization: Beareroauth2-token
अनुरोध का मुख्य हिस्सा ऐसा दिखता है:
{ "mediaItemIds": [ "media-item-id ", "another-media-item-id ", ... ] }
कामयाब होने पर, रिस्पॉन्स, खाली JSON रिस्पॉन्स और एचटीटीपी की सफलता की स्थिति दिखाता है.
किसी एल्बम से मीडिया आइटम हटाना
आपके ऐप्लिकेशन से बनाए गए मीडिया आइटम को, आपके ऐप्लिकेशन से बनाए गए एल्बम से हटाया जा सकता है. इसके लिए, albums.batchRemoveMediaItems
को कॉल करें.
अगर अमान्य मीडिया आइटम डाले जाते हैं, तो पूरा अनुरोध अस्वीकार कर दिया जाएगा. कुछ हद तक काम करने की सुविधा काम नहीं करती.
किसी एल्बम से मीडिया आइटम हटाने के लिए, albums.batchRemoveMediaItems
को मीडिया आइटम और एल्बम के आइडेंटिफ़ायर के साथ कॉल करें.
यहां किसी POST अनुरोध का हेडर दिया गया है:
POST https://photoslibrary.googleapis.com/v1/albums/album-id :batchRemoveMediaItems Content-type: application/json Authorization: Beareroauth2-token
अनुरोध का मुख्य हिस्सा ऐसा दिखता है:
{ "mediaItemIds": [ "media-item-id ", "another-media-item-id ", ... ] }
अगर अनुरोध पूरा हो जाता है, तो जवाब के तौर पर खाली JSON रिस्पॉन्स और एचटीटीपी के साथ रिस्पॉन्स की स्थिति दिखती है.
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 }
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 }