Blogger JSON API: Menggunakan API

Penting: Kami akan menghentikan dukungan untuk JSON API v2.0 pada 30 September 2024. Agar dapat terus berfungsi, perbarui aplikasi Anda 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.

Daftar Isi

Pengantar

Dokumen ini ditujukan bagi 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 Anda belum memahami konsep Blogger, Anda harus membaca Memulai sebelum memulai coding.

Memberi otorisasi 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: menggunakan token OAuth 2.0 (yang juga mengizinkan permintaan) dan/atau menggunakan kunci API aplikasi. Berikut ini cara menentukan mana dari opsi tersebut untuk gunakan:

  • Jika permintaan memerlukan otorisasi (seperti permintaan untuk data pribadi individu), aplikasi harus memberikan token OAuth 2.0 dengan permintaan tersebut. Aplikasi juga dapat memberikan kunci API, tetapi tidak harus melakukannya.
  • Jika permintaan tidak memerlukan otorisasi (seperti permintaan untuk publik data), aplikasi harus menyediakan kunci API atau OAuth 2.0 token, atau keduanya—opsi apa pun yang paling nyaman untuk 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 secara bersamaan dengan meminta akses data (hybrid) atau delegasi otoritas di seluruh domain (2LO).

Mengizinkan permintaan dengan OAuth 2.0

Permintaan ke Blogger JSON API untuk data pengguna non-publik harus diizinkan oleh pengguna yang terautentikasi.

Detail proses otorisasi, atau "alur", untuk OAuth 2.0 bervariasi sedikit bergantung pada jenis aplikasi yang Anda tulis. Hal berikut proses umum berlaku untuk semua jenis aplikasi:

  1. Saat membuat aplikasi, Anda mendaftarkannya ke Google. Selanjutnya, Google akan memberikan informasi yang akan Anda perlukan nanti, seperti client ID dan secret klien.
  2. Aktifkan Blogger JSON API di panel Services pada Google API Konsol Play. (Jika tidak tercantum di Konsol, lewati langkah ini.)
  3. Saat memerlukan akses ke data pengguna, aplikasi akan meminta Google untuk cakupan akses tertentu.
  4. Google menampilkan dialog OAuth kepada pengguna, yang meminta mereka mengizinkan aplikasi Anda untuk meminta beberapa data mereka.
  5. Jika pengguna menyetujuinya, Google akan memberikan waktu singkat untuk aplikasi Anda token akses.
  6. Aplikasi Anda meminta data pengguna, dengan menambahkan token akses ke permintaan.
  7. Jika Google menentukan bahwa permintaan Anda dan token valid, Google akan menampilkan data yang diminta.

Beberapa alur menyertakan langkah tambahan, seperti menggunakan pembaruan token untuk memperoleh token akses baru. Untuk informasi selengkapnya 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 oleh Google selama pendaftaran aplikasi (seperti client ID dan/atau rahasia klien).

Tips: Library klien Google API dapat menangani beberapa proses otorisasi secara otomatis. Fitur ini tersedia untuk berbagai bahasa pemrograman; lihat halaman Library and Samples untuk secara lebih mendetail.

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 tersebut.

Berikutnya, buka API Panel akses. Kunci API berada di dekat bagian bawah panel tersebut, di bagian berjudul "Simple API Access".

Setelah Anda memiliki kunci API, aplikasi Anda dapat menambahkan parameter kueri key=yourAPIKey untuk semua permintaan URL.

Kunci API aman untuk disematkan dalam URL; dan tidak memerlukan encoding apa pun.

Menangani Blog

Mengambil Blog

Anda dapat mengambil informasi untuk Sumber Daya Blog tertentu dengan mengirimkan permintaan Permintaan GET ke URI Blog. URI untuk Sumber Daya 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 diotentikasi untuk mengambil Blog publik, Anda tidak perlu menyediakan header HTTP Authorization dengan Permintaan GET; tetapi 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 HTTP Kode status 200 OK 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 GET HTTP 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 agar membuat daftar blog mereka sendiri, sehingga Anda harus menyediakan HTTP Authorization dengan permintaan GET.

Respons

Jika permintaan berhasil, server akan merespons dengan kode status HTTP 200 OK dan representasi lengkap 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": ""
      }
    }
  ]
}

Menangani Postingan

Mengambil Postingan dari Blog

Anda dapat mengambil daftar Postingan dari Blog tertentu dengan mengirimkan Permintaan GET ke URI Koleksi Postingan. URI untuk Postingan Koleksi 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 diotentikasi untuk mengambil Postingan dari Blog publik, Anda tidak perlu menyediakan header HTTP Authorization dengan Permintaan GET; tetapi 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 HTTP 200 OK 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 Postingan Resource 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 diotentikasi untuk mengambil Postingan dari Blog publik, Anda tidak perlu menyediakan header HTTP Authorization dengan Permintaan GET; tetapi 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 HTTP 200 OK 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 Pengumpulan Komentar. URI untuk Kumpulan 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 diotentikasi untuk mengambil Komentar dari Blog publik, Anda tidak perlu menyediakan header HTTP Authorization dengan Permintaan GET; tetapi jika tidak memberikan header tersebut, Anda harus menyediakan kunci API.

Blogger juga memiliki Blog pribadi, yang memang memerlukan autentikasi.

Respons

Jika permintaan berhasil, server akan merespons dengan kode status HTTP 200 OK 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 suatu 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 diotentikasi untuk mengambil Komentar dari Blog publik, Anda tidak perlu menyediakan header HTTP Authorization dengan Permintaan GET; tetapi jika tidak memberikan header tersebut, Anda harus menyediakan kunci API.

Blogger juga memiliki Blog pribadi, yang memang memerlukan autentikasi.

Respons

Jika permintaan berhasil, server merespons dengan HTTP Kode status 200 OK 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"
    }
  }
}

Menangani Halaman

Mengambil Halaman untuk Blog

Anda dapat mengambil daftar Halaman untuk Blog dengan mengirimkan permintaan GET ke URI Koleksi Halaman. URI untuk Halaman Koleksi 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 diotentikasi untuk mengambil Halaman dari Blog publik, Anda tidak perlu menyediakan header HTTP Authorization dengan Permintaan GET; tetapi jika tidak memberikan header tersebut, Anda harus menyediakan kunci API.

Blogger juga memiliki Blog pribadi, yang memang memerlukan autentikasi.

Respons

Jika permintaan berhasil, server akan merespons dengan kode status HTTP 200 OK 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 mengirimkan Permintaan GET ke URI Resource Halaman. URI untuk Halaman Resource 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 diotentikasi untuk mengambil Halaman dari Blog publik, Anda tidak perlu menyediakan header HTTP Authorization dengan Permintaan GET; tetapi jika tidak memberikan header tersebut, Anda harus menyediakan kunci API.

Blogger juga memiliki Blog pribadi, yang memang memerlukan autentikasi.

Respons

Jika permintaan berhasil, server akan merespons dengan kode status HTTP 200 OK 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 mengirim permintaan GET HTTP 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 agar mencantumkan informasinya sendiri, sehingga Anda harus menyediakan HTTP Authorization dengan permintaan GET.

Respons

Jika permintaan berhasil, server merespons dengan HTTP Kode status 200 OK dan link ke daftar blog:

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.