การใช้ API

เนื้อหา

  1. บทนํา
    1. การตรวจสอบสิทธิ์และการให้สิทธิ์
    2. รหัส Google Books
    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 คุณควรอ่านการเริ่มต้นใช้งานก่อนเริ่มเขียนโค้ด

การให้สิทธิ์คําขอและระบุแอปพลิเคชันของคุณ

ทุกคําขอที่แอปพลิเคชันส่งไปยัง Books API จําเป็นต้องระบุแอปพลิเคชันของคุณให้ Google ทราบ สามารถระบุแอปพลิเคชันได้ 2 วิธี ได้แก่ การใช้โทเค็น OAuth 2.0 (ซึ่งให้สิทธิ์คําขอ) และ/หรือใช้คีย์ API ของแอปพลิเคชันด้วย 'ต่อไปนี้คือวิธีการพิจารณาว่าจะใช้ตัวเลือกใดต่อไปนี้

  • ถ้าคําขอกําหนดให้มีการให้สิทธิ์ (เช่น คําขอข้อมูลส่วนตัวของแต่ละบุคคล) แอปพลิเคชันจะต้องมอบโทเค็น OAuth 2.0 ที่มีคําขอ แอปพลิเคชันนี้อาจมีคีย์ API ด้วยก็ได้ แต่ไม่จําเป็น
  • หากคําขอไม่ได้กําหนดให้มีการให้สิทธิ์ (เช่น คําขอข้อมูลสาธารณะ) แอปพลิเคชันจะต้องมีคีย์ API หรือโทเค็น OAuth 2.0 หรือทั้ง 2 อย่าง ตัวเลือกใดที่คุณสะดวกที่สุด

เกี่ยวกับโปรโตคอลการให้สิทธิ์

แอปพลิเคชันต้องใช้ OAuth 2.0 เพื่อให้สิทธิ์คำขอ ระบบไม่รองรับโปรโตคอลการให้สิทธิ์อื่นๆ หากแอปพลิเคชันใช้ลงชื่อเข้าใช้ด้วย Google ระบบจะจัดการการให้สิทธิ์บางส่วนแก่คุณ

การให้สิทธิ์คำขอด้วย OAuth 2.0

คําขอที่ส่งถึง API หนังสือสําหรับข้อมูลผู้ใช้ที่ไม่ใช่สาธารณะต้องได้รับสิทธิ์จากผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว

รายละเอียดของกระบวนการให้สิทธิ์หรือ "ขั้นตอน" ของ OAuth 2.0 จะแตกต่างกันไปโดยขึ้นอยู่กับประเภทของแอปพลิเคชันที่คุณเขียน แอปพลิเคชันทุกประเภทจะใช้กระบวนการทั่วไปต่อไปนี้

  1. เมื่อสร้างแอปพลิเคชัน คุณจะลงทะเบียนแอปได้โดยใช้คอนโซล Google API จากนั้น Google จะให้ข้อมูลที่คุณต้องใช้ในภายหลัง เช่น รหัสไคลเอ็นต์และรหัสลับไคลเอ็นต์
  2. เปิดใช้งาน Books API ในคอนโซล Google API (หากไม่เห็น API ดังกล่าวในคอนโซล API ให้ข้ามขั้นตอนนี้ไป)
  3. เมื่อแอปพลิเคชันต้องการเข้าถึงข้อมูลผู้ใช้ แอปจะขอขอบเขตการเข้าถึงที่จำเป็นจาก Google
  4. Google จะแสดงหน้าจอขอคำยินยอมแก่ผู้ใช้เพื่อขอให้ผู้ใช้ให้สิทธิ์แอปพลิเคชันของคุณในการขอข้อมูลบางอย่างของผู้ใช้
  5. หากผู้ใช้อนุมัติ Google จะให้โทเค็นเพื่อการเข้าถึงที่มีอายุชั่วคราวแก่แอปพลิเคชันของคุณ
  6. แอปพลิเคชันขอข้อมูลผู้ใช้โดยแนบโทเค็นเพื่อการเข้าถึงไปกับคำขอ
  7. หาก Google ตัดสินว่าคำขอและโทเค็นของคุณถูกต้อง ระบบจะแสดงข้อมูลที่ขอ

บางกระบวนการจะมีขั้นตอนเพิ่มเติม เช่น การใช้โทเค็นการรีเฟรชเพื่อขอโทเค็นเพื่อการเข้าถึงใหม่ ดูข้อมูลอย่างละเอียดเกี่ยวกับกระบวนการของแอปพลิเคชันประเภทต่างๆ ได้ที่เอกสารประกอบเกี่ยวกับ OAuth 2.0 ของ Google

ข้อมูลขอบเขต OAuth 2.0 สําหรับ Books API มีดังนี้

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

หากต้องการขอสิทธิ์โดยใช้ OAuth 2.0 แอปพลิเคชันของคุณต้องมีข้อมูลขอบเขต รวมถึงข้อมูลที่ Google ให้คุณตอนลงทะเบียนแอปพลิเคชัน (เช่น รหัสไคลเอ็นต์และรหัสลับไคลเอ็นต์)

