API ব্যবহার করে

বিষয়বস্তু

  1. ভূমিকা
    1. প্রমাণীকরণ এবং অনুমোদন
    2. গুগল বুকস আইডি
    3. ব্যবহারকারীর অবস্থান নির্ধারণ করা হচ্ছে
  2. ভলিউম নিয়ে কাজ করা
    1. একটি অনুসন্ধান সঞ্চালন
    2. একটি নির্দিষ্ট ভলিউম পুনরুদ্ধার করা হচ্ছে
  3. বইয়ের তাক নিয়ে কাজ করা
    1. ব্যবহারকারীর সর্বজনীন বুকশেলফের একটি তালিকা পুনরুদ্ধার করা হচ্ছে
    2. একটি নির্দিষ্ট পাবলিক বুকশেলফ পুনরুদ্ধার করা হচ্ছে
    3. একটি পাবলিক বুকশেল্ফে ভলিউমের একটি তালিকা পুনরুদ্ধার করা হচ্ছে
  4. "আমার লাইব্রেরিতে" বুকশেলফের সাথে কাজ করা
    1. আমার বইয়ের তাকগুলির একটি তালিকা পুনরুদ্ধার করা হচ্ছে
    2. আমার বুকশেল্ফে ভলিউমের একটি তালিকা পুনরুদ্ধার করা হচ্ছে
    3. আমার বুকশেল্ফে একটি ভলিউম যোগ করা হচ্ছে
    4. আমার বুকশেলফ থেকে একটি ভলিউম সরানো হচ্ছে
    5. আমার বুকশেলফ থেকে সমস্ত ভলিউম সাফ করা হচ্ছে
  5. কোয়েরি প্যারামিটার রেফারেন্স
    1. স্ট্যান্ডার্ড ক্যোয়ারী প্যারামিটার
    2. API-নির্দিষ্ট ক্যোয়ারী প্যারামিটার

ভূমিকা

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

আপনি যদি Google Books ধারণার সাথে অপরিচিত হন তবে কোড শুরু করার আগে আপনার শুরু করা পড়া উচিত।

অনুরোধ অনুমোদন এবং আপনার আবেদন সনাক্ত

আপনার অ্যাপ্লিকেশানটি বুকস এপিআই-তে পাঠানো প্রতিটি অনুরোধের জন্য Google-এ আপনার অ্যাপ্লিকেশন সনাক্ত করতে হবে। আপনার অ্যাপ্লিকেশন শনাক্ত করার দুটি উপায় রয়েছে: একটি OAuth 2.0 টোকেন ব্যবহার করে (যা অনুরোধটি অনুমোদন করে) এবং/অথবা অ্যাপ্লিকেশনের API কী ব্যবহার করে। এই বিকল্পগুলির মধ্যে কোনটি ব্যবহার করবেন তা কীভাবে নির্ধারণ করবেন তা এখানে রয়েছে:

  • যদি অনুরোধটির অনুমোদনের প্রয়োজন হয় (যেমন একজন ব্যক্তির ব্যক্তিগত ডেটার জন্য অনুরোধ), তাহলে আবেদনটিকে অনুরোধের সাথে একটি OAuth 2.0 টোকেন প্রদান করতে হবে। অ্যাপ্লিকেশনটি API কীও সরবরাহ করতে পারে, তবে এটির প্রয়োজন নেই।
  • যদি অনুরোধটির অনুমোদনের প্রয়োজন না হয় (যেমন সর্বজনীন ডেটার জন্য অনুরোধ), তাহলে অ্যাপ্লিকেশনটিকে অবশ্যই API কী বা একটি OAuth 2.0 টোকেন, বা উভয়ই প্রদান করতে হবে - যেটি বিকল্প আপনার জন্য সবচেয়ে সুবিধাজনক।

অনুমোদন প্রোটোকল সম্পর্কে

অনুরোধ অনুমোদন করতে আপনার অ্যাপ্লিকেশন অবশ্যই OAuth 2.0 ব্যবহার করবে। অন্য কোন অনুমোদন প্রোটোকল সমর্থিত হয় না. যদি আপনার অ্যাপ্লিকেশন Google এর সাথে সাইন ইন ব্যবহার করে, তবে অনুমোদনের কিছু দিক আপনার জন্য পরিচালনা করা হয়।

OAuth 2.0 এর মাধ্যমে অনুরোধ অনুমোদন করা হচ্ছে

অ-পাবলিক ব্যবহারকারীর ডেটার জন্য Books API-এর অনুরোধগুলি অবশ্যই একজন প্রমাণীকৃত ব্যবহারকারীর দ্বারা অনুমোদিত হতে হবে।

OAuth 2.0-এর জন্য অনুমোদন প্রক্রিয়ার বিশদ বিবরণ বা "প্রবাহ" আপনি কোন ধরনের অ্যাপ্লিকেশন লিখছেন তার উপর নির্ভর করে কিছুটা পরিবর্তিত হয়। নিম্নলিখিত সাধারণ প্রক্রিয়া সব ধরনের আবেদনের ক্ষেত্রে প্রযোজ্য:

  1. আপনি যখন আপনার অ্যাপ্লিকেশন তৈরি করেন, আপনি Google API কনসোল ব্যবহার করে এটি নিবন্ধন করেন। Google তারপরে আপনার প্রয়োজন হবে এমন তথ্য প্রদান করে, যেমন একটি ক্লায়েন্ট আইডি এবং একটি ক্লায়েন্ট গোপন।
  2. Google API কনসোলে Books API সক্রিয় করুন। (যদি API কনসোলে এপিআই তালিকাভুক্ত না থাকে, তাহলে এই ধাপটি এড়িয়ে যান।)
  3. যখন আপনার অ্যাপ্লিকেশনটির ব্যবহারকারীর ডেটাতে অ্যাক্সেসের প্রয়োজন হয়, তখন এটি Google কে অ্যাক্সেসের একটি নির্দিষ্ট সুযোগের জন্য জিজ্ঞাসা করে।
  4. Google ব্যবহারকারীর কাছে একটি সম্মতি স্ক্রীন প্রদর্শন করে, তাদের কিছু ডেটা অনুরোধ করার জন্য আপনার আবেদনকে অনুমোদন করতে বলে।
  5. যদি ব্যবহারকারী অনুমোদন করেন, তাহলে Google আপনার অ্যাপ্লিকেশনকে একটি স্বল্পকালীন অ্যাক্সেস টোকেন দেয়
  6. আপনার অ্যাপ্লিকেশন ব্যবহারকারীর ডেটা অনুরোধ করে, অনুরোধে অ্যাক্সেস টোকেন সংযুক্ত করে।
  7. যদি Google নির্ধারণ করে যে আপনার অনুরোধ এবং টোকেন বৈধ, এটি অনুরোধ করা ডেটা ফেরত দেয়।

কিছু প্রবাহে অতিরিক্ত পদক্ষেপ অন্তর্ভুক্ত থাকে, যেমন নতুন অ্যাক্সেস টোকেন অর্জন করতে রিফ্রেশ টোকেন ব্যবহার করে। বিভিন্ন ধরনের অ্যাপ্লিকেশনের জন্য প্রবাহ সম্পর্কে বিস্তারিত তথ্যের জন্য, Google এর OAuth 2.0 ডকুমেন্টেশন দেখুন।

এখানে Books API-এর জন্য OAuth 2.0 স্কোপের তথ্য রয়েছে:

https://www.googleapis.com/auth/books

OAuth 2.0 ব্যবহার করে অ্যাক্সেসের অনুরোধ করার জন্য, আপনার অ্যাপ্লিকেশনের সুযোগ তথ্যের প্রয়োজন, সেইসাথে আপনি যখন আপনার আবেদনটি নিবন্ধন করেন তখন Google সরবরাহ করে এমন তথ্য (যেমন ক্লায়েন্ট আইডি এবং ক্লায়েন্ট সিক্রেট)।

টিপ: Google APIs ক্লায়েন্ট লাইব্রেরিগুলি আপনার জন্য কিছু অনুমোদন প্রক্রিয়া পরিচালনা করতে পারে৷ তারা বিভিন্ন প্রোগ্রামিং ভাষার জন্য উপলব্ধ; আরও বিস্তারিত জানার জন্য লাইব্রেরি এবং নমুনা সহ পৃষ্ঠাটি দেখুন।

একটি API কী অর্জন এবং ব্যবহার করা

সর্বজনীন ডেটার জন্য Books API-এর অনুরোধগুলি অবশ্যই একটি শনাক্তকারীর সাথে থাকতে হবে, যা একটি API কী বা একটি অ্যাক্সেস টোকেন হতে পারে৷

