في "صور Google"، يمكنك تنظيم الصور وعناصر الوسائط الأخرى باستخدام الألبومات. يمكن ربط ملف وسائط بألبوم واحد أو أكثر. لبدء ربط عناصر الوسائط بألبوم، عليك إنشاء الألبوم أولاً.
نطاقات التفويض المطلوبة
يتطلب إنشاء الألبومات نطاق 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
الإذن لإجراء التغيير.
يجب ألا يزيد طول عناوين الألبومات عن 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 Success.
إزالة عناصر وسائط من ألبوم
يمكنك إزالة ملفات الوسائط التي أنشأها تطبيقك من الألبومات التي أنشأها التطبيق من خلال النقر على
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 Success.
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 }