เคล็ดลับ: ไลบรารีของไคลเอ็นต์ Google APIs จัดการขั้นตอนการให้สิทธิ์บางส่วนให้คุณได้ ไลบรารีเหล่านี้พร้อมให้บริการเป็นภาษาโปรแกรมต่างๆ โปรดดูรายละเอียดเพิ่มเติมที่หน้าที่มีไลบรารีและตัวอย่าง

หาและใช้คีย์ API

คําขอไปยัง Books API สําหรับข้อมูลสาธารณะต้องมีตัวระบุอยู่ด้วย ซึ่งอาจเป็นคีย์ API หรือโทเค็นเพื่อการเข้าถึงก็ได้

วิธีรับคีย์ API

  1. เปิดหน้าข้อมูลเข้าสู่ระบบในคอนโซล API
  2. API นี้รองรับข้อมูลเข้าสู่ระบบ 2 ประเภท สร้างข้อมูลเข้าสู่ระบบที่เหมาะกับโปรเจ็กต์ของคุณ ดังนี้
    • OAuth 2.0: เมื่อใดก็ตามที่แอปพลิเคชันส่งคําขอข้อมูลส่วนตัวของผู้ใช้ แอปพลิเคชันจะต้องส่งโทเค็น OAuth 2.0 พร้อมด้วยคําขอ แอปพลิเคชันของคุณจะส่งรหัสไคลเอ็นต์ไปก่อน และอาจรวมถึงรหัสลับไคลเอ็นต์เพื่อรับโทเค็น คุณสามารถสร้างข้อมูลเข้าสู่ระบบ OAuth 2.0 สําหรับเว็บแอปพลิเคชัน บัญชีบริการ หรือแอปพลิเคชันที่ติดตั้งไว้ได้

      สําหรับข้อมูลเพิ่มเติม โปรดดูเอกสาร OAuth 2.0

    • คีย์ API: คําขอที่ไม่มีโทเค็น OAuth 2.0 ต้องส่งคีย์ API คีย์จะระบุโปรเจ็กต์และให้สิทธิ์เข้าถึง API โควต้า และรายงาน

      API รองรับข้อจํากัดหลายประเภทในคีย์ API หากไม่มีคีย์ API ที่ต้องการอยู่แล้ว ให้สร้างคีย์ API ในคอนโซลโดยคลิกสร้างข้อมูลเข้าสู่ระบบ & gt; คีย์ API คุณจํากัดคีย์ก่อนนําไปใช้ในเวอร์ชันที่ใช้งานจริงได้โดยคลิกจํากัดคีย์ แล้วเลือกข้อจํากัดข้อใดข้อหนึ่ง

โปรดทําตามแนวทางปฏิบัติแนะนําในการใช้คีย์ API อย่างปลอดภัยเพื่อให้คีย์ API ปลอดภัย

เมื่อมีคีย์ API แล้ว แอปพลิเคชันจะเพิ่มพารามิเตอร์การค้นหา key=yourAPIKey ต่อท้าย URL คําขอทั้งหมดได้

คีย์ API มีความปลอดภัยสําหรับการฝังใน URL โดยไม่จําเป็นต้องมีการเข้ารหัส

รหัส Google Books

คุณต้องระบุช่องรหัสที่มีการเรียกเมธอด API บางรายการ รหัสที่ใช้ใน Google Books มีอยู่ 3 ประเภท ได้แก่

  • รหัสเล่ม - สตริงที่ไม่ซ้ํากันซึ่งแต่ละเล่มที่ Google Books รู้จัก ตัวอย่างของรหัสระดับเสียงคือ _LettPDhwR0C คุณใช้ API เพื่อรับรหัสวอลุ่มได้โดยสร้างคําขอที่แสดงทรัพยากรวอลุ่ม แต่คุณจะดูรหัสวอลุ่มได้ในช่อง id
  • รหัสชั้นวางหนังสือ - ค่าตัวเลขที่กําหนดให้ชั้นวางหนังสือในห้องสมุดของผู้ใช้ Google มีชั้นวางที่กําหนดไว้ล่วงหน้าบางส่วนให้ผู้ใช้ทุกคนด้วยรหัสต่อไปนี้
    • รายการโปรด: 0
    • จํานวนที่สั่งซื้อ: 1
    • การอ่าน: 2
    • กําลังอ่าน: 3
    • อ่านแล้ว: 4
    • ตรวจสอบแล้ว: 5
    • ดูล่าสุด: 6
    • eBook ของฉัน: 7
    • หนังสือสําหรับคุณ: 8 หากเราไม่มีคําแนะนําสําหรับผู้ใช้ จะไม่มีชั้นวางนี้
    ชั้นวางที่กําหนดเองมีรหัสมากกว่า 1,000 รหัสชั้นวางหนังสือจะไม่ซ้ํากันสําหรับผู้ใช้แต่ละคน กล่าวคือ ผู้ใช้ 2 คนจะมีชั้นวางหนังสือที่มีรหัสเดียวกันซึ่งอ้างอิงถึงชั้นวางหนังสือที่แตกต่างกันได้ คุณใช้ API เพื่อรับรหัสชั้นวางหนังสือได้โดยการส่งคําขอที่แสดงทรัพยากรชั้นวางหนังสือ คุณดูรหัสชั้นวางหนังสือได้ในช่อง id
  • User ID - ค่าตัวเลขที่ไม่ซ้ํากันซึ่งกําหนดให้กับผู้ใช้แต่ละราย ค่าเหล่านี้ไม่จําเป็นต้องเป็นค่ารหัสเดียวกับที่ใช้ในบริการอื่นๆ ของ Google ปัจจุบันวิธีเดียวที่จะดึง User-ID ได้คือการดึงข้อมูลจาก UserLink ในแหล่งข้อมูลของชั้นวางหนังสือที่ดึงข้อมูลด้วยคําขอที่ได้รับการตรวจสอบสิทธิ์แล้ว ผู้ใช้ยังได้รับ User-ID ของตนเองจากเว็บไซต์ Books ได้ด้วย ผู้ใช้จะหารหัสผู้ใช้สําหรับผู้ใช้รายอื่นผ่าน API หรือเว็บไซต์ Books ไม่ได้ และผู้ใช้ต้องแชร์ข้อมูลดังกล่าวอย่างชัดแจ้งทางอีเมล