একটি API কী অর্জন করতে:

  1. API কনসোলে শংসাপত্র পৃষ্ঠা খুলুন।
  2. এই API দুই ধরনের শংসাপত্র সমর্থন করে। আপনার প্রকল্পের জন্য উপযুক্ত যে কোনো শংসাপত্র তৈরি করুন:
    • OAuth 2.0: যখনই আপনার অ্যাপ্লিকেশন ব্যক্তিগত ব্যবহারকারীর ডেটার অনুরোধ করে, তখন অনুরোধের সাথে একটি OAuth 2.0 টোকেন পাঠাতে হবে। আপনার আবেদন প্রথমে একটি ক্লায়েন্ট আইডি পাঠায় এবং সম্ভবত, একটি টোকেন পাওয়ার জন্য একটি ক্লায়েন্ট গোপনীয়তা পাঠায়। আপনি ওয়েব অ্যাপ্লিকেশন, পরিষেবা অ্যাকাউন্ট বা ইনস্টল করা অ্যাপ্লিকেশনগুলির জন্য OAuth 2.0 শংসাপত্র তৈরি করতে পারেন৷

      আরও তথ্যের জন্য, OAuth 2.0 ডকুমেন্টেশন দেখুন।

    • API কী: একটি অনুরোধ যা একটি OAuth 2.0 টোকেন প্রদান করে না একটি API কী পাঠাতে হবে। কী আপনার প্রকল্পকে শনাক্ত করে এবং API অ্যাক্সেস, কোটা এবং রিপোর্ট প্রদান করে।

      API API কীগুলিতে বিভিন্ন ধরণের সীমাবদ্ধতা সমর্থন করে। যদি আপনার প্রয়োজনীয় API কীটি ইতিমধ্যেই বিদ্যমান না থাকে, তাহলে Create Credentials > API কী ক্লিক করে কনসোলে একটি API কী তৈরি করুন। আপনি কীটিকে উৎপাদনে ব্যবহার করার আগে Restrict key- এ ক্লিক করে সীমাবদ্ধতাগুলির একটি নির্বাচন করে সীমাবদ্ধ করতে পারেন।

আপনার API কীগুলি সুরক্ষিত রাখতে, নিরাপদে API কীগুলি ব্যবহার করার জন্য সর্বোত্তম অনুশীলনগুলি অনুসরণ করুন৷

আপনার একটি API কী থাকার পরে, আপনার অ্যাপ্লিকেশনটি সমস্ত অনুরোধের URL-এ ক্যোয়ারী প্যারামিটার key= yourAPIKey যোগ করতে পারে।

API কী ইউআরএল-এ এম্বেড করার জন্য নিরাপদ; এটা কোন এনকোডিং প্রয়োজন নেই.

গুগল বুকস আইডি

আপনাকে নির্দিষ্ট API পদ্ধতি কলের সাথে আইডি ক্ষেত্র নির্দিষ্ট করতে হবে। Google Books-এর মধ্যে তিন ধরনের আইডি ব্যবহার করা হয়:

  • ভলিউম আইডি - প্রতিটি ভলিউমকে দেওয়া অনন্য স্ট্রিং যা Google Books জানে। ভলিউম আইডির একটি উদাহরণ হল _LettPDhwR0C । আপনি একটি ভলিউম রিসোর্স প্রদান করে এমন একটি অনুরোধ করে ভলিউম আইডি পেতে API ব্যবহার করতে পারেন; আপনি এর id ক্ষেত্রে ভলিউম আইডি খুঁজে পেতে পারেন।
  • বুকশেল্ফ আইডি - ব্যবহারকারীর লাইব্রেরিতে বুকশেলফকে দেওয়া সংখ্যাসূচক মান। Google নিম্নলিখিত আইডি সহ প্রত্যেক ব্যবহারকারীর জন্য কিছু পূর্বনির্ধারিত তাক প্রদান করে:
    • প্রিয়: 0
    • ক্রয়: 1
    • পড়তে: 2
    • এখন পড়া: 3
    • পড়া হয়েছে: 4
    • পর্যালোচনা করা হয়েছে: 5
    • সম্প্রতি দেখা হয়েছে: 6
    • আমার ইবুক: 7
    • আপনার জন্য বই: 8 যদি আমাদের ব্যবহারকারীর জন্য কোন সুপারিশ না থাকে, তাহলে এই শেলফটি বিদ্যমান নেই।
    কাস্টম শেল্ফগুলিতে 1000-এর বেশি আইডি থাকে৷ একটি বুকশেলফ আইডি একটি প্রদত্ত ব্যবহারকারীর জন্য অনন্য, অর্থাত্, দুটি ব্যবহারকারীর একই ID সহ একটি বুকশেলফ থাকতে পারে যা বিভিন্ন বুকশেলফকে নির্দেশ করে৷ আপনি বুকশেলফ আইডি পেতে API ব্যবহার করতে পারেন এমন একটি অনুরোধ করে যা একটি বুকশেল্ফ সম্পদ ফেরত দেয়; আপনি বুকশেল্ফ আইডিটি এর id ক্ষেত্রে খুঁজে পেতে পারেন।
  • ইউজার আইডি - প্রতিটি ব্যবহারকারীর জন্য নির্দিষ্ট করা অনন্য সাংখ্যিক মান। এই মানগুলি অগত্যা অন্যান্য Google পরিষেবাগুলিতে ব্যবহৃত একই আইডি মান নয়৷ বর্তমানে, ইউজার আইডি পুনরুদ্ধার করার একমাত্র উপায় হল একটি বুকশেলফ রিসোর্স থেকে এটিকে একটি প্রমাণীকৃত অনুরোধের মাধ্যমে পুনরুদ্ধার করা। ব্যবহারকারীরা বুকস সাইট থেকে তাদের নিজস্ব ব্যবহারকারী আইডিও পেতে পারেন। একজন ব্যবহারকারী API বা বই সাইটের মাধ্যমে অন্য ব্যবহারকারীর জন্য ব্যবহারকারী আইডি পেতে পারে না; অন্য ব্যবহারকারীকে সেই তথ্যটি স্পষ্টভাবে শেয়ার করতে হবে, উদাহরণস্বরূপ ইমেলের মাধ্যমে।

Google Books সাইটে আইডি

আপনি Books API এর সাথে যে আইডিগুলি ব্যবহার করেন সেগুলি Google Books সাইটে ব্যবহৃত একই ID গুলি৷

  • ভলিউম আইডি

    সাইটে একটি নির্দিষ্ট ভলিউম দেখার সময়, আপনি id URL প্যারামিটারে ভলিউম আইডি খুঁজে পেতে পারেন। এখানে একটি উদাহরণ:

    https://books.google.com/ebooks?id=buc0AAAAMAAJ&dq=holmes&as_brr=4&source=webstore_bookcard

  • বুকশেল্ফ আইডি

    সাইটে একটি নির্দিষ্ট বুকশেলফ দেখার সময়, আপনি as_coll URL প্যারামিটারে বুকশেলফ আইডি খুঁজে পেতে পারেন। এখানে একটি উদাহরণ:

    https://books.google.com/books?hl=en&as_coll=0&num=10&uid=11122233344455566778&source=gbs_slider_cls_metadata_0_mylibrary

  • ব্যবহারকারী আইডি

    সাইটে আপনার লাইব্রেরি দেখার সময়, আপনি uid URL প্যারামিটারে ব্যবহারকারী আইডি খুঁজে পেতে পারেন। এখানে একটি উদাহরণ:

    https://books.google.com/books?uid=11122233344455566778&source=gbs_lp_bookshelf_list

ব্যবহারকারীর অবস্থান নির্ধারণ করা হচ্ছে

Google Books কপিরাইট, চুক্তি এবং শেষ ব্যবহারকারীর অবস্থানের সাথে সম্পর্কিত অন্যান্য আইনি বিধিনিষেধকে সম্মান করে। ফলস্বরূপ, কিছু ব্যবহারকারী কিছু দেশ থেকে বইয়ের সামগ্রী অ্যাক্সেস করতে সক্ষম নাও হতে পারে। উদাহরণস্বরূপ, কিছু বই শুধুমাত্র মার্কিন যুক্তরাষ্ট্রে "প্রিভিউ করা যায়"; আমরা অন্যান্য দেশের ব্যবহারকারীদের জন্য এই ধরনের পূর্বরূপ লিঙ্ক বাদ দিই। অতএব, API ফলাফলগুলি আপনার সার্ভার বা ক্লায়েন্ট অ্যাপ্লিকেশনের IP ঠিকানার উপর ভিত্তি করে সীমাবদ্ধ।

