অ্যাপ তৈরি মিডিয়া আইটেম এবং অ্যালবাম তালিকা

প্রয়োজনীয় অনুমোদনের সুযোগ

অ্যাপ-তৈরি কন্টেন্ট তালিকাভুক্ত করার জন্য photoslibrary.readonly.appcreateddata স্কোপের প্রয়োজন। স্কোপ সম্পর্কে আরও তথ্যের জন্য, অনুমোদনের সুযোগগুলি দেখুন।

ওভারভিউ

লাইব্রেরি API আপনাকে আপনার অ্যাপ্লিকেশন তৈরি করা মিডিয়া আইটেমগুলিকে তালিকাভুক্ত করতে এবং অ্যাক্সেস করতে দেয়৷

মিডিয়া আইটেম তালিকাভুক্ত করার কিছু মূল বৈশিষ্ট্য নিম্নলিখিত অন্তর্ভুক্ত:

  • নির্দিষ্ট অ্যাপ-তৈরি অ্যালবাম বা সম্পূর্ণ অ্যাপ-তৈরি লাইব্রেরি থেকে মিডিয়া আইটেম তালিকাভুক্ত করুন
  • আপনার ফলাফল সংকুচিত করার জন্য তালিকা করার সময় ফিল্টার (তারিখ, বিষয়বস্তু বিভাগ, মিডিয়া প্রকার) প্রয়োগ করুন

  • সরাসরি লিঙ্ক এবং মেটাডেটার মতো প্রয়োজনীয় বিবরণ সহ mediaItem বস্তু পুনরুদ্ধার করুন।

লাইব্রেরি এবং অ্যালবামের বিষয়বস্তু তালিকাভুক্ত করা মিডিয়া আইটেমগুলির একটি তালিকা প্রদান করে। একটি অ্যালবামের অংশ সমৃদ্ধকরণ অন্তর্ভুক্ত করা হয় না। মিডিয়া আইটেম একটি ফটো, ভিডিও, বা অন্যান্য মিডিয়া বর্ণনা করে। একটি mediaItem আইটেমের সরাসরি লিঙ্ক, Google ফটোতে আইটেমের একটি লিঙ্ক এবং অন্যান্য প্রাসঙ্গিক মেটাডেটা অন্তর্ভুক্ত করে। আরও তথ্যের জন্য, মিডিয়া আইটেম এবং mediaItems অ্যাক্সেস করুন দেখুন।

অ্যাপ তৈরি করা অ্যালবামের তালিকা করুন

আপনি albums.list ব্যবহার করে আপনার অ্যাপ দ্বারা তৈরি করা অ্যালবামের তালিকা করতে পারেন।

বিশ্রাম

এখানে একটি নমুনা অনুরোধ:

GET https://photoslibrary.googleapis.com/v1/albums

অনুরোধ নিম্নলিখিত ফলাফল প্রদান করে:

{
  "albums": [
    {
      "id": "album-id",
      "title": "album-title",
      "productUrl": "album-product-url",
      "coverPhotoBaseUrl": "album-cover-base-url_do-not-use-directly",
      "coverPhotoMediaItemId": "album-cover-media-item-id",
      "isWriteable": "whether-you-can-write-to-this-album",
      "mediaItemsCount": "number-of-media-items-in-album"
    },
    ...
  ],
  "nextPageToken": "token-for-pagination"
}

প্রতিটি ফিরে আসা অ্যালবামের একটি আইডি থাকে যা অ্যালবামের বিষয়বস্তু পুনরুদ্ধার করতে ব্যবহার করা যেতে পারে যেমন অ্যালবামের বিষয়বস্তু তালিকায় দেখানো হয়েছে। এটি শিরোনাম এবং এটিতে থাকা মিডিয়া আইটেমগুলির সংখ্যাও অন্তর্ভুক্ত করে।

productUrl Google ফটোতে অ্যালবামের দিকে নির্দেশ করে যা ব্যবহারকারীর দ্বারা খোলা হতে পারে।