รหัสในเว็บไซต์ Google Books

รหัสที่คุณใช้กับ Books API เป็นรหัสเดียวกับที่ใช้ในเว็บไซต์ Google Books

  • รหัสวอลุ่ม

    เมื่อดูปริมาณหนึ่งๆ ในเว็บไซต์ คุณจะเห็นรหัสปริมาณในพารามิเตอร์ของ URL id ตัวอย่าง

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

  • รหัสชั้นวางหนังสือ

    เมื่อดูชั้นวางหนังสือที่เฉพาะเจาะจงในเว็บไซต์ คุณจะพบรหัสชั้นวางหนังสือในพารามิเตอร์ของ URL as_coll ตัวอย่าง

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

  • รหัสผู้ใช้

    เมื่อดูคลังในเว็บไซต์ คุณจะเห็นรหัสผู้ใช้ในพารามิเตอร์ของ URL uid ตัวอย่าง

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

การตั้งค่าตําแหน่งของผู้ใช้

Google หนังสือเคารพในลิขสิทธิ์ สัญญา และข้อจํากัดทางกฎหมายอื่นๆ ที่เกี่ยวข้องกับตําแหน่งของผู้ใช้ปลายทาง ผู้ใช้บางรายจึงอาจไม่สามารถเข้าถึง เนื้อหาหนังสือจากบางประเทศได้ ตัวอย่างเช่น หนังสือบางเล่มเป็น "previewable" เฉพาะในสหรัฐอเมริกาเท่านั้น เราไม่ใส่ลิงก์ตัวอย่างดังกล่าวต่อผู้ใช้ในประเทศอื่นๆ ดังนั้น ผลลัพธ์ของ API จึงถูกจํากัดตามที่อยู่ IP ของแอปพลิเคชันหรือแอปพลิเคชันของไคลเอ็นต์

การใช้งานกับวอลุ่ม

การดําเนินการค้นหา

คุณดําเนินการค้นหาวอลุ่มได้โดยส่งคําขอ HTTP GETไปยัง URI ต่อไปนี้

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

คําขอนี้มีพารามิเตอร์ที่จําเป็นเพียงรายการเดียว ดังนี้

  • q - ค้นหาวอลุ่มที่มีสตริงข้อความนี้ มีคีย์เวิร์ดพิเศษที่คุณระบุในข้อความค้นหาที่จะค้นหาในช่องใดช่องหนึ่งได้ เช่น
    • intitle: แสดงผลการค้นหาที่พบข้อความต่อจากคีย์เวิร์ดนี้ในชื่อ
    • inauthor: แสดงผลการค้นหาที่พบข้อความหลังจากคีย์เวิร์ดนี้ในตัวผู้เขียน
    • inpublisher: แสดงผลลัพธ์ที่พบข้อความหลังจากคีย์เวิร์ดนี้พบในผู้เผยแพร่โฆษณา
    • subject: แสดงผลการค้นหาที่ข้อความซึ่งต่อจากคีย์เวิร์ดนี้อยู่ในรายการหมวดหมู่ของปริมาณ
    • isbn: แสดงผลข้อความที่ข้อความหลังคีย์เวิร์ดนี้เป็นตัวเลข ISBN
    • lccn: แสดงผลลัพธ์ที่ข้อความหลังจากคีย์เวิร์ดนี้คือ Library of Congress Control Number
    • oclc: แสดงผลลัพธ์ที่ข้อความหลังจากคีย์เวิร์ดนี้คือหมายเลขศูนย์ห้องสมุดคอมพิวเตอร์ออนไลน์

ส่งคำขอ

ตัวอย่างการค้นหา Daniel Keyes' "Flowers for Algernon"

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

