Menggunakan Indexing API
Anda dapat menggunakan Indexing API untuk meminta Google memperbarui atau menghapus halaman postingan lowongan atau acara
livestream dari indeks Google. Permintaan tersebut harus menentukan lokasi halaman web. Anda juga
dapat menerima status untuk notifikasi yang telah Anda kirim ke Google. Indexing API hanya dapat
digunakan untuk meng-crawl halaman dengan
JobPosting
atau
BroadcastEvent
yang disematkan dalam VideoObject
.
Panduan
Panduan berikut berlaku saat menggunakan Indexing API.
- Kebijakan spam kami berlaku untuk konten yang dikirimkan dengan Indexing API.
- Semua panggilan ke
https://indexing.googleapis.com/v3/UrlNotifications:publish
HARUS menggunakan"application/json"
sebagai headerContent-Type
. - Anda hanya dapat mengirim satu URL dalam isi permintaan pembaruan URL, atau menggabungkan hingga 100 permintaan dalam satu batch, seperti yang dijelaskan dalam Mengirim permintaan pengindeksan batch. Jangan mengakali batas pengiriman kami, misalnya dengan menggunakan beberapa akun.
- Isi permintaan dalam contoh ini adalah nilai variabel
content
yang digunakan dalam contoh token akses.
Yang dapat Anda lakukan dengan API
Saat Anda mengirim permintaan ke Indexing API, tentukan lokasi halaman web mandiri untuk memberi tahu Google bahwa halaman tersebut dapat di-crawl atau dihapus dari indeks.
Contoh berikut menunjukkan tindakan yang dapat Anda lakukan dengan Indexing API:
Contoh | |
---|---|
Memperbarui URL |
Kirim permintaan { "url": "https://careers.google.com/jobs/google/technical-writer", "type": "URL_UPDATED" } |
Menghapus URL |
Kirim permintaan { "url": "https://careers.google.com/jobs/google/technical-writer", "type": "URL_DELETED" } |
Mendapatkan status notifikasi |
Kirim permintaan |
Parameter
Tabel berikut menjelaskan kolom yang diperlukan untuk semua metode (memperbarui dan menghapus URL):
Kolom | |
---|---|
url |
Wajib Lokasi item yang sepenuhnya memenuhi syarat yang ingin Anda perbarui atau hapus. |
type |
Wajib Jenis notifikasi yang Anda kirimkan. |
Memperbarui URL
Untuk memberi tahu Google tentang URL baru yang harus di-crawl atau bahwa konten di URL yang dikirim sebelumnya telah diperbarui, ikuti langkah-langkah berikut:
- Kirim permintaan
POST
HTTP ke endpoint berikut:https://indexing.googleapis.com/v3/urlNotifications:publish
- Di bagian isi permintaan, tentukan lokasi halaman menggunakan sintaks berikut:
{ "url": "CONTENT_LOCATION", "type": "URL_UPDATED" }
- Google akan merespons panggilan Indexing API yang berhasil dengan
HTTP 200
. ResponsHTTP 200
berarti Google dapat mencoba meng-crawl ulang URL ini dengan segera. Isi respons memuat objekUrlNotificationMetadata
, yang kolomnya sesuai dengan yang ditampilkan oleh permintaan status notifikasi. - Jika Anda tidak menerima respons
HTTP 200
, lihat Error khusus Indexing API. - Jika konten halaman berubah, kirimkan notifikasi pembaruan lain, yang akan memicu Google untuk meng-crawl ulang halaman.
- Indexing API menyediakan kuota default untuk pengujian. Untuk menggunakan API, minta persetujuan dan kuota.
Menghapus URL
Setelah Anda menghapus halaman dari server atau menambahkan
tag <meta name="robots" content="noindex" />
di bagian <head>
halaman tertentu, beri tahu Google agar kami dapat menghapus
halaman tersebut dari indeks dan tidak mencoba meng-crawl serta mengindeks halaman itu lagi. Sebelum Anda
meminta penghapusan, URL harus menampilkan kode status 404
atau 410
atau
halaman harus berisi tag <meta name="robots" content="noindex" />
meta
.
Untuk meminta penghapusan dari indeks kami, ikuti langkah-langkah berikut:
- Kirim permintaan
POST
ke endpoint berikut:https://indexing.googleapis.com/v3/urlNotifications:publish
- Di bagian isi permintaan, tentukan URL yang ingin Anda hapus menggunakan sintaks berikut:
{ "url": "CONTENT_LOCATION", "type": "URL_DELETED" }
Contoh:
{ "url": "https://careers.google.com/jobs/google/technical-writer", "type": "URL_DELETED" }
- Google akan merespons panggilan Indexing API yang berhasil dengan
HTTP 200
. ResponsHTTP 200
berarti Google dapat menghapus URL ini dari indeks. Isi respons memuat objekUrlNotificationMetadata
, yang kolomnya sesuai dengan yang ditampilkan oleh permintaan status notifikasi. - Jika Anda tidak menerima respons
HTTP 200
, lihat Error khusus Indexing API. - Indexing API menyediakan kuota default untuk pengujian. Untuk menggunakan API, minta persetujuan dan kuota.
Mendapatkan status notifikasi
Anda dapat menggunakan Indexing API untuk memeriksa kapan terakhir kali Google menerima setiap jenis notifikasi
untuk URL tertentu. Permintaan GET
tidak memberitahukan kapan Google mengindeks atau menghapus
URL; permintaan ini hanya menampilkan apakah Anda berhasil mengirim permintaan atau tidak.
Untuk mendapatkan status notifikasi, ikuti langkah-langkah berikut:
- Kirim permintaan
GET
ke endpoint berikut. URL yang Anda tentukan harus berenkode URL. Misalnya, ganti:
(titik dua) dengan%3A
dan/
(garis miring ke depan) dengan%2F
.https://indexing.googleapis.com/v3/urlNotifications/metadata?url=ENCODED_URL
Contoh:
GET https://indexing.googleapis.com/v3/urlNotifications/metadata?url=https%3A%2F%2Fcareers.google.com%2Fjobs%2Fgoogle%2Ftechnical-writer
- Indexing API merespons dengan pesan
HTTP 200
, dengan payload yang berisi detail notifikasi. Contoh berikut menunjukkan isi respons yang memuat informasi tentang notifikasi pembaruan dan penghapusan:{ url: "http://foo.com", latest_update: { type: "URL_UPDATED", notify_time: "2017-07-31T19:30:54.524457662Z" }, latest_remove: { type: "URL_DELETED", notify_time: "2017-08-31T19:30:54.524457662Z" } }
- Jika Anda tidak menerima respons
HTTP 200
, lihat Error khusus Indexing API. - Indexing API menyediakan kuota default untuk pengujian. Untuk menggunakan API, minta persetujuan dan kuota.
Mengirim permintaan pengindeksan batch
Untuk mengurangi jumlah koneksi HTTP yang harus dibuat klien, Anda dapat menggabungkan hingga 100 panggilan ke Indexing API menjadi satu permintaan HTTP. Caranya adalah dengan membuat permintaan multibagian yang disebut batch.
Saat mengirim permintaan batch ke Indexing API, gunakan endpoint berikut:
https://indexing.googleapis.com/batch
Isi permintaan batch memuat beberapa bagian. Setiap bagian merupakan permintaan HTTP lengkap, dengan kata kerja, URL, header, dan isinya sendiri. Ukuran setiap bagian dalam permintaan batch tidak boleh melebihi 1 MB.
Untuk mempermudah Anda dalam mengirim permintaan batch, Library Klien API Google mendukung pembuatan batch. Untuk mengetahui informasi lebih lanjut tentang pembuatan batch dengan library klien, lihat halaman untuk setiap bahasa pemrograman berikut:
Jika Anda menggunakan contoh pembuatan batch di halaman ini, Anda mungkin perlu memperbarui kode Anda agar sesuai dengan persyaratan implementasi yang dijelaskan dalam Mendapatkan token akses.
Contoh isi pesan permintaan batch berikut mencakup notifikasi pembaruan dan penghapusan:
POST /batch HTTP/1.1 Host: indexing.googleapis.com Content-Length: content_length Content-Type: multipart/mixed; boundary="===============7330845974216740156==" Authorization: Bearer oauth2_token --===============7330845974216740156== Content-Type: application/http Content-Transfer-Encoding: binary Content-ID: <b29c5de2-0db4-490b-b421-6a51b598bd22+2> POST /v3/urlNotifications:publish [1] Content-Type: application/json accept: application/json content-length: 58 { "url": "http://example.com/jobs/42", "type": "URL_UPDATED" } --===============7330845974216740156== Content-Type: application/http Content-Transfer-Encoding: binary Content-ID: <b29c5de2-0db4-490b-b421-6a51b598bd22+1> POST /v3/urlNotifications:publish [2] Content-Type: application/json accept: application/json content-length: 75 { "url": "http://example.com/widgets/1", "type": "URL_UPDATED" } --===============7330845974216740156== Content-Type: application/http Content-Transfer-Encoding: binary Content-ID: <b29c5de2-0db4-490b-b421-6a51b598bd22+3> POST /v3/urlNotifications:publish [3] Content-Type: application/json accept: application/json content-length: 58 { "url": "http://example.com/jobs/43", "type": "URL_DELETED" } --===============7330845974216740156==
Untuk mengetahui informasi selengkapnya, lihat Mengirim Permintaan Batch.