Penting: Kami akan menghentikan dukungan untuk JSON API v2.0 pada 30 September 2024. Agar dapat terus berfungsi, update aplikasi yang mengandalkan JSON API v2.0 ke versi API terbaru. Untuk versi terbaru, gunakan link di menu navigasi sebelah kiri.
Dokumen ini menjelaskan cara menggunakan fitur umum Blogger JSON API menggunakan gaya panggilan RESTful.
Konten
Pengantar
Dokumen ini ditujukan untuk developer yang ingin menulis aplikasi yang dapat berinteraksi dengan Blogger JSON API. Blogger adalah alat untuk membuat situs yang memungkinkan orang memublikasikan pemikiran mereka secara berkelanjutan.
Jika belum memahami konsep Blogger, Anda harus membaca bagian Memulai sebelum mulai membuat kode.
Mengizinkan permintaan dan mengidentifikasi aplikasi Anda
Setiap permintaan yang dikirimkan aplikasi Anda ke Blogger JSON API harus mengidentifikasi aplikasi Anda ke Google. Ada dua cara untuk mengidentifikasi aplikasi Anda: menggunakan token OAuth 2.0 (yang juga mengizinkan permintaan) dan/atau menggunakan kunci API aplikasi. Berikut cara menentukan opsi yang akan digunakan:
- Jika permintaan tersebut memerlukan otorisasi (seperti permintaan untuk data pribadi individu), aplikasi harus menyediakan token OAuth 2.0 dengan permintaan tersebut. Aplikasi juga dapat menyediakan kunci API, tetapi sebenarnya tidak harus.
- Jika permintaan tersebut tidak memerlukan otorisasi (seperti permintaan untuk data publik), aplikasi harus menyediakan kunci API atau token OAuth 2.0, atau keduanya—opsi apa pun yang paling nyaman bagi Anda.
Tentang protokol otorisasi
Aplikasi Anda harus menggunakan OAuth 2.0 untuk mengizinkan permintaan. Tidak ada protokol otorisasi lain yang didukung.
Catatan: Blogger JSON API saat ini tidak mendukung login bersamaan dengan meminta akses data (campuran) atau delegasi otoritas seluruh domain (2LO).
Mengizinkan permintaan dengan OAuth 2.0
Permintaan ke Blogger JSON API untuk data pengguna non-publik harus diizinkan oleh pengguna yang diautentikasi.
Detail proses otorisasi, atau "alur", untuk OAuth 2.0 bervariasi sedikit bervariasi bergantung pada jenis aplikasi yang Anda tulis. Proses umum berikut berlaku untuk semua jenis aplikasi:
- Saat membuat aplikasi, Anda mendaftarkannya ke Google. Selanjutnya, Google memberikan informasi yang akan Anda perlukan nanti, seperti client ID dan rahasia klien.
- Aktifkan Blogger JSON API pada panel Services di Konsol API Google. (Jika tidak tercantum di Konsol, lewati langkah ini.)
- Saat memerlukan akses ke data pengguna, aplikasi Anda akan meminta cakupan akses tertentu kepada Google.
- Google menampilkan dialog OAuth kepada pengguna, yang meminta mereka untuk mengizinkan aplikasi Anda meminta beberapa data mereka.
- Jika pengguna menyetujui, Google akan memberikan token akses berumur singkat ke aplikasi Anda.
- Aplikasi Anda meminta data pengguna, dengan melampirkan token akses ke permintaan.
- Jika Google menentukan bahwa permintaan dan token Anda valid, data yang diminta akan ditampilkan.
Beberapa alur mencakup langkah-langkah tambahan, seperti menggunakan token refresh untuk memperoleh token akses baru. Guna mengetahui informasi mendetail tentang alur untuk berbagai jenis aplikasi, lihat dokumentasi OAuth 2.0 Google.
Berikut informasi cakupan OAuth 2.0 untuk Blogger JSON API:
https://www.googleapis.com/auth/blogger
Untuk meminta akses menggunakan OAuth 2.0, aplikasi Anda memerlukan informasi cakupan, serta informasi yang disediakan Google selama pendaftaran aplikasi (seperti ID klien dan/atau rahasia klien).
Tips: Library klien Google API dapat menangani beberapa proses otorisasi untuk Anda. Library ini tersedia untuk berbagai bahasa pemrograman. Lihat halaman Library dan Sample untuk mengetahui detail selengkapnya.
Mendapatkan dan menggunakan kunci API
Permintaan ke Blogger JSON API untuk data publik harus disertai dengan ID, yang dapat berupa kunci API atau token autentikasi.
Untuk mendapatkan kunci API, buka Konsol API. Di panel Layanan, aktifkan [api_name]; jika Persyaratan Layanan muncul, baca dan setujui Persyaratan Layanan.
Selanjutnya, buka panel Akses API. Kunci API berada di dekat bagian bawah panel tersebut, di bagian berjudul "Akses API Sederhana".
Setelah Anda memiliki kunci API, aplikasi Anda dapat menambahkan parameter kueri key=yourAPIKey
ke semua URL permintaan.
Kunci API aman untuk disematkan dalam URL; tidak memerlukan encoding apa pun.
Menangani Blog
Mengambil Blog
Anda dapat mengambil informasi untuk Resource Blog tertentu dengan mengirimkan permintaan HTTP GET
ke URI Blog. URI untuk Resource Blog memiliki format berikut:
https://www.googleapis.com/blogger/v2/blogs/blogId
Permintaan
Berikut ini contohnya:
GET https://www.googleapis.com/blogger/v2/blogs/2399953&key=YOUR-API-KEY
Karena pengguna tidak harus diautentikasi untuk mengambil Blog publik, Anda
tidak perlu memberikan header HTTP Authorization
dengan
permintaan GET
ini. Namun, jika tidak memberikan header tersebut, Anda harus menyediakan kunci API.
Blogger juga memiliki Blog pribadi, yang memerlukan autentikasi.
Respons
Jika permintaan berhasil, server merespons dengan kode status
200 OK
HTTP dan data blog:
200 OK { "kind": "blogger#blog", "id": "2399953", "name": "Blogger Buzz", "description": "The Official Buzz from Blogger at Google", "published": "2007-04-23T22:17:29.261Z", "updated": "2011-08-02T06:01:15.941Z", "url": "http://buzz.blogger.com/", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953", "posts": { "totalItems": 494, "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts" }, "pages": { "totalItems": 2, "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/pages" }, "locale": { "language": "en", "country": "", "variant": "" } }
Mengambil Blog Pengguna
Anda dapat mengambil daftar blog pengguna dengan mengirim permintaan HTTP GET
ke URI Koleksi Blog:
https://www.googleapis.com/blogger/v2/users/userId/blogs
Permintaan
Berikut adalah contoh permintaan GET
yang mencantumkan
blog pengguna:
GET https://www.googleapis.com/blogger/v2/users/self/blogs
Authorization: /* OAuth 2.0 token here */
Catatan: Pengguna harus diautentikasi untuk
mencantumkan blog mereka sendiri, sehingga Anda harus memberikan permintaan GET
ke header HTTP
Authorization
.
Respons
Jika permintaan berhasil, server merespons dengan kode status
200 OK
HTTP dan representasi lengkap dari daftar blog
pengguna:
200 OK { "kind": "blogger#blogList", "items": [ { "kind": "blogger#blog", "id": "4967929378133675647", "name": "Brett's Test Blawg", "description": "", "published": "2010-10-06T23:33:31.662Z", "updated": "2011-08-08T06:50:02.005Z", "url": "http://brettmorgan-test-blawg.blogspot.com/", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647", "posts": { "totalItems": 13, "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/posts" }, "pages": { "totalItems": 1, "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages" }, "locale": { "language": "en", "country": "", "variant": "" } } ] }
Bekerja dengan Postingan
Mengambil Postingan dari Blog
Anda dapat mengambil daftar Postingan dari Blog tertentu dengan mengirim permintaan GET
ke URI Koleksi Postingan. URI untuk Koleksi Postingan
memiliki format berikut:
https://www.googleapis.com/blogger/v2/blogs/blogId/posts
Permintaan
Berikut ini contohnya:
GET https://www.googleapis.com/blogger/v2/blogs/2399953/posts&key=YOUR-API-KEY
Karena pengguna tidak harus diautentikasi untuk mengambil Postingan dari Blog publik, Anda tidak perlu memberikan header HTTP Authorization
dengan permintaan GET
ini. Namun, jika tidak memberikan header tersebut, Anda harus menyediakan kunci API.
Blogger juga memiliki Blog pribadi, yang memerlukan autentikasi.
Respons
Jika permintaan berhasil, server merespons dengan kode status
200 OK
HTTP dan daftar Postingan:
200 OK { "kind": "blogger#postList", "nextPageToken": "CgkIChiAkceVjiYQ0b2SAQ", "prevPageToken": "CgkIChDBwrK3mCYQ0b2SAQ", "items": [ { "kind": "blogger#post", "id": "7706273476706534553", "blog": { "id": "2399953" }, "published": "2011-08-01T19:58:00.000Z", "updated": "2011-08-01T19:58:51.947Z", "url": "http://buzz.blogger.com/2011/08/latest-updates-august-1st.html", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553", "title": "Latest updates, August 1st", "content": "elided for readability", "author": { "id": "401465483996", "displayName": "Brett Wiltshire", "url": "http://www.blogger.com/profile/01430672582309320414", "image": { "url": "http://4.bp.blogspot.com/_YA50adQ-7vQ/S1gfR_6ufpI/AAAAAAAAAAk/1ErJGgRWZDg/S45/brett.png" } }, "replies": { "totalItems": "0", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553/comments" } }, { "kind": "blogger#post", "id": "6069922188027612413", elided for readability } ] }
Mengambil Postingan Tertentu
Anda dapat mengambil Postingan tertentu dari Blog dengan mengirimkan
permintaan GET
ke URI Resource Postingan. URI untuk Resource
Postingan memiliki format berikut:
https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId
Permintaan
Berikut ini contohnya:
GET https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553&key=YOUR-API-KEY
Karena pengguna tidak harus diautentikasi untuk mengambil Postingan dari Blog publik, Anda tidak perlu memberikan header HTTP Authorization
dengan permintaan GET
ini. Namun, jika tidak memberikan header tersebut, Anda harus menyediakan kunci API.
Blogger juga memiliki Blog pribadi, yang memerlukan autentikasi.
Respons
Jika permintaan berhasil, server merespons dengan kode status
200 OK
HTTP dan konten Postingan:
200 OK { "kind": "blogger#post", "id": "7706273476706534553", "blog": { "id": "2399953" }, "published": "2011-08-01T19:58:00.000Z", "updated": "2011-08-01T19:58:51.947Z", "url": "http://buzz.blogger.com/2011/08/latest-updates-august-1st.html", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553", "title": "Latest updates, August 1st", "content": "elided for readability", "author": { "id": "401465483996", "displayName": "Brett Wiltshire", "url": "http://www.blogger.com/profile/01430672582309320414", "image": { "url": "http://4.bp.blogspot.com/_YA50adQ-7vQ/S1gfR_6ufpI/AAAAAAAAAAk/1ErJGgRWZDg/S45/brett.png" } }, "replies": { "totalItems": "0", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/7706273476706534553/comments" } }
Menangani Komentar
Mengambil Komentar untuk Postingan
Anda dapat mengambil daftar Komentar untuk Postingan dengan mengirimkan
permintaan GET
ke URI Koleksi Komentar. URI untuk
Koleksi Komentar memiliki format berikut:
https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId/comments
Permintaan
Berikut ini contohnya:
GET https://www.googleapis.com/blogger/v2/blogs/2399953/posts/6069922188027612413/comments&key=YOUR-API-KEY
Karena pengguna tidak harus diautentikasi untuk mengambil Komentar dari Blog publik, Anda tidak perlu memberikan header HTTP Authorization
dengan permintaan GET
ini. Namun, jika tidak memberikan header tersebut, Anda harus menyediakan kunci API.
Blogger juga memiliki Blog pribadi, yang memerlukan autentikasi.
Respons
Jika permintaan berhasil, server akan merespons dengan kode status
200 OK
HTTP dan daftar komentar:
200 OK { "kind": "blogger#commentList", "nextPageToken": "CgkIFBDwjvDXlyYQ0b2SARj9mZe9n8KsnlQ", "prevPageToken": "CgkIFBisvMGRlyYQ0b2SARj9mZe9n8KsnlQ", "items": [ { "kind": "blogger#comment", "id": "9200761938824362519", "post": { "id": "6069922188027612413" }, "blog": { "id": "2399953" }, "published": "2011-07-28T19:19:57.740Z", "updated": "2011-07-28T21:29:42.015Z", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/6069922188027612413/comments/9200761938824362519", "content": "elided", "author": { "id": "530579030283", "displayName": "elided", "url": "elided", "image": { "url": "elided" } } }, { "kind": "blogger#comment", "id": "400101178920857170", elided for readability } ] }
Mengambil Komentar Tertentu
Anda dapat mengambil Komentar tertentu dari Postingan dengan mengirimkan
permintaan GET
ke URI Resource Komentar. URI untuk
Resource Komentar memiliki format berikut:
https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId/comments/commentId
Permintaan
Berikut ini contohnya:
GET https://www.googleapis.com/blogger/v2/blogs/2399953/posts/6069922188027612413/comments/9200761938824362519&key=YOUR-API-KEY
Karena pengguna tidak harus diautentikasi untuk mengambil Komentar dari Blog publik, Anda tidak perlu memberikan header HTTP Authorization
dengan permintaan GET
ini. Namun, jika tidak memberikan header tersebut, Anda harus menyediakan kunci API.
Blogger juga memiliki Blog pribadi, yang memerlukan autentikasi.
Respons
Jika permintaan berhasil, server merespons dengan kode status
200 OK
HTTP dan data komentar:
200 OK { "kind": "blogger#comment", "id": "9200761938824362519", "post": { "id": "6069922188027612413" }, "blog": { "id": "2399953" }, "published": "2011-07-28T19:19:57.740Z", "updated": "2011-07-28T21:29:42.015Z", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/2399953/posts/6069922188027612413/comments/9200761938824362519", "content": "elided", "author": { "id": "530579030283", "displayName": "elided", "url": "elided", "image": { "url": "elided" } } }
Bekerja dengan Halaman
Mengambil Halaman untuk Blog
Anda dapat mengambil daftar Halaman untuk Blog dengan mengirim permintaan GET
ke URI Pengumpulan Halaman. URI untuk Koleksi Halaman
memiliki format berikut:
https://www.googleapis.com/blogger/v2/blogs/blogId/pages
Permintaan
Berikut ini contohnya:
GET https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages&key=YOUR-API-KEY
Karena pengguna tidak harus diautentikasi untuk mengambil Halaman dari Blog publik, Anda tidak perlu memberikan header HTTP Authorization
dengan permintaan GET
ini. Namun, jika tidak memberikan header tersebut, Anda harus menyediakan kunci API.
Blogger juga memiliki Blog pribadi, yang memerlukan autentikasi.
Respons
Jika permintaan berhasil, server merespons dengan kode status
200 OK
HTTP dan daftar Halaman:
200 OK { "kind": "blogger#pageList", "items": [ { "kind": "blogger#page", "id": "273541696466681878", "blog": { "id": "4967929378133675647" }, "published": "2011-07-14T16:16:00.000Z", "updated": "2011-07-14T16:16:23.602Z", "url": "http://brettmorgan-test-blawg.blogspot.com/p/static-content.html", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages/273541696466681878", "title": "Static Content", "content": "elided for readability", "author": { "id": "901569848744", "displayName": "brett", "url": "http://www.blogger.com/profile/16258312240222542576", "image": { "url": "https://resources.blogblog.com/img/b16-rounded.gif" } } } ] }
Mengambil Halaman Tertentu
Anda dapat mengambil Halaman tertentu dari Blog dengan mengirim permintaan GET
ke URI Resource Halaman. URI untuk Resource Halaman
memiliki format berikut:
https://www.googleapis.com/blogger/v2/blogs/blogId/pages/pageId
Permintaan
Berikut ini contohnya:
GET https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages/273541696466681878&key=YOUR-API-KEY
Karena pengguna tidak harus diautentikasi untuk mengambil Halaman dari Blog publik, Anda tidak perlu memberikan header HTTP Authorization
dengan permintaan GET
ini. Namun, jika tidak memberikan header tersebut, Anda harus menyediakan kunci API.
Blogger juga memiliki Blog pribadi, yang memerlukan autentikasi.
Respons
Jika permintaan berhasil, server merespons dengan kode status
200 OK
HTTP dan data halaman:
200 OK { "kind": "blogger#page", "id": "273541696466681878", "blog": { "id": "4967929378133675647" }, "published": "2011-07-14T16:16:00.000Z", "updated": "2011-07-14T16:16:23.602Z", "url": "http://brettmorgan-test-blawg.blogspot.com/p/static-content.html", "selfLink": "https://www.googleapis.com/blogger/v2/blogs/4967929378133675647/pages/273541696466681878", "title": "Static Content", "content": "elided for readability", "author": { "id": "901569848744", "displayName": "brett", "url": "http://www.blogger.com/profile/16258312240222542576", "image": { "url": "https://resources.blogblog.com/img/b16-rounded.gif" } } }
Bekerja dengan Pengguna
Mengambil Pengguna
Anda dapat mengambil informasi pengguna dengan mengirimkan permintaan HTTP GET
ke URI Resource Pengguna:
https://www.googleapis.com/blogger/v2/users/userId
Permintaan
Berikut adalah contoh permintaan GET
yang mencantumkan
blog pengguna:
GET https://www.googleapis.com/blogger/v2/users/self
Authorization: /* OAuth 2.0 token here */
Catatan: Pengguna harus diautentikasi untuk
mencantumkan informasi mereka sendiri, sehingga Anda harus memberikan permintaan GET
ke
header HTTP Authorization
.
Respons
Jika permintaan berhasil, server merespons dengan kode status
200 OK
HTTP dan link ke daftar blog
pengguna:
200 OK { "kind": "blogger#user", "id": "901569848744", "selfLink": "https://www.googleapis.com/blogger/v2/users/901569848744", "blogs": { "selfLink": "https://www.googleapis.com/blogger/v2/users/901569848744/blogs" } }
Parameter kueri standar
Parameter kueri berikut dapat digunakan dengan semua metode dan semua resource di Blogger API.
Parameter kueri yang berlaku untuk semua operasi Blogger API didokumentasikan di Parameter Sistem.