หมายเหตุ: การค้นหาไม่จําเป็นต้องมีการตรวจสอบสิทธิ์ คุณจึงไม่จําเป็นต้องระบุส่วนหัว HTTP ของ Authorization ด้วยคําขอ GET อย่างไรก็ตาม หากการโทรทําการตรวจสอบสิทธิ์ ปริมาณแต่ละรายการก็จะมีข้อมูลเฉพาะของผู้ใช้ เช่น สถานะการซื้อ

คำตอบ

หากคําขอสําเร็จ เซิร์ฟเวอร์จะตอบสนองด้วยรหัสสถานะ HTTP 200 OK และปริมาณจะดังที่ระบุดังนี้

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 eBook ฟรี
  • paid-ebooks - แสดงเฉพาะผลการค้นหาที่เป็นราคา Google eBook
  • ebooks - แสดงเฉพาะผลการค้นหาที่เป็น Google eBook แบบชําระเงินหรือฟรี ตัวอย่างหนังสือที่ไม่มี eBook คือเนื้อหาของผู้จัดพิมพ์ที่มีวางจําหน่ายในตัวอย่างแบบจํากัดเท่านั้น ไม่วางจําหน่ายหรือนิตยสาร

ตัวอย่างต่อไปนี้จํากัดผลการค้นหาไว้เฉพาะ eBook ที่ใช้งานได้ฟรี

GET https://www.googleapis.com/books/v1/volumes?q=flowers&filter=free-ebooks&key=yourAPIKey
การใส่เลขหน้า

คุณใส่เลขหน้าให้รายการวอลุ่มได้โดยระบุ 2 ค่าในพารามิเตอร์ของคําขอ

  • 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 - แสดงเฉพาะช่องบางช่อง ดูคําอธิบายช่องที่มีเครื่องหมายดอกจัน 2 อันในข้อมูลอ้างอิงระดับเสียง เพื่อดูว่าช่องใดที่รวมอยู่

ตัวอย่างต่อไปนี้แสดงผลการค้นหาที่มีปริมาณข้อมูลจํากัด

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

กําลังดึงข้อมูลวอลุ่มที่ระบุ

คุณเรียกข้อมูลสําหรับวอลุ่มที่ระบุได้โดยส่งคําขอ HTTP GET ไปยัง URI ของทรัพยากรวอลุ่ม

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

แทนที่พารามิเตอร์เส้นทาง volumeId ด้วยรหัสของวอลุ่มที่จะดึง ไปที่ส่วนรหัส Google Books เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับรหัสเล่ม

ส่งคำขอ

ต่อไปนี้คือตัวอย่างคําขอ GET ที่ได้รับ 1 ชุด

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

หมายเหตุ: การดึงข้อมูลปริมาณไม่ต้องอาศัยการตรวจสอบสิทธิ์ ดังนั้นคุณไม่ต้องระบุส่วนหัว HTTP Authorization ด้วยคําขอ GET อย่างไรก็ตาม หากการโทรดําเนินการด้วยการตรวจสอบสิทธิ์ วอลุ่มจะรวมข้อมูลเฉพาะของผู้ใช้ เช่น สถานะการซื้อ

คำตอบ

หากคําขอสําเร็จ เซิร์ฟเวอร์จะตอบสนองด้วยรหัสสถานะ HTTP 200 OK และทรัพยากร Volume ที่ขอ:

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มีประโยชน์เป็นพิเศษสําหรับการระบุฟีเจอร์ที่พร้อมใช้งานสําหรับ eBook epub คือ eBook ที่มีรูปแบบข้อความต่อเนื่อง ส่วน epub จะมีพร็อพเพอร์ตี้ isAvailable ที่ระบุว่า eBook ประเภทนี้พร้อมใช้งานหรือไม่ และจะมีลิงก์ดาวน์โหลดหากมีตัวอย่างหนังสือ หรือหากผู้ใช้อ่านหนังสือได้ทั้งจากการซื้อหนังสือหรือหนังสือเป็นสาธารณสมบัติในตําแหน่งของผู้ใช้ pdf สําหรับ Google Books บ่งบอกว่า eBook เป็นหน้าที่สแกนแล้ว โดยมีรายละเอียดคล้ายกัน เช่น หนังสือพร้อมใช้งานและลิงก์ดาวน์โหลด Google แนะนําไฟล์ epub รายการสําหรับ eReader และสมาร์ทโฟน เนื่องจากหน้าเว็บที่สแกนอาจอ่านได้ยากในอุปกรณ์เหล่านี้ หากไม่มีส่วนที่เป็น accessInfo แสดงว่าโวลุ่มจะไม่มีเป็น Google eBook

พารามิเตอร์การค้นหาที่ไม่บังคับ

นอกเหนือจากพารามิเตอร์การค้นหามาตรฐานแล้ว คุณสามารถใช้พารามิเตอร์การค้นหาต่อไปนี้เมื่อดึงข้อมูลปริมาณหนึ่งๆ

การคาดคะเน