ভলিউম নিয়ে কাজ করা

একটি অনুসন্ধান সঞ্চালন

আপনি নিম্নলিখিত URI-তে একটি HTTP GET অনুরোধ পাঠিয়ে একটি ভলিউম অনুসন্ধান করতে পারেন:

https://www.googleapis.com/books/v1/volumes?q=search+terms

এই অনুরোধের একটি একক প্রয়োজনীয় প্যারামিটার আছে:

  • q - এই পাঠ্য স্ট্রিং ধারণকারী ভলিউম জন্য অনুসন্ধান করুন. বিশেষ ক্ষেত্রগুলিতে অনুসন্ধান করার জন্য আপনি অনুসন্ধান পদগুলিতে নির্দিষ্ট কীওয়ার্ডগুলি নির্দিষ্ট করতে পারেন, যেমন:
    • intitle: ফলাফল প্রদান করে যেখানে শিরোনামে এই কীওয়ার্ডটি অনুসরণ করা টেক্সট পাওয়া যায়।
    • inauthor: ফলাফল প্রদান করে যেখানে এই কীওয়ার্ডটি অনুসরণকারী পাঠ্য লেখকের মধ্যে পাওয়া যায়।
    • inpublisher: ফলাফল প্রদান করে যেখানে এই কীওয়ার্ড অনুসরণকারী পাঠ্য প্রকাশকের মধ্যে পাওয়া যায়।
    • subject: ফলাফল প্রদান করে যেখানে এই কীওয়ার্ডটি অনুসরণ করা পাঠ্যটি ভলিউমের বিভাগ তালিকায় তালিকাভুক্ত হয়।
    • isbn: ফলাফল দেখায় যেখানে এই কীওয়ার্ডটি অনুসরণ করা পাঠ্যটি হল ISBN নম্বর।
    • lccn: ফলাফল দেখায় যেখানে এই কীওয়ার্ডটি অনুসরণ করা টেক্সট হল লাইব্রেরি অফ কংগ্রেস কন্ট্রোল নম্বর।
    • oclc: ফলাফল প্রদান করে যেখানে এই কীওয়ার্ডটি অনুসরণ করা পাঠ্যটি অনলাইন কম্পিউটার লাইব্রেরি সেন্টার নম্বর।

অনুরোধ

এখানে ড্যানিয়েল কিসের "ফ্লাওয়ার্স ফর অ্যালগারনন" অনুসন্ধানের একটি উদাহরণ রয়েছে:

GET https://www.googleapis.com/books/v1/volumes?q=flowers+inauthor:keyes&key=yourAPIKey

দ্রষ্টব্য: একটি অনুসন্ধান সম্পাদন করার জন্য প্রমাণীকরণের প্রয়োজন হয় না, তাই আপনাকে GET অনুরোধের সাথে Authorization HTTP শিরোনাম প্রদান করতে হবে না। যাইহোক, যদি কলটি প্রমাণীকরণের সাথে করা হয়, প্রতিটি ভলিউমে ব্যবহারকারী-নির্দিষ্ট তথ্য অন্তর্ভুক্ত থাকবে, যেমন ক্রয়কৃত স্থিতি।

প্রতিক্রিয়া

অনুরোধ সফল হলে, সার্ভার একটি 200 OK HTTP স্ট্যাটাস কোড এবং ভলিউম ফলাফলের সাথে প্রতিক্রিয়া জানায়:

200 OK