coverPhotoMediaItemId মিডিয়া আইটেম আইডি রয়েছে যা এই অ্যালবামের কভার ফটোকে উপস্থাপন করে৷ এই কভার চিত্রটি অ্যাক্সেস করতে, coverPhotoBaseUrl ব্যবহার করুন। অতিরিক্ত প্যারামিটার উল্লেখ না করে সরাসরি coverPhotoBaseUrl ব্যবহার করা উচিত নয়।

প্রতিক্রিয়াটিতে একটি nextPageToken ও রয়েছে। আরও তথ্যের জন্য, পেজিনেশন দেখুন।

খালি অ্যালবামের প্রতিক্রিয়া এতে পরিবর্তিত হয়, mediaItemsCount এবং coverPhotoMediaItemId ডিফল্টরূপে 0 এ সেট করা থাকে এবং REST প্রতিক্রিয়া থেকে বাদ দেওয়া হয়। এছাড়াও লক্ষ্য করুন যে coverPhotoBaseUrl একটি ডিফল্ট স্থানধারক চিত্রকে নির্দেশ করে।

অ্যাপ তৈরি করা লাইব্রেরি বিষয়বস্তুর তালিকা করুন

আপনি ব্যবহারকারীর Google ফটো লাইব্রেরি থেকে সমস্ত মিডিয়া আইটেম তালিকাভুক্ত করতে পারেন যা আপনার অ্যাপ দ্বারা তৈরি করা হয়েছে.. এটি সংরক্ষণাগারভুক্ত এবং মুছে ফেলা আইটেমগুলিকে বাদ দেয়৷ আপনি ফিল্টার প্রয়োগ করে মিডিয়া আইটেমগুলি তাদের বিষয়বস্তু, তারিখ এবং অন্যান্য বৈশিষ্ট্যের উপর ভিত্তি করে তালিকাভুক্ত করতে পারেন।

একটি মিডিয়া আইটেম তালিকা করতে, mediaItems.list কল করুন।

বিশ্রাম

এখানে একটি নমুনা অনুরোধ:

GET https://photoslibrary.googleapis.com/v1/mediaItems
Content-type: application/json
Authorization: Bearer oauth2-token
{
  "pageSize": "100",
}

GET অনুরোধ নিম্নলিখিত প্রতিক্রিয়া প্রদান করে:

{
  "mediaItems": [
    ...
  ],
  "nextPageToken": "token-for-pagination"
}

প্রতিক্রিয়াটিতে মিডিয়া আইটেমগুলির একটি তালিকা রয়েছে, যা সর্বাধিক থেকে সাম্প্রতিকতম পর্যন্ত অর্ডার করা হয়েছে৷ আরও তথ্যের জন্য, mediaItems দেখুন। এটিতে একটি nextPageToken রয়েছে, যা আরও বিস্তারিতভাবে পেজিনেশনে বর্ণিত হয়েছে।

অ্যালবাম বিষয়বস্তু তালিকা

একটি অ্যালবামে সমস্ত মিডিয়া আইটেম তালিকাভুক্ত করতে, আপনার অনুসন্ধান অনুরোধে albumId ক্ষেত্র যোগ করুন। albumId সম্পর্কে আরও তথ্যের জন্য, অ্যালবামের তালিকা দেখুন। albumId অবৈধ হলে, একটি Bad Request ত্রুটি ফিরে আসে। যদি আইডি বৈধ হয়, কিন্তু অ্যালবামটি প্রমাণীকৃত ব্যবহারকারীর জন্য বিদ্যমান না থাকে, একটি Not Found ত্রুটি ফেরত দেওয়া হয়। ত্রুটি পরিচালনা সংক্রান্ত আরও বিশদ বিবরণের জন্য, কর্মক্ষমতা টিপস এবং সর্বোত্তম অনুশীলন দেখুন।

বিশ্রাম

এখানে একটি নমুনা অনুরোধ:

POST https://photoslibrary.googleapis.com/v1/mediaItems:search
Content-type: application/json
Authorization: Bearer oauth2-token
{
  "pageSize": "100",
  "albumId": "album-id"
}

POST অনুরোধ নিম্নলিখিত প্রতিক্রিয়া প্রদান করে:

{
  "mediaItems": [
    ...
  ],
  "nextPageToken": "token-for-pagination"
}

প্রতিক্রিয়াটিতে একটি nextPageToken এবং মিডিয়া আইটেমগুলির তালিকা রয়েছে। লাইব্রেরির বিষয়বস্তু তালিকাভুক্ত করার সময় ভিন্ন, মিডিয়া আইটেমগুলি অ্যালবামে তাদের ক্রম অনুসারে ফেরত দেওয়া হয়। আরও বিস্তারিত জানার জন্য, mediaItems এবং পৃষ্ঠা সংখ্যা দেখুন। ব্যবহারকারী Google Photos ইন্টারফেসে অর্ডার সম্পাদনা করতে পারেন।

albumId সেট করা থাকলে, অ্যালবামের বিষয়বস্তু তালিকাভুক্ত করার সময় আপনি ফিল্টার প্রয়োগ করতে পারবেন না। এটি করার ফলে একটি Bad Request ত্রুটি দেখা দেয়।

REST এর জন্য পৃষ্ঠা সংখ্যা

কর্মক্ষমতা উন্নত করার জন্য, যে পদ্ধতিগুলি প্রচুর সংখ্যক ফলাফল প্রদান করে (যেমন তালিকা পদ্ধতি) সেগুলি প্রতিক্রিয়ার পৃষ্ঠা নম্বর দিতে পারে। প্রতিটি পৃষ্ঠায় সর্বাধিক সংখ্যক ফলাফল pageSize প্যারামিটার দ্বারা দেওয়া হয়।

mediaItems.search এবং mediaItems.list এ কল করার জন্য, ডিফল্ট পৃষ্ঠার আকার হল 25টি আইটেম। আমরা এই পৃষ্ঠার আকারের সুপারিশ করছি কারণ এটি প্রতিক্রিয়ার আকার এবং পূরণের হারের মধ্যে ভারসাম্য বজায় রাখে। মিডিয়া আইটেম অনুসন্ধান এবং তালিকা অনুরোধের জন্য সর্বাধিক পৃষ্ঠার আকার হল 100টি আইটেম।

অ্যালবাম তালিকাভুক্ত করার সময় ডিফল্ট এবং প্রস্তাবিত পৃষ্ঠার আকার 20টি অ্যালবাম, সর্বাধিক 50টি অ্যালবাম।

যখন উপলভ্য ফলাফলের সংখ্যা পৃষ্ঠার আকারের চেয়ে বেশি হয়, তখন প্রতিক্রিয়া একটি nextPageToken অন্তর্ভুক্ত করে, যা আপনার অ্যাপ্লিকেশনকে নির্দেশ করে যে সার্ভার থেকে আরও ফলাফল আনা হবে।

উদাহরণ

নিম্নলিখিত উদাহরণে দেখানো হয়েছে, প্যারামিটার pageToken এ আপনাকে পরবর্তী অনুরোধের সাথে nextPageToken যোগ করতে হবে। অপারেশনের জন্য প্রয়োজনীয় অন্যান্য প্যারামিটারের সাথে pageToken একত্রে নির্দিষ্ট করুন, হয় অনুরোধের মূল অংশে বা একটি ক্যোয়ারী প্যারামিটার হিসাবে।

অনুরোধ #1

{
  "pageSize": "5",
  "filters": { … }
}

উত্তর # 1

{
  "mediaItem": [ … ],
  "nextPageToken": "next-page-token"
}

অনুরোধ #2

{
  "pageSize": "5",
  "filters": { … },
  "pageToken": "page-token"
}

উত্তর # 2

{
  "mediaItem": [ … ],
  "nextPageToken": "next-page-token"
}

আর কোন nextPageToken অবজেক্ট না হওয়া পর্যন্ত এই প্যাটার্নটি চালিয়ে যান।

nextPageToken শুধুমাত্র একই অনুরোধের জন্য বৈধ। যদি কোনো প্যারামিটার পরিবর্তন করা হয়, পূর্বে ব্যবহৃত nextPageToken একই অনুরোধে ব্যবহার করা উচিত নয়।