คุณสามารถใช้พารามิเตอร์ projection กับค่าใดค่าหนึ่งต่อไปนี้เพื่อระบุชุดช่องวอลุ่มที่กําหนดไว้ล่วงหน้าที่จะแสดง

  • full - แสดงช่องระดับเสียงทั้งหมด
  • lite - แสดงเฉพาะช่องบางช่อง ดูคําอธิบายช่องที่มีเครื่องหมายดอกจัน 2 อันในข้อมูลอ้างอิงระดับเสียง เพื่อดูว่าช่องใดที่รวมอยู่

ตัวอย่างต่อไปนี้จะแสดงผลข้อมูลปริมาณที่จํากัดสําหรับหนังสือฉบับเดียว

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

การใช้งานชั้นวางหนังสือ

กําลังเรียกดูรายการชั้นวางหนังสือสาธารณะของผู้ใช้

คุณเรียกดูรายการชั้นวางหนังสือสาธารณะได้โดยการส่งคําขอ HTTP GET ไปยัง URI ที่มีรูปแบบต่อไปนี้

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

แทนที่พารามิเตอร์เส้นทาง userId ด้วยรหัสของผู้ใช้ที่มีชั้นวางหนังสือที่คุณต้องการเรียกดู ดูข้อมูลเพิ่มเติมเกี่ยวกับ User-ID ในส่วนรหัส Google Books

ส่งคำขอ

ตัวอย่างเช่น

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

เนื่องจากผู้ใช้ไม่จําเป็นต้องผ่านการตรวจสอบสิทธิ์เพื่อดึงข้อมูลเกี่ยวกับชั้นวางหนังสือสาธารณะ คุณจึงไม่ต้องระบุส่วนหัว HTTP Authorization ด้วยคําขอ GET

คำตอบ

หากคําขอประสบความสําเร็จ เซิร์ฟเวอร์จะตอบสนองด้วยรหัสสถานะ HTTP 200 OK และรายการของชั้นวางหนังสือ

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"
  },
  ...
 ]
}

พารามิเตอร์การค้นหาที่ไม่บังคับ

คุณสามารถใช้พารามิเตอร์การค้นหามาตรฐานเมื่อเรียกดูรายการชั้นวางหนังสือสาธารณะของผู้ใช้

กําลังเรียกดูชั้นวางหนังสือสาธารณะที่เจาะจง

คุณเรียกดูชั้นวางหนังสือสาธารณะที่เฉพาะเจาะจงได้โดยส่งคําขอ HTTP GET ไปยัง URI ที่มีรูปแบบดังนี้

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

แทนที่พารามิเตอร์เส้นทาง userId และ shelf ด้วยรหัสที่ระบุผู้ใช้และชั้นวางหนังสือที่ต้องการดึงข้อมูล ดูข้อมูลเพิ่มเติมในส่วนรหัส Google Books

ส่งคำขอ

ตัวอย่างเช่น

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

เนื่องจากผู้ใช้ไม่จําเป็นต้องผ่านการตรวจสอบสิทธิ์เพื่อดึงข้อมูลเกี่ยวกับชั้นวางหนังสือสาธารณะ คุณจึงไม่ต้องระบุส่วนหัว HTTP Authorization ด้วยคําขอ GET

คำตอบ

หากคําขอสําเร็จ เซิร์ฟเวอร์จะตอบสนองด้วยรหัสสถานะ HTTP 200 OK และทรัพยากรของชั้นวางหนังสือ

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"
}

พารามิเตอร์การค้นหาที่ไม่บังคับ

คุณสามารถใช้พารามิเตอร์การค้นหามาตรฐานเมื่อดึงข้อมูลชั้นวางหนังสือสาธารณะที่ต้องการ

กําลังเรียกดูรายการหนังสือบนชั้นวางหนังสือสาธารณะ

คุณสามารถเรียกดูรายการวอลุ่มบนชั้นวางหนังสือสาธารณะของผู้ใช้ได้โดยส่ง HTTP GET เพื่อขอ URI ที่มีรูปแบบต่อไปนี้

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

แทนที่พารามิเตอร์เส้นทาง userId และ shelf ด้วยรหัสที่ระบุผู้ใช้และชั้นวางหนังสือที่ต้องการดึงข้อมูล ดูข้อมูลเพิ่มเติมในส่วนรหัส Google Books

เนื่องจากผู้ใช้ไม่จําเป็นต้องผ่านการตรวจสอบสิทธิ์เพื่อดึงข้อมูลเกี่ยวกับชั้นวางหนังสือสาธารณะ คุณจึงไม่ต้องระบุส่วนหัว HTTP Authorization ด้วยคําขอ GET

คำตอบ

หากคําขอสําเร็จ เซิร์ฟเวอร์จะตอบสนองด้วยรหัสสถานะ HTTP 200 OKและรายการชั้นวางหนังสือของผู้ใช้ ดังนี้

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
}

พารามิเตอร์การค้นหาที่ไม่บังคับ

นอกจากพารามิเตอร์การค้นหามาตรฐานแล้ว คุณสามารถใช้พารามิเตอร์การค้นหาต่อไปนี้เมื่อดึงรายการระดับเสียงบนชั้นวางหนังสือสาธารณะ

การใส่เลขหน้า