{
 "kind": "books#volumes",
 "items": [
  {
   "kind": "books#volume",
   "id": "_ojXNuzgHRcC",
   "etag": "OTD2tB19qn4",
   "selfLink": "https://www.googleapis.com/books/v1/volumes/_ojXNuzgHRcC",
   "volumeInfo": {
    "title": "Flowers",
    "authors": [
     "Vijaya Khisty Bodach"
    ],
   ...
  },
  {
   "kind": "books#volume",
   "id": "RJxWIQOvoZUC",
   "etag": "NsxMT6kCCVs",
   "selfLink": "https://www.googleapis.com/books/v1/volumes/RJxWIQOvoZUC",
   "volumeInfo": {
    "title": "Flowers",
    "authors": [
     "Gail Saunders-Smith"
    ],
    ...
  },
  {
   "kind": "books#volume",
   "id": "zaRoX10_UsMC",
   "etag": "pm1sLMgKfMA",
   "selfLink": "https://www.googleapis.com/books/v1/volumes/zaRoX10_UsMC",
   "volumeInfo": {
    "title": "Flowers",
    "authors": [
     "Paul McEvoy"
    ],
    ...
  },
  "totalItems": 3
}

ঐচ্ছিক ক্যোয়ারী পরামিতি

স্ট্যান্ডার্ড ক্যোয়ারী প্যারামিটারগুলি ছাড়াও, আপনি একটি ভলিউম অনুসন্ধান করার সময় নিম্নলিখিত ক্যোয়ারী প্যারামিটারগুলি ব্যবহার করতে পারেন৷

ডাউনলোড ফরম্যাট

আপনি download পরামিতি ব্যবহার করে প্রত্যাবর্তিত ফলাফলগুলিকে ভলিউমগুলিতে সীমাবদ্ধ করতে ব্যবহার করেন যেগুলি সেট করে epub এর একটি উপলব্ধ ডাউনলোড বিন্যাস রয়েছে মান epub .

নিম্নলিখিত উদাহরণটি একটি epub ডাউনলোড উপলব্ধ বইগুলির জন্য অনুসন্ধান করে:

GET https://www.googleapis.com/books/v1/volumes?q=pride+prejudice&download=epub&key=yourAPIKey
ফিল্টারিং

আপনি filter প্যারামিটারটি ব্যবহার করে প্রত্যাবর্তিত ফলাফলগুলিকে নিম্নলিখিত মানগুলির মধ্যে একটিতে সেট করে আরও সীমাবদ্ধ করতে পারেন:

  • partial - ফলাফল দেখায় যেখানে পাঠ্যের অন্তত অংশগুলি পূর্বরূপ দেখা যায়।
  • full - শুধুমাত্র ফলাফল প্রদান করে যেখানে সমস্ত পাঠ্য দেখা যায়।
  • free-ebooks - শুধুমাত্র বিনামূল্যে Google eBooks ফলাফল প্রদান করে।
  • paid-ebooks - শুধুমাত্র মূল্য সহ Google ইবুকগুলির ফলাফল প্রদান করে৷
  • ebooks - শুধুমাত্র Google eBooks, প্রদত্ত বা বিনামূল্যের ফলাফল প্রদান করে। নন-ই-বুকগুলির উদাহরণ হল প্রকাশক সামগ্রী যা সীমিত প্রিভিউতে পাওয়া যায় এবং বিক্রির জন্য নয়, বা ম্যাগাজিন।

নিম্নলিখিত উদাহরণটি বিনামূল্যে ই-বুক হিসাবে উপলব্ধ অনুসন্ধান ফলাফলগুলিকে সীমাবদ্ধ করে:

GET https://www.googleapis.com/books/v1/volumes?q=flowers&filter=free-ebooks&key=yourAPIKey
পৃষ্ঠা সংখ্যা

আপনি অনুরোধের জন্য পরামিতিগুলিতে দুটি মান নির্দিষ্ট করে ভলিউম তালিকাটি পৃষ্ঠায় করতে পারেন:

  • startIndex - সংগ্রহের অবস্থান যেখানে শুরু করতে হবে। প্রথম আইটেমের সূচক হল 0।
  • maxResults - সর্বাধিক সংখ্যক ফলাফল ফেরত দিতে হবে। ডিফল্ট হল 10, এবং সর্বাধিক অনুমোদিত মান হল 40৷

আপনি প্রিন্ট printType প্যারামিটার ব্যবহার করে প্রত্যাবর্তিত ফলাফলগুলিকে একটি নির্দিষ্ট মুদ্রণ বা প্রকাশনার প্রকারে সীমাবদ্ধ করতে এটিকে নিম্নলিখিত মানগুলির মধ্যে একটিতে সেট করতে পারেন:

  • all - মুদ্রণ প্রকার (ডিফল্ট) দ্বারা সীমাবদ্ধ করে না।
  • books - শুধুমাত্র বই যা ফলাফল প্রদান করে।
  • magazines - ম্যাগাজিন ফলাফল প্রদান করে।

নিম্নলিখিত উদাহরণটি ম্যাগাজিনের মধ্যে অনুসন্ধান ফলাফল সীমাবদ্ধ করে:

GET https://www.googleapis.com/books/v1/volumes?q=time&printType=magazines&key=yourAPIKey
অভিক্ষেপ

আপনি projection প্যারামিটার ব্যবহার করতে পারেন নিম্নলিখিত মানগুলির মধ্যে একটি দিয়ে ভলিউম ফিল্ডগুলির একটি পূর্বনির্ধারিত সেট ফেরত দিতে:

  • full - সমস্ত ভলিউম ক্ষেত্র প্রদান করে।
  • lite - শুধুমাত্র নির্দিষ্ট ক্ষেত্র প্রদান করে। কোন ক্ষেত্র অন্তর্ভুক্ত করা হয়েছে তা খুঁজে বের করতে ভলিউম রেফারেন্সে ডবল তারকাচিহ্ন দিয়ে চিহ্নিত ক্ষেত্রের বিবরণ দেখুন।

নিম্নলিখিত উদাহরণ সীমিত ভলিউম তথ্য সহ অনুসন্ধান ফলাফল প্রদান করে:

GET https://www.googleapis.com/books/v1/volumes?q=flowers&projection=lite&key=yourAPIKey
শ্রেণীবিভাজন

ডিফল্টভাবে, একটি ভলিউম সার্চ রিকোয়েস্ট maxResults ফলাফল প্রদান করে, যেখানে maxResults হল প্যারামিটারটি পৃষ্ঠায় (উপরে) ব্যবহৃত হয়, যা সার্চ টার্মের প্রাসঙ্গিকতা অনুসারে সাজানো হয়।

আপনি এই মানগুলির মধ্যে একটি হিসাবে orderBy প্যারামিটার সেট করে অর্ডার পরিবর্তন করতে পারেন:

  • relevance - অনুসন্ধান পদগুলির প্রাসঙ্গিকতার ক্রমানুসারে ফলাফল প্রদান করে (এটি ডিফল্ট)।
  • newest - সাম্প্রতিক থেকে অন্তত সম্প্রতি প্রকাশিত ফলাফলের ক্রমানুসারে ফলাফল প্রদান করে।

নিম্নলিখিত উদাহরণগুলি প্রকাশিত তারিখ অনুসারে ফলাফল তালিকাভুক্ত করে, নতুন থেকে পুরানো:

GET https://www.googleapis.com/books/v1/volumes?q=flowers&orderBy=newest&key=yourAPIKey

একটি নির্দিষ্ট ভলিউম পুনরুদ্ধার করা হচ্ছে

আপনি ভলিউম রিসোর্স URI-তে HTTP GET অনুরোধ পাঠিয়ে একটি নির্দিষ্ট ভলিউমের জন্য তথ্য পুনরুদ্ধার করতে পারেন:

https://www.googleapis.com/books/v1/volumes/volumeId

ভলিউম আইডি পাথ প্যারামিটারটি পুনরুদ্ধার করার জন্য volumeId আইডি দিয়ে প্রতিস্থাপন করুন। ভলিউম আইডি সম্পর্কে আরও তথ্যের জন্য Google বই আইডি বিভাগটি দেখুন।

অনুরোধ

এখানে একটি GET অনুরোধের একটি উদাহরণ যা একটি একক ভলিউম পায়:

GET https://www.googleapis.com/books/v1/volumes/zyTCAlFPjgYC?key=yourAPIKey

দ্রষ্টব্য: ভলিউম তথ্য পুনরুদ্ধার করার জন্য প্রমাণীকরণের প্রয়োজন নেই, তাই আপনাকে GET অনুরোধের সাথে Authorization HTTP শিরোনাম প্রদান করতে হবে না। যাইহোক, যদি কলটি প্রমাণীকরণের সাথে করা হয়, তাহলে ভলিউম ব্যবহারকারী-নির্দিষ্ট তথ্য অন্তর্ভুক্ত করবে, যেমন ক্রয়কৃত স্থিতি।

প্রতিক্রিয়া

অনুরোধটি সফল হলে, সার্ভার 200 OK HTTP স্ট্যাটাস কোড এবং অনুরোধ করা ভলিউম রিসোর্সের সাথে সাড়া দেয়:

200 OK

{
 "kind": "books#volume",
 "id": "zyTCAlFPjgYC",
 "etag": "f0zKg75Mx/I",
 "selfLink": "https://www.googleapis.com/books/v1/volumes/zyTCAlFPjgYC",
 "volumeInfo": {
  "title": "The Google story",
  "authors": [
   "David A. Vise",
   "Mark Malseed"
  ],
  "publisher": "Random House Digital, Inc.",
  "publishedDate": "2005-11-15",
  "description": "\"Here is the story behind one of the most remarkable Internet
  successes of our time. Based on scrupulous research and extraordinary access
  to Google, ...",
  "industryIdentifiers": [
   {
    "type": "ISBN_10",
    "identifier": "055380457X"
   },
   {
    "type": "ISBN_13",
    "identifier": "9780553804577"
   }
  ],
  "pageCount": 207,
  "dimensions": {
   "height": "24.00 cm",
   "width": "16.03 cm",
   "thickness": "2.74 cm"
  },
  "printType": "BOOK",
  "mainCategory": "Business & Economics / Entrepreneurship",
  "categories": [
   "Browsers (Computer programs)",
   ...
  ],
  "averageRating": 3.5,
  "ratingsCount": 136,
  "contentVersion": "1.1.0.0.preview.2",
  "imageLinks": {
   "smallThumbnail": "https://books.google.com/books?id=zyTCAlFPjgYC&printsec=frontcover&img=1&zoom=5&edge=curl&source=gbs_api",
   "thumbnail": "https://books.google.com/books?id=zyTCAlFPjgYC&printsec=frontcover&img=1&zoom=1&edge=curl&source=gbs_api",
   "small": "https://books.google.com/books?id=zyTCAlFPjgYC&printsec=frontcover&img=1&zoom=2&edge=curl&source=gbs_api",
   "medium": "https://books.google.com/books?id=zyTCAlFPjgYC&printsec=frontcover&img=1&zoom=3&edge=curl&source=gbs_api",
   "large": "https://books.google.com/books?id=zyTCAlFPjgYC&printsec=frontcover&img=1&zoom=4&edge=curl&source=gbs_api",
   "extraLarge": "https://books.google.com/books?id=zyTCAlFPjgYC&printsec=frontcover&img=1&zoom=6&edge=curl&source=gbs_api"
  },
  "language": "en",
  "infoLink": "https://books.google.com/books?id=zyTCAlFPjgYC&ie=ISO-8859-1&source=gbs_api",
  "canonicalVolumeLink": "https://books.google.com/books/about/The_Google_story.html?id=zyTCAlFPjgYC"
 },
 "saleInfo": {
  "country": "US",
  "saleability": "FOR_SALE",
  "isEbook": true,
  "listPrice": {
   "amount": 11.99,
   "currencyCode": "USD"
  },
  "retailPrice": {
   "amount": 11.99,
   "currencyCode": "USD"
  },
  "buyLink": "https://books.google.com/books?id=zyTCAlFPjgYC&ie=ISO-8859-1&buy=&source=gbs_api"
 },
 "accessInfo": {
  "country": "US",
  "viewability": "PARTIAL",
  "embeddable": true,
  "publicDomain": false,
  "textToSpeechPermission": "ALLOWED_FOR_ACCESSIBILITY",
  "epub": {
   "isAvailable": true,
   "acsTokenLink": "https://books.google.com/books/download/The_Google_story-sample-epub.acsm?id=zyTCAlFPjgYC&format=epub&output=acs4_fulfillment_token&dl_type=sample&source=gbs_api"
  },
  "pdf": {
   "isAvailable": false
  },
  "accessViewStatus": "SAMPLE"
 }
}
অ্যাক্সেস তথ্য

accessInfo বিভাগটি একটি ইবুকের জন্য কোন বৈশিষ্ট্যগুলি উপলব্ধ তা নির্ধারণে বিশেষ আগ্রহের বিষয়। একটি epub হল একটি প্রবাহিত পাঠ্য বিন্যাস ইবুক, epub বিভাগে একটি isAvailable সম্পত্তি থাকবে যা নির্দেশ করে যে এই ধরনের ইবুক উপলব্ধ কিনা৷ বইটির জন্য একটি নমুনা থাকলে বা ব্যবহারকারী বইটি কেনার কারণে বা ব্যবহারকারীর অবস্থানে পাবলিক ডোমেন হওয়ার কারণে বইটি পড়তে পারলে এটিতে একটি ডাউনলোড লিঙ্ক থাকবে। Google বইয়ের জন্য একটি pdf ইবুকের একটি স্ক্যান করা পৃষ্ঠা সংস্করণ নির্দেশ করে যার অনুরূপ বিবরণ যেমন এটি উপলব্ধ আছে কিনা এবং একটি ডাউনলোড লিঙ্ক। Google eReaders এবং স্মার্টফোনগুলির জন্য epub ফাইলগুলি সুপারিশ করে, কারণ এই ডিভাইসগুলিতে স্ক্যান করা পৃষ্ঠাগুলি পড়া কঠিন হতে পারে৷ কোনো accessInfo বিভাগ না থাকলে, ভলিউমটি Google ইবুক হিসাবে উপলব্ধ নয়।

ঐচ্ছিক ক্যোয়ারী পরামিতি

স্ট্যান্ডার্ড ক্যোয়ারী প্যারামিটার ছাড়াও, একটি নির্দিষ্ট ভলিউম পুনরুদ্ধার করার সময় আপনি নিম্নলিখিত ক্যোয়ারী প্যারামিটার ব্যবহার করতে পারেন।

অভিক্ষেপ

আপনি projection প্যারামিটার ব্যবহার করতে পারেন নিম্নলিখিত মানগুলির মধ্যে একটি দিয়ে ভলিউম ফিল্ডগুলির একটি পূর্বনির্ধারিত সেট ফেরত দিতে:

  • full - সমস্ত ভলিউম ক্ষেত্র প্রদান করে।
  • lite - শুধুমাত্র নির্দিষ্ট ক্ষেত্র প্রদান করে। কোন ক্ষেত্র অন্তর্ভুক্ত করা হয়েছে তা খুঁজে বের করতে ভলিউম রেফারেন্সে ডবল তারকাচিহ্ন দিয়ে চিহ্নিত ক্ষেত্রের বিবরণ দেখুন।

নিম্নলিখিত উদাহরণ একটি একক ভলিউমের জন্য সীমিত ভলিউম তথ্য প্রদান করে:

GET https://www.googleapis.com/books/v1/volumes/zyTCAlFPjgYC?projection=lite&key=yourAPIKey

বইয়ের তাক নিয়ে কাজ করা

ব্যবহারকারীর সর্বজনীন বুকশেলফের একটি তালিকা পুনরুদ্ধার করা হচ্ছে

আপনি নিম্নলিখিত বিন্যাস সহ URI-তে একটি HTTP GET অনুরোধ পাঠিয়ে ব্যবহারকারীর সর্বজনীন বুকশেলফের একটি তালিকা পুনরুদ্ধার করতে পারেন:

https://www.googleapis.com/books/v1/users/userId/bookshelves

userId পাথ প্যারামিটারটিকে ব্যবহারকারীর ID দিয়ে প্রতিস্থাপন করুন যার বুকশেলভ আপনি পুনরুদ্ধার করতে চান৷ ব্যবহারকারী আইডি সম্পর্কে আরও তথ্যের জন্য Google বই আইডি বিভাগটি দেখুন।

অনুরোধ

এখানে একটি উদাহরণ:

GET https://www.googleapis.com/books/v1/users/1112223334445556677/bookshelves&key=yourAPIKey

যেহেতু একজন ব্যবহারকারীকে পাবলিক বুকশেলফ সম্পর্কিত তথ্য পুনরুদ্ধার করার জন্য প্রমাণীকরণ করতে হবে না, তাই আপনাকে GET অনুরোধের সাথে Authorization HTTP শিরোনাম প্রদান করতে হবে না।

প্রতিক্রিয়া

অনুরোধ সফল হলে, সার্ভার 200 OK HTTP স্ট্যাটাস কোড এবং বুকশেলফের তালিকা দিয়ে সাড়া দেয়:

200 OK

{
 "kind": "books#bookshelves",
 "items": [
  {
   ...
  },
  {
   "kind": "books#bookshelf",
   "id": 3,
   "selfLink": "https://www.googleapis.com/books/v1/users/1112223334445556677/bookshelves/3",
   "title": "Reading now",
   "description": "",
   "access": "PUBLIC",
   "updated": "2011-02-02T20:34:20.146Z",
   "created": "2011-02-02T20:34:20.146Z",
   "volumeCount": 2,
   "volumesLastUpdated": "2011-02-02T20:34:20.110Z"
  },
  ...
 ]
}

ঐচ্ছিক ক্যোয়ারী পরামিতি

ব্যবহারকারীর সর্বজনীন বুকশেলফের তালিকা পুনরুদ্ধার করার সময় আপনি স্ট্যান্ডার্ড ক্যোয়ারী প্যারামিটার ব্যবহার করতে পারেন।

একটি নির্দিষ্ট পাবলিক বুকশেলফ পুনরুদ্ধার করা হচ্ছে

আপনি নিম্নলিখিত বিন্যাস সহ URI-তে একটি HTTP GET অনুরোধ পাঠিয়ে একটি নির্দিষ্ট পাবলিক বুকশেলফ পুনরুদ্ধার করতে পারেন:

https://www.googleapis.com/books/v1/users/userId/bookshelves/shelf

ইউজারআইডি এবং শেল্ফ পাথ প্যারামিটারগুলিকে আইডিগুলির সাথে প্রতিস্থাপন করুন যা ব্যবহারকারী এবং আপনি যে বুকশেল্ফটি পুনরুদ্ধার করতে চান তা নির্দিষ্ট করে৷ আরও তথ্যের জন্য Google Books IDs বিভাগটি দেখুন।

অনুরোধ

এখানে একটি উদাহরণ:

GET https://www.googleapis.com/books/v1/users/1112223334445556677/bookshelves/3?key=yourAPIKey

যেহেতু একজন ব্যবহারকারীকে পাবলিক বুকশেলফ সম্পর্কিত তথ্য পুনরুদ্ধার করার জন্য প্রমাণীকরণ করতে হবে না, তাই আপনাকে GET অনুরোধের সাথে Authorization HTTP শিরোনাম প্রদান করতে হবে না।

প্রতিক্রিয়া

অনুরোধটি সফল হলে, সার্ভার 200 OK HTTP স্ট্যাটাস কোড এবং বুকশেলফ রিসোর্স সহ সাড়া দেয়:

200 OK

{
  "kind": "books#bookshelf",
  "id": 3,
  "selfLink": "https://www.googleapis.com/books/v1/users/1112223334445556677/bookshelves/3",
  "title": "Reading now",
  "description": "",
  "access": "PUBLIC",
  "updated": "2011-02-02T20:34:20.146Z",
  "created": "2011-02-02T20:34:20.146Z",
  "volumeCount": 2,
  "volumesLastUpdated": "2011-02-02T20:34:20.110Z"
}

ঐচ্ছিক ক্যোয়ারী পরামিতি

একটি নির্দিষ্ট পাবলিক বুকশেলফ পুনরুদ্ধার করার সময় আপনি স্ট্যান্ডার্ড ক্যোয়ারী প্যারামিটার ব্যবহার করতে পারেন।

একটি পাবলিক বুকশেল্ফে ভলিউমের একটি তালিকা পুনরুদ্ধার করা হচ্ছে

আপনি নিম্নলিখিত বিন্যাস সহ একটি URI-তে HTTP GET অনুরোধ পাঠিয়ে ব্যবহারকারীর সর্বজনীন বুকশেল্ফে ভলিউমের একটি তালিকা পুনরুদ্ধার করতে পারেন:

https://www.googleapis.com/books/v1/user/userId/bookshelves/shelf/volumes

অনুরোধ

এখানে একটি উদাহরণ:

GET https://www.googleapis.com/books/v1/users/1112223334445556677/bookshelves/3/volumes?key=yourAPIKey

ইউজারআইডি এবং শেল্ফ পাথ প্যারামিটারগুলিকে আইডিগুলির সাথে প্রতিস্থাপন করুন যা ব্যবহারকারী এবং আপনি যে বুকশেল্ফটি পুনরুদ্ধার করতে চান তা নির্দিষ্ট করে৷ আরও তথ্যের জন্য Google Books IDs বিভাগটি দেখুন।

যেহেতু একজন ব্যবহারকারীকে পাবলিক বুকশেলফ সম্পর্কিত তথ্য পুনরুদ্ধার করার জন্য প্রমাণীকরণ করতে হবে না, তাই আপনাকে GET অনুরোধের সাথে Authorization HTTP শিরোনাম প্রদান করতে হবে না।

প্রতিক্রিয়া

অনুরোধটি সফল হলে, সার্ভার একটি 200 OK HTTP স্ট্যাটাস কোড এবং ব্যবহারকারীর বুকশেলফের তালিকা দিয়ে সাড়া দেয়:

200 OK

{
 "kind": "books#volumes",
 "items": [
  {
   "kind": "books#volume",
   "id": "AZ5J6B1-4BoC",
   "etag": "kIzQA7IUObk",
   "selfLink": "https://www.googleapis.com/books/v1/volumes/AZ5J6B1-4BoC",
   "volumeInfo": {
    "title": "The Girl Who Kicked the Hornet's Nest",
    "authors": [
     "Stieg Larsson"
    ],
    "publisher": "Knopf",
    "publishedDate": "2010-05-25",
    ...
  },
  {
   "kind": "books#volume",
   "id": "UvK1Slvkz3MC",
   "etag": "otKmdbRgdFQ",
   "selfLink": "https://www.googleapis.com/books/v1/volumes/UvK1Slvkz3MC",
   "volumeInfo": {
    "title": "The Girl who Played with Fire",
    "authors": [
     "Stieg Larsson"
    ],
    "publisher": "Knopf",
    "publishedDate": "2009-07-28",
    ...
  },
  {
   "kind": "books#volume",
   "id": "OBM3AAAAIAAJ",
   "etag": "xb47kTr8HsQ",
   "selfLink": "https://www.googleapis.com/books/v1/volumes/OBM3AAAAIAAJ",
   "volumeInfo": {
    "title": "The Sign of Four",
    "authors": [
     "Sir Arthur Conan Doyle"
    ],
    "publishedDate": "1890",
    ...
  }
 ],
 "totalItems": 3
}

ঐচ্ছিক ক্যোয়ারী পরামিতি

স্ট্যান্ডার্ড ক্যোয়ারী প্যারামিটার ছাড়াও, আপনি একটি সর্বজনীন বুকশেল্ফে ভলিউমগুলির একটি তালিকা পুনরুদ্ধার করার সময় নিম্নলিখিত ক্যোয়ারী প্যারামিটার ব্যবহার করতে পারেন৷

পৃষ্ঠা সংখ্যা

আপনি অনুরোধের জন্য পরামিতিগুলিতে দুটি মান নির্দিষ্ট করে ভলিউম তালিকাটি পৃষ্ঠায় করতে পারেন:

  • startIndex - সংগ্রহের অবস্থান যেখানে শুরু করতে হবে। প্রথম আইটেমের সূচক হল 0।
  • maxResults - সর্বাধিক সংখ্যক ফলাফল ফেরত দিতে হবে। ডিফল্ট হল 10, এবং সর্বাধিক অনুমোদিত মান হল 40৷

"আমার লাইব্রেরিতে" বুকশেলফের সাথে কাজ করা

সমস্ত "আমার লাইব্রেরি" অনুরোধ প্রমাণীকৃত ব্যবহারকারীর ডেটাতে প্রযোজ্য।

আমার বইয়ের তাকগুলির একটি তালিকা পুনরুদ্ধার করা হচ্ছে

আপনি নিম্নলিখিত বিন্যাস সহ URI-তে একটি HTTP GET অনুরোধ পাঠিয়ে সমস্ত প্রমাণীকৃত ব্যবহারকারীর বুকশেলফের একটি তালিকা পুনরুদ্ধার করতে পারেন:

https://www.googleapis.com/books/v1/mylibrary/bookshelves

অনুরোধ

এখানে একটি উদাহরণ:

GET https://www.googleapis.com/books/v1/mylibrary/bookshelves?key=yourAPIKey
Authorization: /* auth token here */

দ্রষ্টব্য: "আমার লাইব্রেরি" বুকশেলফের একটি তালিকা পুনরুদ্ধার করতে ব্যবহারকারীকে অবশ্যই প্রমাণীকরণ করতে হবে৷ তাই আপনাকে অবশ্যই GET অনুরোধের সাথে Authorization HTTP হেডার প্রদান করতে হবে।

প্রতিক্রিয়া

যদি অনুরোধটি সফল হয়, সার্ভারটি 200 OK HTTP স্ট্যাটাস কোড এবং বর্তমান প্রমাণীকৃত ব্যবহারকারীর জন্য সমস্ত বুকশেলফের তালিকা সহ সাড়া দেয়:

200 OK

{
 "kind": "books#bookshelves",
 "items": [
  {
   "kind": "books#bookshelf",
   "id": 0,
   "selfLink": "https://www.googleapis.com/books/v1/users/1112223334445556677/bookshelves/0",
   "title": "Favorites",
   "access": "PRIVATE",
   "updated": "2011-04-22T04:03:15.416Z",
   "created": "2011-04-22T04:03:15.416Z",
   "volumeCount": 0,
   "volumesLastUpdated": "2011-04-22T04:03:17.000Z"
  },
  {
   "kind": "books#bookshelf",
   "id": 3,
   "selfLink": "https://www.googleapis.com/books/v1/users/1112223334445556677/bookshelves/3",
   "title": "Reading now",
   "access": "PUBLIC",
   "updated": "2010-11-11T19:44:22.377Z",
   "created": "2010-11-11T19:44:22.377Z",
   "volumeCount": 1,
   "volumesLastUpdated": "2010-11-11T19:44:22.341Z"
  }
 ]
}

ঐচ্ছিক ক্যোয়ারী পরামিতি

প্রমাণীকৃত ব্যবহারকারীর বুকশেলফের তালিকা পুনরুদ্ধার করার সময় আপনি স্ট্যান্ডার্ড ক্যোয়ারী প্যারামিটার ব্যবহার করতে পারেন।

আমার বুকশেল্ফে ভলিউমের একটি তালিকা পুনরুদ্ধার করা হচ্ছে

আপনি নিম্নলিখিত বিন্যাস সহ URI-তে একটি HTTP GET অনুরোধ পাঠিয়ে প্রমাণীকৃত ব্যবহারকারীর বুকশেল্ফে ভলিউমগুলির একটি তালিকা পুনরুদ্ধার করতে পারেন:

https://www.googleapis.com/books/v1/mylibrary/bookshelves/shelf/volumes

বুকশেল্ফের আইডি দিয়ে শেলফ পাথ প্যারামিটার প্রতিস্থাপন করুন। বুকশেল্ফ আইডি সম্পর্কে আরও তথ্যের জন্য Google বই আইডি বিভাগটি দেখুন।

অনুরোধ

এখানে একটি উদাহরণ:

GET https://www.googleapis.com/books/v1/mylibrary/bookshelves/7/volumes?key=yourAPIKey
Authorization: /* auth token here */

দ্রষ্টব্য: "আমার লাইব্রেরি" ভলিউমের একটি তালিকা পুনরুদ্ধার করতে ব্যবহারকারীকে অবশ্যই প্রমাণীকরণ করতে হবে। তাই আপনাকে অবশ্যই GET অনুরোধের সাথে Authorization HTTP হেডার প্রদান করতে হবে।

প্রতিক্রিয়া

অনুরোধটি সফল হলে, সার্ভার 200 OK HTTP স্ট্যাটাস কোড এবং বুকশেল্ফ ভলিউমের তালিকা দিয়ে সাড়া দেয়:

200 OK

{
 "kind": "books#volumes",
 "items": [
  {
   "kind": "books#volume",
   "id": "AZ5J6B1-4BoC",
   "etag": "kIzQA7IUObk",
   "selfLink": "https://www.googleapis.com/books/v1/volumes/AZ5J6B1-4BoC",
   "volumeInfo": {
    "title": "The Girl Who Kicked the Hornet's Nest",
    "authors": [
     "Stieg Larsson"
    ],
    "publisher": "Knopf",
    "publishedDate": "2010-05-25",
    ...
  },
  {
   "kind": "books#volume",
   "id": "UvK1Slvkz3MC",
   "etag": "otKmdbRgdFQ",
   "selfLink": "https://www.googleapis.com/books/v1/volumes/UvK1Slvkz3MC",
   "volumeInfo": {
    "title": "The Girl who Played with Fire",
    "authors": [
     "Stieg Larsson"
    ],
    "publisher": "Knopf",
    "publishedDate": "2009-07-28",
    ...
  },
  {
   "kind": "books#volume",
   "id": "OBM3AAAAIAAJ",
   "etag": "xb47kTr8HsQ",
   "selfLink": "https://www.googleapis.com/books/v1/volumes/OBM3AAAAIAAJ",
   "volumeInfo": {
    "title": "The Sign of Four",
    "authors": [
     "Sir Arthur Conan Doyle"
    ],
    "publishedDate": "1890",
    ...
  }
 ],
 "totalItems": 3
}

ঐচ্ছিক ক্যোয়ারী পরামিতি

স্ট্যান্ডার্ড ক্যোয়ারী প্যারামিটারগুলি ছাড়াও, আপনি প্রমাণীকৃত ব্যবহারকারীর বুকশেলফগুলির একটিতে ভলিউমগুলির একটি তালিকা পুনরুদ্ধার করার সময় নিম্নলিখিত ক্যোয়ারী প্যারামিটার ব্যবহার করতে পারেন৷

পৃষ্ঠা সংখ্যা

আপনি অনুরোধের জন্য পরামিতিগুলিতে দুটি মান নির্দিষ্ট করে ভলিউম তালিকাটি পৃষ্ঠায় করতে পারেন:

  • startIndex - সংগ্রহের অবস্থান যেখানে শুরু করতে হবে। প্রথম আইটেমের সূচক হল 0।
  • maxResults - সর্বাধিক সংখ্যক ফলাফল ফেরত দিতে হবে। ডিফল্ট হল 10।

আমার বুকশেল্ফে একটি ভলিউম যোগ করা হচ্ছে

প্রমাণীকৃত ব্যবহারকারীর বুকশেল্ফে একটি ভলিউম যোগ করতে, নিম্নলিখিত বিন্যাস সহ URI-তে একটি HTTP POST অনুরোধ পাঠান:

https://www.googleapis.com/books/v1/mylibrary/bookshelves/shelf/addVolume

বুকশেল্ফের আইডি দিয়ে শেলফ পাথ প্যারামিটার প্রতিস্থাপন করুন। বুকশেল্ফ আইডি সম্পর্কে আরও তথ্যের জন্য Google বই আইডি বিভাগটি দেখুন।

অনুরোধে একটি একক প্রয়োজনীয় ক্যোয়ারী প্যারামিটার আছে:

  • volumeId আইডি - ভলিউমের আইডি। ভলিউম আইডি সম্পর্কে আরও তথ্যের জন্য Google বই আইডি বিভাগটি দেখুন।

অনুরোধ

এখানে "প্রিয়" বুকশেল্ফে "আলগারননের জন্য ফুল" যোগ করার একটি উদাহরণ রয়েছে:

POST https://www.googleapis.com/books/v1/mylibrary/bookshelves/0/addVolume?volumeId=NRWlitmahXkC&key=yourAPIKey
Authorization: /* auth token here */
Content-Type: application/json
Content-Length: CONTENT_LENGTH

দ্রষ্টব্য: একটি বুকশেল্ফে পরিবর্তন করতে ব্যবহারকারীকে অবশ্যই প্রমাণীকরণ করতে হবে, তাই আপনাকে অবশ্যই POST অনুরোধের সাথে Authorization HTTP শিরোনাম প্রদান করতে হবে। তবে এই POST সাথে কোন ডেটার প্রয়োজন নেই।

প্রতিক্রিয়া

অনুরোধ সফল হলে, সার্ভার 204 No Content HTTP স্ট্যাটাস কোড দিয়ে সাড়া দেয়।

ঐচ্ছিক ক্যোয়ারী পরামিতি

প্রমাণীকৃত ব্যবহারকারীর বুকশেলফের একটিতে ভলিউম যোগ করার সময় আপনি স্ট্যান্ডার্ড ক্যোয়ারী প্যারামিটার ব্যবহার করতে পারেন।

আমার বুকশেলফ থেকে একটি ভলিউম সরানো হচ্ছে

প্রমাণীকৃত ব্যবহারকারীর বুকশেলফ থেকে একটি ভলিউম সরাতে, নিম্নলিখিত বিন্যাস সহ URI-তে একটি HTTP POST পাঠান:

https://www.googleapis.com/books/v1/mylibrary/bookshelves/shelf/removeVolume

বুকশেল্ফের আইডি দিয়ে শেলফ পাথ প্যারামিটার প্রতিস্থাপন করুন। বুকশেল্ফ আইডি সম্পর্কে আরও তথ্যের জন্য Google বই আইডি বিভাগটি দেখুন।

অনুরোধে একটি একক প্রয়োজনীয় ক্যোয়ারী প্যারামিটার আছে:

  • volumeId আইডি - ভলিউমের আইডি। দেখা ভলিউম আইডি সম্পর্কে আরও তথ্যের জন্য Google বই আইডি বিভাগ।

অনুরোধ

এখানে "ফেভারিট" বুকশেলফ থেকে "আলগারনের জন্য ফুল" সরানোর একটি উদাহরণ রয়েছে:

POST https://www.googleapis.com/books/v1/mylibrary/bookshelves/0/removeVolume?volumeId=NRWlitmahXkC&key=yourAPIKey
Authorization: /* auth token here */
Content-Type: application/json
Content-Length: CONTENT_LENGTH

দ্রষ্টব্য: একটি বুকশেল্ফে পরিবর্তন করতে ব্যবহারকারীকে অবশ্যই প্রমাণীকরণ করতে হবে, তাই আপনাকে অবশ্যই POST অনুরোধের সাথে Authorization HTTP শিরোনাম প্রদান করতে হবে। তবে এই POST সাথে কোন ডেটার প্রয়োজন নেই।

প্রতিক্রিয়া

অনুরোধ সফল হলে, সার্ভার একটি 204 No Content স্ট্যাটাস কোড দিয়ে সাড়া দেয়।

ঐচ্ছিক ক্যোয়ারী পরামিতি

প্রমাণীকৃত ব্যবহারকারীর বুকশেলফ থেকে একটি ভলিউম সরানোর সময় আপনি স্ট্যান্ডার্ড ক্যোয়ারী প্যারামিটার ব্যবহার করতে পারেন।

আমার বুকশেলফ থেকে সমস্ত ভলিউম সাফ করা হচ্ছে

প্রমাণীকৃত ব্যবহারকারীর বুকশেলফ থেকে সমস্ত ভলিউম সরাতে, নিম্নলিখিত বিন্যাস সহ URI-তে একটি HTTP POST পাঠান:

https://www.googleapis.com/books/v1/mylibrary/bookshelves/shelf/clearVolumes

বুকশেল্ফের আইডি দিয়ে শেলফ পাথ প্যারামিটার প্রতিস্থাপন করুন। বুকশেল্ফ আইডি সম্পর্কে আরও তথ্যের জন্য Google বই আইডি বিভাগটি দেখুন।

অনুরোধ

এখানে "পছন্দের" বুকশেলফ সাফ করার একটি উদাহরণ রয়েছে:

POST https://www.googleapis.com/books/v1/mylibrary/bookshelves/0/clearVolumes?key=yourAPIKey
Authorization: /* auth token here */
Content-Type: application/json
Content-Length: CONTENT_LENGTH
  

দ্রষ্টব্য: একটি বুকশেল্ফে পরিবর্তন করতে ব্যবহারকারীকে অবশ্যই প্রমাণীকরণ করতে হবে, তাই আপনাকে অবশ্যই POST অনুরোধের সাথে Authorization HTTP শিরোনাম প্রদান করতে হবে। তবে এই POST সাথে কোন ডেটার প্রয়োজন নেই।

প্রতিক্রিয়া

অনুরোধ সফল হলে, সার্ভার একটি 204 No Content স্ট্যাটাস কোড দিয়ে সাড়া দেয়।

ঐচ্ছিক ক্যোয়ারী পরামিতি

প্রমাণীকৃত ব্যবহারকারীর বুকশেলফের একটি থেকে সমস্ত ভলিউম সাফ করার সময় আপনি স্ট্যান্ডার্ড ক্যোয়ারী প্যারামিটার ব্যবহার করতে পারেন।

কোয়েরি প্যারামিটার রেফারেন্স

আপনি Books API এর সাথে যে ক্যোয়ারী প্যারামিটারগুলি ব্যবহার করতে পারেন সেগুলি এই বিভাগে সংক্ষিপ্ত করা হয়েছে৷ সমস্ত প্যারামিটার মান URL এনকোড করা প্রয়োজন.

স্ট্যান্ডার্ড ক্যোয়ারী প্যারামিটার

ক্যোয়ারী প্যারামিটার যা সমস্ত Books API অপারেশনে প্রযোজ্য তা সিস্টেম প্যারামিটারে নথিভুক্ত করা হয়।

API-নির্দিষ্ট ক্যোয়ারী প্যারামিটার

অনুরোধের পরামিতি যা শুধুমাত্র Books API-এর নির্দিষ্ট ক্রিয়াকলাপের জন্য প্রযোজ্য তা নিম্নলিখিত সারণীতে সংক্ষিপ্ত করা হয়েছে।

প্যারামিটার অর্থ মন্তব্য প্রযোজ্যতা
download ডাউনলোড প্রাপ্যতা দ্বারা ভলিউম সীমাবদ্ধ.
  • বর্তমানে, একমাত্র সমর্থিত মান হল epub
  • ডাউনলোড অ্যাক্সেসের জন্য ক্রয়ের প্রয়োজন হতে পারে।
filter ভলিউম প্রকার এবং প্রাপ্যতা দ্বারা অনুসন্ধান ফলাফল ফিল্টার করুন।
  • সমর্থিত ফিল্টার হল:
    • filter=partial - ফলাফলগুলিকে ভলিউমে সীমাবদ্ধ করুন যেখানে পাঠ্যের অন্তত অংশটি পূর্বরূপ দেখা যায়।
    • filter=full - ভলিউমগুলিতে ফলাফল সীমাবদ্ধ করুন যেখানে সমস্ত পাঠ্য দেখা যায়।
    • filter=free-ebooks - বিনামূল্যে Google eBooks ফলাফল সীমাবদ্ধ করুন।
    • filter=paid-ebooks - ক্রয়ের মূল্য সহ Google eBooks-এ ফলাফল সীমাবদ্ধ করুন।
    • filter=ebooks ebooks - Google eBooks-এ ফলাফল সীমাবদ্ধ করুন, অর্থপ্রদত্ত বা বিনামূল্যে। নন-ই-বুকগুলির উদাহরণ হল প্রকাশক সামগ্রী যা সীমিত প্রিভিউতে পাওয়া যায় এবং বিক্রির জন্য নয়, বা ম্যাগাজিনের জন্য।

langRestrict নির্দিষ্ট ভাষার সাথে ট্যাগ করা ভলিউমগুলিকে সীমাবদ্ধ করে।
  • দুই-অক্ষরের ISO-639-1 কোড, যেমন "en" বা "fr"-এর জন্য langRestrict উল্লেখ করে একটি নির্দিষ্ট ভাষা আছে তাদের জন্য অনুসন্ধান ফলাফল সীমাবদ্ধ করুন।
maxResults এই অনুরোধের সাথে ফেরত দেওয়ার জন্য উপাদানগুলির সর্বাধিক সংখ্যা৷
  • একটি সংগ্রহের সমস্ত আইটেমের জন্য যেকোন অনুরোধের জন্য, আপনি অনুরোধের পরামিতিগুলিতে startIndex এবং maxResults উল্লেখ করে ফলাফলগুলিকে পৃষ্ঠায় স্থান দিতে পারেন৷
  • ডিফল্ট: maxResults=10
  • সর্বাধিক অনুমোদিত মান: সর্বাধিক maxResults=40.
orderBy

ভলিউম অনুসন্ধান ফলাফলের ক্রম.

  • ডিফল্টরূপে, একটি অনুসন্ধানের অনুরোধ maxResults ফলাফল প্রদান করে, যেখানে maxResults হল প্যারামিটার যা পেজিনেশনে ব্যবহৃত হয়, যা সবচেয়ে প্রাসঙ্গিক প্রথমে অর্ডার করে।
  • আপনি এই মানগুলির মধ্যে একটি হিসাবে orderBy প্যারামিটার সেট করে অর্ডার পরিবর্তন করতে পারেন:
    • orderBy=relevance - সবচেয়ে প্রাসঙ্গিক থেকে সর্বনিম্ন (এটি ডিফল্ট) ক্রমানুসারে অনুসন্ধান ফলাফল প্রদান করে।
    • orderBy=newest - নতুন প্রকাশিত তারিখের ক্রমানুসারে সার্চের ফলাফলকে সবচেয়ে পুরাতনে ফিরিয়ে দেয়।
printType বই বা ম্যাগাজিনের মধ্যে সীমাবদ্ধ রাখুন।
  • সমর্থিত মান হল:
    • printType=all - সমস্ত ভলিউম বিষয়বস্তুর ধরন ফেরত দিন (কোন সীমাবদ্ধতা নেই)। এটি ডিফল্ট।
    • printType=books - শুধু বই ফেরত দিন।
    • printType=magazines - শুধু পত্রিকা ফেরত দিন।
projection ক্ষেত্রগুলির একটি উপসেটে ফিরে ভলিউম তথ্য সীমাবদ্ধ করুন।
  • সমর্থিত অনুমানগুলি হল:
    • projection=full - সমস্ত ভলিউম মেটাডেটা (ডিফল্ট) অন্তর্ভুক্ত করে।
    • projection=lite - শুধুমাত্র ভলিউম এবং অ্যাক্সেস মেটাডেটার একটি বিষয় অন্তর্ভুক্ত করে।
q ফুল-টেক্সট ক্যোয়ারী স্ট্রিং।
  • একটি ক্যোয়ারী তৈরি করার সময়, q =term1+term2_term3 আকারে '+' দ্বারা পৃথক করা অনুসন্ধান পদগুলিকে তালিকাভুক্ত করুন। (বিকল্পভাবে, আপনি সেগুলিকে একটি স্পেস দিয়ে আলাদা করতে পারেন, কিন্তু সমস্ত ক্যোয়ারী প্যারামিটার মানগুলির মতো, স্পেসগুলিকে অবশ্যই URL এনকোড করা উচিত।) API সমস্ত অনুসন্ধান শব্দগুলির সাথে মেলে এমন সমস্ত এন্ট্রি প্রদান করে (যেমন পদগুলির মধ্যে AND ব্যবহার করা)৷ গুগলের ওয়েব সার্চের মতো, এপিআই সম্পূর্ণ শব্দ (এবং একই স্টেমের সাথে সম্পর্কিত শব্দ) অনুসন্ধান করে, সাবস্ট্রিং নয়।
  • একটি সঠিক বাক্যাংশ অনুসন্ধান করতে, বাক্যাংশটিকে উদ্ধৃতি চিহ্নে আবদ্ধ করুন: q="exact phrase"
  • প্রদত্ত শব্দের সাথে মেলে এমন এন্ট্রিগুলি বাদ দিতে, q=-term ফর্মটি ব্যবহার করুন।
  • অনুসন্ধান পদগুলি কেস-সংবেদনশীল।
  • উদাহরণ: "Elizabeth Bennet" এবং "Darcy" শব্দটি আছে কিন্তু "Austen" শব্দটি নেই এমন সমস্ত এন্ট্রি অনুসন্ধান করতে, নিম্নলিখিত ক্যোয়ারী প্যারামিটার মান ব্যবহার করুন:
    q="Elizabeth+Bennet"+Darcy-Austen
  • বিশেষ (কেস-সংবেদনশীল) কীওয়ার্ড রয়েছে যা আপনি নির্দিষ্ট ক্ষেত্রে অনুসন্ধান করার জন্য অনুসন্ধান পদগুলিতে নির্দিষ্ট করতে পারেন, যেমন:
    • intitle : ফলাফল প্রদান করে যেখানে এই কীওয়ার্ড অনুসরণকারী পাঠ্য শিরোনামে পাওয়া যায়।
    • inauthor : ফলাফল প্রদান করে যেখানে এই কীওয়ার্ডটি অনুসরণকারী পাঠ্য লেখকের মধ্যে পাওয়া যায়।
    • inpublisher : ফলাফল প্রদান করে যেখানে এই কীওয়ার্ড অনুসরণকারী পাঠ্য প্রকাশকের মধ্যে পাওয়া যায়।
    • subject : ফলাফল প্রদান করে যেখানে এই কীওয়ার্ডের অনুসরণকারী পাঠ্যটি ভলিউমের বিভাগ তালিকায় তালিকাভুক্ত করা হয়েছে।
    • isbn : ফলাফল দেখায় যেখানে এই কীওয়ার্ডটি অনুসরণ করা পাঠ্যটি হল ISBN নম্বর।
    • lccn : ফলাফল দেখায় যেখানে এই কীওয়ার্ডটি অনুসরণ করা টেক্সট হল লাইব্রেরি অফ কংগ্রেস কন্ট্রোল নম্বর।
    • oclc : ফলাফল প্রদান করে যেখানে এই কীওয়ার্ডটি অনুসরণ করা টেক্সটটি অনলাইন কম্পিউটার লাইব্রেরি সেন্টার নম্বর।
startIndex সংগ্রহের অবস্থান যেখানে ফলাফলের তালিকা শুরু করতে হবে।
  • একটি সংগ্রহের সমস্ত আইটেমের জন্য যেকোন অনুরোধের জন্য, আপনি অনুরোধের পরামিতিগুলিতে startIndex এবং maxResults উল্লেখ করে ফলাফলগুলিকে পৃষ্ঠায় স্থান দিতে পারেন৷
  • প্রথম আইটেমের সূচক হল 0।
volumeId অনুরোধের সাথে যুক্ত একটি ভলিউম সনাক্ত করে।
  • বুকশেলফ থেকে যোগ বা সরানোর ভলিউম নির্দিষ্ট করে।