Dizine Ekleme API'sini kullanma
Dizine ekleme API'sini, Google'a Google dizinindeki iş ilanı veya canlı yayın etkinliği sayfalarını güncellemesini ya da
kaldırmasını söylemek için kullanabilirsiniz. İsteklerde web sayfasının konumu belirtilmelidir. Ayrıca Google'a gönderdiğiniz bildirimlerin durumunu da alabilirsiniz. Dizine Ekleme API'si yalnızca VideoObject
içinde yerleşik JobPosting
veya BroadcastEvent
bulunan sayfaları tarayabilir.
Yönergeler
Dizine ekleme API'sini kullanırken aşağıdaki yönergeler geçerlidir.
- Dizine ekleme API'si ile gönderilen içerikler için spam politikalarımız geçerlidir.
https://indexing.googleapis.com/v3/UrlNotifications:publish
URL'sine yapılan tüm çağrılardaContent-Type
başlığı olarak"application/json"
kullanılması ZORUNLUDUR.- Güncelleme isteğinin gövde bölümünde yalnızca tek bir URL gönderebileceğiniz gibi, isterseniz Toplu dizine ekleme istekleri gönderme bölümünde açıklandığı üzere en fazla 100 isteği birleştirip toplu halde de gönderebilirsiniz. Gönderim sınırlarımızı, birden fazla hesap kullanma gibi yöntemlerle atlatmayın.
- Bu örneklerdeki isteğin gövde bölümü, erişim jetonu örneklerinde kullanılan
content
değişkeninin değeridir.
API ile yapabilecekleriniz
Dizine Ekleme API'sine bir istek gönderdiğinizde bağımsız bir web sayfasının konumunu belirtin. Böylece Google bu sayfayı tarayabileceğini veya dizininden kaldırabileceğini bilir.
Aşağıda, Dizine Ekleme API'si ile gerçekleştirebileceğiniz işlemlere örnekler bulabilirsiniz:
Örnekler | |
---|---|
URL güncelleme |
{ "url": "https://careers.google.com/jobs/google/technical-writer", "type": "URL_UPDATED" } |
URL kaldırma |
{ "url": "https://careers.google.com/jobs/google/technical-writer", "type": "URL_DELETED" } |
Bildirim durumu alma |
|
Parametreler
Aşağıdaki tabloda, tüm yöntemler (URL güncelleme ve kaldırma) için gerekli alanlar açıklanmaktadır:
Alanlar | |
---|---|
url |
Zorunlu Güncellemek veya kaldırmak istediğiniz öğenin tam konumu. |
type |
Zorunlu Gönderdiğiniz bildirimin türü. |
URL güncelleme
Google'a taranacak yeni bir URL'nin olduğunu veya daha önce gönderilen bir URL'nin içeriğinin güncellendiğini bildirmek için şu adımları uygulayın:
- Aşağıdaki uç noktaya bir HTTP
POST
isteği gönderin:https://indexing.googleapis.com/v3/urlNotifications:publish
- İsteğin gövde bölümünde, aşağıdaki söz dizimini kullanarak sayfanın konumunu belirtin:
{ "url": "
CONTENT_LOCATION ", "type": "URL_UPDATED" } - Google, başarılı Dizine Ekleme API'si çağrılarına
HTTP 200
ile yanıt verir.HTTP 200
yanıtı, Google'ın bu URL'yi yakında yeniden taramaya çalışabileceği anlamına gelir. Yanıtın gövde bölümünde birUrlNotificationMetadata
nesnesi bulunur. Bu nesnenin alanları, bildirim durumu isteği tarafından döndürülen alanlara karşılık gelir. - Bir
HTTP 200
yanıtı almazsanız Dizine Ekleme API'sine özgü hatalar bölümüne bakın. - Sayfanın içeriği değişirse Google'ın sayfayı yeniden taramasını sağlayacak başka bir güncelleme bildirimi gönderin.
- Dizine ekleme API'si, test için varsayılan bir kota sağlar. API'yi kullanmak için onay ve kota isteğinde bulunun.
URL kaldırma
Sunucularınızdan bir sayfayı sildikten veya belirli bir sayfanın <head>
bölümüne <meta name="robots" content="noindex" />
etiketini ekledikten sonra bunu Google'a bildirin. Böylece sayfayı dizinimizden kaldırabilir ve söz konusu sayfayı tekrar taramaya ve dizine eklemeye çalışmayız. Kaldırma isteğinde
bulunmadan önce URL'nin 404
veya 410
durum kodu döndürmesi ya da sayfanın
<meta name="robots" content="noindex" />
meta
etiketi içermesi gerekir.
Bir sayfanın dizinimizden kaldırılmasını istemek için aşağıdaki adımları uygulayın:
- Aşağıdaki uç noktaya bir
POST
isteği gönderin:https://indexing.googleapis.com/v3/urlNotifications:publish
- İsteğin gövde bölümünde, aşağıdaki söz dizimini kullanarak kaldırmak istediğiniz URL'yi belirtin:
{ "url": "
CONTENT_LOCATION ", "type": "URL_DELETED" }Örneğin:
{ "url": "https://careers.google.com/jobs/google/technical-writer", "type": "URL_DELETED" }
- Google, başarılı Dizine Ekleme API'si çağrılarına
HTTP 200
ile yanıt verir.HTTP 200
yanıtı, Google'ın bu URL'yi dizinden kaldırabileceği anlamına gelir. Yanıtın gövde bölümünde birUrlNotificationMetadata
nesnesi bulunur. Bu nesnenin alanları, bildirim durumu isteği tarafından döndürülen alanlara karşılık gelir. - Bir
HTTP 200
yanıtı almazsanız Dizine Ekleme API'sine özgü hatalar bölümüne bakın. - Dizine ekleme API'si, test için varsayılan bir kota sağlar. API'yi kullanmak için onay ve kota isteğinde bulunun.
Bildirim durumu alma
Dizine Ekleme API'sini kullanarak, Google'ın belirli bir URL için her bildirim türünü en son ne zaman aldığını kontrol edebilirsiniz. GET
isteği, Google'ın bir URL'yi ne zaman dizine eklediğini veya kaldırdığını söylemez; yalnızca başarılı bir şekilde istek gönderip göndermediğinizi döndürür.
Bir bildirimin durumunu öğrenmek için aşağıdaki adımları uygulayın:
- Aşağıdaki uç noktaya bir
GET
isteği gönderin: Belirttiğiniz URL'ler URL kodlamalı olmalıdır. Örneğin,:
(iki nokta) işaretinin yerine%3A
ve/
(düz eğik çizgi) işaretinin yerine de%2F
kullanın.https://indexing.googleapis.com/v3/urlNotifications/metadata?url=
ENCODED_URL Örneğin:
GET https://indexing.googleapis.com/v3/urlNotifications/metadata?url=https%3A%2F%2Fcareers.google.com%2Fjobs%2Fgoogle%2Ftechnical-writer
- Dizine Ekleme API'si, bildirimle ilgili ayrıntıların yer aldığı bir yük içeren
HTTP 200
mesajıyla yanıt verir. Aşağıdaki örnekte, bir güncelleme ve silme bildirimi hakkında bilgi içeren bir yanıtın gövde bölümü gösterilmektedir:{ 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" } }
- Bir
HTTP 200
yanıtı almazsanız Dizine Ekleme API'sine özgü hatalar bölümüne bakın. - Dizine ekleme API'si, test için varsayılan bir kota sağlar. API'yi kullanmak için onay ve kota isteğinde bulunun.
Toplu dizine ekleme isteği gönderme
İstemcinizin kurması gereken HTTP bağlantılarının sayısını azaltmak için, Dizine Ekleme API'sine yapılan en fazla 100 çağrıyı tek bir HTTP isteği bünyesinde birleştirebilirsiniz. Bunu, çok bölümlü bir istek üzerinden toplu halde yaparsınız.
Dizine Ekleme API'sine toplu istek gönderirken aşağıdaki uç noktayı kullanın:
https://indexing.googleapis.com/batch
Toplu isteğin gövde bölümü birden fazla parçadan oluşur. Her bir parça kendi yüklemi, URL'si, başlıkları ve gövdesi ile kendi başına eksiksiz bir HTTP isteğidir. Toplu istekteki her parça en fazla 1 MB boyutunda olabilir.
Toplu istek göndermenizi kolaylaştırmak için, Google'ın API İstemci Kitaplıkları, toplu hale getirme işlevini destekler. İstemci kitaplıklarını kullanarak toplu hale getirme hakkında daha fazla bilgi için aşağıdaki dile özgü sayfalara bakın:
Bu sayfalardaki toplu hale getirme örneklerini kullanıyorsanız, kodunuzu, Erişim jetonu alma bölümünde açıklanan uygulama gereksinimlerini yansıtacak şekilde güncellemeniz gerekebilir.
Aşağıdaki örnek toplu istek mesajının gövde bölümünde bir güncelleme bildirimi ve bir kaldırma bildirimi yer almaktadır:
POST /batch HTTP/1.1 Host: indexing.googleapis.com Content-Length:content_length Content-Type: multipart/mixed; boundary="===============7330845974216740156==" Authorization: Beareroauth2_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==
Daha fazla bilgi için Toplu İstek Gönderme bölümüne bakın.