คุณใส่เลขหน้าให้รายการวอลุ่มได้โดยระบุ 2 ค่าในพารามิเตอร์ของคําขอ

  • startIndex - ตําแหน่งในคอลเล็กชันที่จะเริ่มต้น ดัชนีของรายการแรกคือ 0
  • maxResults - จํานวนผลลัพธ์สูงสุดที่จะส่งคืน ค่าเริ่มต้นคือ 10 และค่าสูงสุดที่ใช้ได้คือ 40

การใช้งานชั้นวางหนังสือใน "ห้องสมุดของฉัน"

คําขอ "ห้องสมุดของฉันทั้งหมด&คําอนุญาตจะมีผลกับข้อมูลของผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว

กําลังเรียกดูรายการชั้นวางหนังสือ

คุณสามารถเรียกดูรายการชั้นวางหนังสือของผู้ใช้ที่ตรวจสอบสิทธิ์แล้วทั้งหมดได้โดยส่งคําขอ HTTP GET ไปยัง URI ที่มีรูปแบบต่อไปนี้

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

ส่งคำขอ

ตัวอย่างเช่น

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

หมายเหตุ: ผู้ใช้ต้องผ่านการตรวจสอบสิทธิ์เพื่อเรียกข้อมูลรายการ "ห้องสมุดของฉัน"ชั้นวางหนังสือ ดังนั้นคุณต้องระบุส่วนหัว HTTP ของ Authorization ด้วยคําขอ GET

คำตอบ

หากคําขอประสบความสําเร็จ เซิร์ฟเวอร์จะตอบสนองด้วยรหัสสถานะ HTTP 200 OK และรายการของชั้นวางหนังสือทั้งหมดสําหรับผู้ใช้ที่ได้รับการตรวจสอบสิทธิ์ในปัจจุบัน:

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"
  }
 ]
}

พารามิเตอร์การค้นหาที่ไม่บังคับ

คุณสามารถใช้พารามิเตอร์การค้นหามาตรฐานเมื่อเรียกดูรายการชั้นวางหนังสือของผู้ใช้ที่ได้รับการตรวจสอบแล้ว

กําลังเรียกดูรายการหนังสือบนชั้นวางหนังสือของฉัน

คุณสามารถดึงข้อมูลชุดวอลุ่มในชั้นวางหนังสือของผู้ใช้ที่ตรวจสอบสิทธิ์แล้วได้โดยส่งคําขอ HTTP GET ไปยัง URI ที่มีรูปแบบต่อไปนี้

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

แทนที่พารามิเตอร์เส้นทาง ชั้นวาง ด้วยรหัสของชั้นวางหนังสือ ดูข้อมูลเพิ่มเติมเกี่ยวกับรหัสชั้นวางหนังสือได้ที่ส่วนรหัส Google Books

ส่งคำขอ

ตัวอย่างเช่น

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

หมายเหตุ: ผู้ใช้ต้องผ่านการตรวจสอบสิทธิ์จึงจะเรียกข้อมูลรายการวอลุ่มและหนังสือของฉันได้ คุณจึงต้องระบุส่วนหัว HTTP ของ Authorization ด้วยคําขอ GET

คำตอบ

หากคําขอสําเร็จ เซิร์ฟเวอร์จะตอบสนองด้วยรหัสสถานะ HTTP 200 OK และรายการวอลุ่มของชั้นวาง ดังนี้

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
}

พารามิเตอร์การค้นหาที่ไม่บังคับ

นอกเหนือจากพารามิเตอร์การค้นหามาตรฐานแล้ว คุณสามารถใช้พารามิเตอร์การค้นหาต่อไปนี้เมื่อดึงรายการปริมาณในชั้นวางหนังสือของผู้ใช้ที่ได้รับการตรวจสอบแล้ว

การใส่เลขหน้า

คุณใส่เลขหน้าให้รายการวอลุ่มได้โดยระบุ 2 ค่าในพารามิเตอร์ของคําขอ

  • startIndex - ตําแหน่งในคอลเล็กชันที่จะเริ่มต้น ดัชนีของรายการแรกคือ 0
  • maxResults - จํานวนผลลัพธ์สูงสุดที่จะส่งคืน ค่าเริ่มต้นคือ 10

การเพิ่มปริมาณลงในชั้นวางหนังสือ

หากต้องการเพิ่มปริมาณไปยังชั้นวางหนังสือของผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว ให้ส่งคําขอ HTTP POST ไปยัง URI ที่มีรูปแบบต่อไปนี้

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

แทนที่พารามิเตอร์เส้นทาง ชั้นวาง ด้วยรหัสของชั้นวางหนังสือ ดูข้อมูลเพิ่มเติมเกี่ยวกับรหัสชั้นวางหนังสือได้ที่ส่วนรหัส Google Books

คําขอมีพารามิเตอร์การค้นหาที่ต้องระบุ 1 รายการดังนี้

  • volumeId - รหัสของระดับเสียง ไปที่ส่วนรหัส Google Books เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับรหัสเล่ม

ส่งคำขอ

ตัวอย่างวิธีเพิ่ม "Flowers for Algernon" ในชั้นวาง "รายการโปรด" ชั้นหนังสือ:

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

