Peringatan: Halaman ini membahas API lama Google, yaitu Google Data API; halaman ini hanya relevan dengan API yang tercantum dalam direktori Google Data API, banyak di antaranya telah diganti dengan API yang lebih baru. Untuk informasi tentang API baru tertentu, lihat dokumentasi API baru. Untuk informasi tentang memberi otorisasi permintaan dengan API baru, lihat Autentikasi dan Otorisasi Akun Google.
Misi Google adalah untuk mengatur informasi dunia dan menjadikannya dapat diterima dan bermanfaat secara luas. Hal ini termasuk membuat informasi dapat diakses dalam konteks selain browser web dan dapat diakses oleh layanan di luar Google.
Protokol Data Google menyediakan cara yang aman bagi developer eksternal untuk menulis aplikasi baru yang memungkinkan pengguna akhir mengakses dan memperbarui data yang disimpan oleh banyak produk Google. Developer eksternal dapat menggunakan Protokol Data Google secara langsung, atau mereka dapat menggunakan bahasa pemrograman lain yang didukung oleh library klien.
Audiens
Kumpulan dokumen ini ditujukan bagi siapa saja yang ingin memahami Protokol Data Google. Meskipun Anda hanya ingin menulis kode yang menggunakan library klien spesifik per bahasa, kumpulan dokumen ini dapat berguna jika Anda ingin memahami apa yang terjadi di bawah lapisan abstraksi library klien.
Jika Anda mencari Panduan Developer untuk API tertentu, buka Direktori API Protokol Data Google.
Jika Anda ingin mengakses API dalam bahasa pemrograman favorit Anda, buka halaman download Library Klien.
Latar belakang
Sejumlah produk Google, seperti Kalender dan Spreadsheet, menyediakan API berdasarkan Protokol Data Google. Anda, sebagai developer, dapat menggunakan API ini untuk menulis aplikasi klien yang akan memberi pengguna akhir cara baru untuk mengakses dan memanipulasi data yang mereka simpan di produk Google tersebut.
Catatan: Produk Google yang menyediakan API terkadang disebut sebagai layanan dalam dokumen ini dan dokumen terkait lainnya.
Jika Anda menulis kode yang menggunakan Protokol Data Google secara langsung, kode tersebut akan mengakses API menggunakan permintaan HTTP seperti GET
atau POST
. Dengan permintaan ini, data yang disimpan oleh produk Google ditransfer bolak-balik melalui kabel dalam bentuk feed data. Feed data hanyalah daftar terstruktur yang berisi data. Secara historis, format feed utama telah berupa AtomPub XML, tetapi sekarang JSON, atau JavaScript Object Notation, juga tersedia sebagai format alternatif.
Jika Anda memilih untuk tidak menulis kode yang membuat permintaan HTTP secara langsung, Anda bisa memprogram aplikasi klien menggunakan salah satu bahasa pemrograman yang tersedia dalam kumpulan library klien yang disediakan. Ketika Anda melakukannya, detail permintaan HTTP ditangani oleh library klien; Anda menulis kode pada tingkat yang lebih konseptual menggunakan metode dan class khusus bahasa yang disediakan oleh library klien.
Lihat dokumentasi khusus produk untuk informasi lebih lanjut tentang bahasa tertentu yang tersedia untuk API atau versi API yang Anda gunakan.
Versi protokol
Protocol Version 2.0 vs. Protocol Versi 1.0
Versi pertama Protokol Data Google dikembangkan sebelum Protokol Penerbitan Atom diselesaikan. Versi kedua dari Google Data Protocol sepenuhnya mematuhi standar AtomPub RFC 5023.
Google Data Protocol Versi 2.0 juga mencakup dukungan untuk:
- ETag HTTP. Standar web yang membantu aplikasi klien Anda memanfaatkan cache HTTP dengan lebih baik. Layanan yang termasuk dalam library klien yang mendukung Protokol v2.0 menangani ETag secara otomatis.
- Respons Sebagian dan Update Parsial (Eksperimental). Fitur yang memungkinkan Anda membuat permintaan yang mentransfer lebih sedikit data. Dengan meminta hanya informasi yang benar-benar Anda butuhkan, atau dengan mengirim pembaruan yang hanya menyertakan data yang benar-benar ingin Anda ubah, aplikasi klien Anda bisa jauh lebih efisien dalam menggunakan sumber daya jaringan, CPU, dan memori. Saat ini, sebagian respons dan update sebagian hanya tersedia untuk beberapa produk; lihat dokumentasi khusus produk untuk mengetahui apakah API Anda mendukungnya atau tidak.
Mengupdate aplikasi
Jika API yang Anda gunakan dibuat berdasarkan versi protokol terbaru, fungsi Protokol v2.0 akan disertakan dalam dokumentasinya. Secara umum, sebaiknya Anda mengupgrade aplikasi klien ke versi terbaru yang tersedia untuk API Anda.
Memperbarui klien berbasis library klien
Jika aplikasi klien Anda menggunakan library klien, seperti library klien Java atau library klien .NET, aplikasi tersebut mungkin berisi versi API yang mendukung fitur Protocol v2.0. Untuk mengetahuinya, lihat dokumentasi API untuk produk Google yang Anda gunakan untuk mengetahui apakah kedua hal berikut berlaku:
- Ada versi API yang mendukung fitur Google Data Protocol v2.0.
- Library klien yang Anda gunakan juga mendukung versi API tersebut.
Jika library klien mendukungnya dan Anda ingin mengupdate aplikasi yang sudah ada, cukup download dan gunakan library klien versi terbaru. Semua kode Anda masih berfungsi, dan library klien menangani perubahan Protokol v2.0 di balik layar.
Mengupdate klien HTTP mentah
Jika Anda menulis aplikasi klien menggunakan Protokol Data Google secara langsung, Anda harus membuat perubahan berikut:
- Permintaan versi non-default. Tambahkan header versi HTTP (
GData-Version: X.0
) ke setiap permintaan HTTP yang Anda kirim, denganX
adalah versi API yang mendukung fitur Google Data Protocol v2.0. Atau, tambahkan parameter kueri (v=X.0
) ke URL setiap permintaan, denganX
adalah versi API yang benar. Jika Anda tidak menetapkan versi yang lebih baru, permintaan Anda akan dikirim ke versi API paling awal yang didukung secara default. - Serentak optimis. Jika Anda menggunakan versi API yang mendukung konkurensi optimistis, Anda mungkin perlu mengubah update dan menghapus kode untuk menggunakan ETag. Untuk informasi selengkapnya, baca bagian ETag dalam dokumentasi referensi Google Data Protocol, dan baca bagian Update dan Hapus pada panduan developer Protokol untuk layanan yang digunakan aplikasi klien Anda.
- URI pribadi atau edit. Jika klien Anda melacak URI sendiri atau mengedit URI untuk feed atau entri, perhatikan bahwa URI tersebut mungkin telah berubah. Untuk mendapatkan URI baru, minta kembali item menggunakan URI lama, tetapi tandai permintaan tersebut sebagai permintaan X.0 versi, dengan X adalah versi API yang mendukung fitur Google Data Protocol v2.0. Server menampilkan representasi baru untuk entri tersebut, termasuk URI baru, yang dapat Anda simpan sebagai pengganti URI lama.
- URI namespace. Jika klien Anda menyimpan URI namespace Google Data Protocol API secara lokal, atau membuatnya di-hard code, Anda harus memperbaruinya:
- Namespace AtomPub (awalan
app
) telah diubah darihttp://purl.org/atom/app
menjadihttp://www.w3.org/2007/app
. - Namespace OpenSearch (awalan
openSearch
) telah diubah darihttp://a9.com/-/spec/opensearchrss/1.0/
menjadihttp://a9.com/-/spec/opensearch/1.1/
.
- Namespace AtomPub (awalan