در 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: 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
آلبوم آلبومی را که می خواهید واکشی کنید اضافه کنید.
تماس یک آلبوم را برمی گرداند.
استراحت
در اینجا یک عنوان برای درخواست 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
استفاده کنید.
عنوان آلبوم نمی تواند بیش از 500 کاراکتر باشد. موارد رسانه جلد باید متعلق به مالک آلبوم باشد و متعلق به آلبومی باشد که برای آن کاور خواهد بود.
استراحت
در اینجا یک هدر درخواست 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
، موارد رسانه ایجاد شده توسط برنامه خود را به آلبوم های ایجاد شده توسط برنامه خود اضافه کنید. آیتم های رسانه ای به ترتیبی که در این فراخوان داده شده به انتهای آلبوم اضافه می شوند.
اگر یک مورد رسانه یا آلبوم نامعتبر مشخص شود، کل درخواست ناموفق خواهد بود. موفقیت جزئی پشتیبانی نمی شود.
هر آلبوم می تواند حداکثر 20000 آیتم رسانه ای داشته باشد. درخواست برای افزودن موارد بیشتر که از این حد فراتر میرود با شکست مواجه میشوند.
برای افزودن آیتم های رسانه ای به یک آلبوم، با شناسه آیتم های رسانه و آلبوم با albums.batchAddMediaItems
تماس بگیرید.
استراحت
در اینجا یک هدر برای درخواست 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
تماس بگیرید.
استراحت
در اینجا یک هدر برای درخواست 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 را برمی گرداند.
جاوا
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 }