หมายเหตุ: ผู้ใช้ต้องผ่านการตรวจสอบสิทธิ์เพื่อแก้ไขชั้นวางหนังสือ ดังนั้นคุณต้องระบุส่วนหัว HTTP ของ Authorization ด้วยคําขอ POST แต่ POST ไม่จําเป็นต้องมีข้อมูล

คำตอบ

หากคําขอสําเร็จ เซิร์ฟเวอร์จะตอบสนองด้วยรหัสสถานะ HTTP 204 No Content

พารามิเตอร์การค้นหาที่ไม่บังคับ

คุณสามารถใช้พารามิเตอร์การค้นหามาตรฐานเมื่อเพิ่มปริมาณไปยังชั้นวางหนังสือของผู้ใช้ที่ได้รับการตรวจสอบแล้ว

กําลังนําหนังสือออกจากชั้นวางของฉัน

หากต้องการนําวอลุ่มออกจากชั้นวางหนังสือที่ตรวจสอบสิทธิ์แล้วของผู้ใช้ ให้ส่ง HTTP POST ไปยัง URI ที่มีรูปแบบดังนี้

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

แทนที่พารามิเตอร์เส้นทาง ชั้นวาง ด้วยรหัสของชั้นวางหนังสือ ดูข้อมูลเพิ่มเติมเกี่ยวกับรหัสชั้นวางหนังสือได้ที่ส่วนรหัส Google Books

คําขอมีพารามิเตอร์การค้นหาที่ต้องระบุ 1 รายการดังนี้

  • volumeId - รหัสของระดับเสียง ดู ส่วนรหัส Google Books สําหรับข้อมูลเพิ่มเติมเกี่ยวกับรหัสชุด

ส่งคำขอ

ต่อไปนี้เป็นตัวอย่างในการนํา "Flowers for Algernon" ออกจาก "Favorites" ชั้นวางหนังสือ:

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

หมายเหตุ: ผู้ใช้ต้องผ่านการตรวจสอบสิทธิ์เพื่อแก้ไขชั้นวางหนังสือ ดังนั้นคุณต้องระบุส่วนหัว HTTP ของ Authorization ด้วยคําขอ POST แต่ POST ไม่จําเป็นต้องมีข้อมูล

คำตอบ

หากคําขอประสบความสําเร็จ เซิร์ฟเวอร์จะตอบกลับด้วยรหัสสถานะ 204 No Content

พารามิเตอร์การค้นหาที่ไม่บังคับ

คุณสามารถใช้พารามิเตอร์การค้นหามาตรฐานเมื่อนําวอลุ่มออกจากชั้นวางหนังสือที่ผู้ใช้ตรวจสอบสิทธิ์แล้ว

กําลังล้างหนังสือทุกเล่มออกจากชั้นวางหนังสือ

หากต้องการนําหนังสือทุกเล่มออกจากชั้นวางของผู้ใช้ที่ผ่านการตรวจสอบสิทธิ์แล้ว ให้ส่ง HTTP POST ไปยัง URI ที่มีรูปแบบต่อไปนี้

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

แทนที่พารามิเตอร์เส้นทาง ชั้นวาง ด้วยรหัสของชั้นวางหนังสือ ดูข้อมูลเพิ่มเติมเกี่ยวกับรหัสชั้นวางหนังสือได้ที่ส่วนรหัส Google Books

ส่งคำขอ

ตัวอย่างเพื่อล้าง&"รายการโปรด"ชั้นวางหนังสือ

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
  

หมายเหตุ: ผู้ใช้ต้องผ่านการตรวจสอบสิทธิ์เพื่อแก้ไขชั้นวางหนังสือ ดังนั้นคุณต้องระบุส่วนหัว HTTP ของ Authorization ด้วยคําขอ POST แต่ POST ไม่จําเป็นต้องมีข้อมูล

คำตอบ

หากคําขอสําเร็จ เซิร์ฟเวอร์จะตอบกลับด้วยรหัสสถานะ 204 No Content

พารามิเตอร์การค้นหาที่ไม่บังคับ

คุณสามารถใช้พารามิเตอร์การค้นหามาตรฐานเมื่อล้างปริมาณทั้งหมดจากชั้นวางหนังสือของผู้ใช้ที่ได้รับการตรวจสอบแล้ว

การอ้างอิงพารามิเตอร์การค้นหา

พารามิเตอร์การค้นหาที่ใช้กับ Books API ได้สรุปไว้ในส่วนนี้ค่าพารามิเตอร์ทั้งหมดต้องเข้ารหัส URL

พารามิเตอร์การค้นหามาตรฐาน

พารามิเตอร์การค้นหาที่ใช้กับการดําเนินการ Books API ทั้งหมดจะบันทึกไว้ที่พารามิเตอร์ของระบบ

พารามิเตอร์การค้นหาเฉพาะ API

พารามิเตอร์คําขอที่ใช้กับการดําเนินการบางอย่างใน Books API ได้แบบสรุปในตารางต่อไปนี้

พารามิเตอร์ ความหมาย หมายเหตุ ประโยชน์ต่อการให้บริการ
download จํากัดปริมาณตามความพร้อมใช้งานเมื่อดาวน์โหลด
  • ปัจจุบันค่าที่รองรับมีเพียง epub เท่านั้น
  • อาจต้องทําการซื้อเพื่อรับสิทธิ์เข้าถึง
filter กรองผลการค้นหาตามประเภทปริมาณและความพร้อมใช้งาน
  • ตัวกรองที่รองรับ ได้แก่
    • filter=partial - จํากัดผลการค้นหาให้แสดงได้เฉพาะเล่มที่แสดงตัวอย่างข้อความได้บางส่วน
    • filter=full - จํากัดผลการค้นหาให้แสดงเฉพาะเล่มที่ข้อความทั้งหมดสามารถดูได้
    • filter=free-ebooks - จํากัดผลการค้นหาใน Google eBook ฟรี
    • filter=paid-ebooks - จํากัดผลการค้นหาใน Google eBook ที่มีราคาจําหน่าย
    • filter=ebooks - จํากัดผลการค้นหาเป็น eBook ของ Google ทั้งแบบมีค่าใช้จ่ายหรือฟรี ตัวอย่างหนังสือที่ไม่มี eBook คือเนื้อหาของผู้จัดพิมพ์ที่มีวางจําหน่ายในตัวอย่างแบบจํากัดเท่านั้น และไม่มีการจําหน่ายหรือนิตยสาร

 

langRestrict จํากัดปริมาณที่ส่งคืนให้อยู่ในเล่มที่ติดแท็กด้วยภาษาที่ระบุ
  • จํากัดผลการค้นหาเฉพาะภาษาที่ใช้ในบางภาษา โดยระบุ langRestrict เป็นรหัส ISO-639-1 แบบตัวอักษร 2 ตัว เช่น "en" หรือ "fr"
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 จะแสดงรายการทั้งหมดที่ตรงกับข้อความค้นหาทั้งหมด (เช่น การใช้ "และ" ระหว่างคํา) API จะค้นหาคําที่สมบูรณ์ (และคําที่เกี่ยวข้องที่มีต้นกําเนิดเดียวกัน) ไม่ใช่สตริงย่อย เช่นเดียวกับการค้นเว็บของ Google
  • หากต้องการค้นหาวลีที่ตรงกัน ให้ใส่วลีในเครื่องหมายคําพูด q="exact phrase"
  • หากต้องการยกเว้นรายการที่ตรงกับคําที่ระบุ โปรดใช้แบบฟอร์ม q=-term
  • ข้อความค้นหานี้ไม่คํานึงถึงตัวพิมพ์เล็กหรือใหญ่
  • ตัวอย่าง: หากต้องการค้นหารายการทั้งหมดที่มีวลี "Elizabeth Bennet" และคําว่า "Darcy" แต่ไม่มีคําว่า "Austen" ให้ใช้พารามิเตอร์การค้นหาต่อไปนี้:
    q="Elizabeth+Bennet"+Darcy-Austen
  • มีคีย์เวิร์ดพิเศษ (คํานึงถึงตัวพิมพ์เล็กหรือใหญ่) ซึ่งคุณระบุไว้ในข้อความค้นหาเพื่อค้นหาในช่องที่ต้องการได้ เช่น
    • intitle: แสดงผลการค้นหาที่พบข้อความหลังจากคีย์เวิร์ดนี้ในชื่อ
    • inauthor: ส่งคืนผลลัพธ์ที่พบข้อความหลังจากคีย์เวิร์ดนี้ในผู้เขียน
    • inpublisher: แสดงผลลัพธ์ที่พบข้อความต่อจากคีย์เวิร์ดนี้ในผู้เผยแพร่
    • subject: แสดงผลลัพธ์ที่ข้อความซึ่งอยู่หลังคีย์เวิร์ดนี้อยู่ในรายการหมวดหมู่ของปริมาณ
    • isbn: ส่งคืนผลลัพธ์ที่มีข้อความที่ต่อท้ายคีย์เวิร์ดนี้เป็นหมายเลข ISBN
    • lccn: แสดงผลการค้นหาที่ข้อความซึ่งต่อจากคีย์เวิร์ดนี้คือ Library of Congress Control Number
    • oclc: แสดงผลการค้นหาที่ข้อความซึ่งอยู่หลังคีย์เวิร์ดนี้เป็นหมายเลขศูนย์ห้องสมุดคอมพิวเตอร์ออนไลน์
startIndex ตําแหน่งในคอลเล็กชันที่จะเริ่มสร้างรายการผลลัพธ์
  • คุณส่งคําขอระบุผลลัพธ์สําหรับคําขอทุกรายการในคอลเล็กชันได้ โดยระบุ startIndex และ maxResults ในพารามิเตอร์ของคําขอ
  • ดัชนีของรายการแรกคือ 0
volumeId ระบุวอลุ่มที่เชื่อมโยงกับคําขอ
  • ระบุปริมาณที่จะเพิ่มหรือนําออกจากชั้นวางหนังสือ