Indexing API verwenden
Mit der Indexing API kannst du Google anweisen, Seiten für Stellenausschreibungen oder Livestream-Veranstaltungen zu aktualisieren oder aus dem Google-Index zu entfernen. Bei der Anfrage muss die Webadresse der jeweiligen Webseite angegeben werden. Zusätzlich kannst du den Status der Benachrichtigungen abrufen, die du an Google gesendet hast. Mit der Indexing API können nur Seiten gecrawlt werden, die entweder JobPosting
oder BroadcastEvent
eingebettet in ein VideoObject
enthalten.
Richtlinien
Bei der Verwendung der Indexing API gelten die folgenden Richtlinien.
- Unsere Spamrichtlinien gelten für Inhalte, die über die Indexing API eingereicht werden.
- In allen Aufrufen an
https://indexing.googleapis.com/v3/UrlNotifications:publish
MUSS"application/json"
alsContent-Type
-Header verwendet werden. - Im Text einer Aktualisierungsanfrage kann nur eine URL gesendet werden. Du hast aber auch die Möglichkeit, bis zu 100 Anfragen in einem Batch zusammenzufassen. Beschrieben wird dieser Vorgang im Abschnitt Batch-Indexierungsanfragen senden. Umgehe unsere Einreichungslimits nicht, z. B. durch die Verwendung mehrerer Konten.
- Der Anfragetext in diesen Beispielen ist der Wert der
content
-Variable, die in den Beispielen für Zugriffstokens verwendet wird.
Was du mit der API tun kannst
Wenn du eine Anfrage an die Indexing API sendest, gib die Webadresse einer einzelnen Webseite an, um Google darauf hinzuweisen, dass diese Seite gecrawlt oder aus dem Index entfernt werden kann.
Die folgenden Beispiele zeigen die Verwendungsmöglichkeiten der Indexing API:
Beispiele | |
---|---|
URL aktualisieren |
Sende die folgende HTTP- { "url": "https://careers.google.com/jobs/google/technical-writer", "type": "URL_UPDATED" } |
URL entfernen |
Sende die folgende HTTP- { "url": "https://careers.google.com/jobs/google/technical-writer", "type": "URL_DELETED" } |
Benachrichtigungsstatus abrufen |
Sende eine HTTP- |
Parameter
In der folgenden Tabelle werden die Felder beschrieben, die zum Aktualisieren oder Entfernen einer URL erforderlich sind:
Felder | |
---|---|
url |
Pflichtfeld Die vollständig qualifizierte Webadresse des Elements, das du aktualisieren oder entfernen möchtest. |
type |
Pflichtfeld Der Typ der Benachrichtigung, die du gesendet hast. |
URL aktualisieren
So informierst du Google über eine neue URL, die gecrawlt werden muss, oder über die Aktualisierung von Inhalten einer bereits übermittelten URL:
- Sende eine HTTP-
POST
-Anfrage an den folgenden Endpunkt:https://indexing.googleapis.com/v3/urlNotifications:publish
- Gib im Text der Anfrage mit der folgenden Syntax die Webadresse der Seite an:
{ "url": "CONTENT_LOCATION", "type": "URL_UPDATED" }
- Google reagiert auf erfolgreiche Indexing API-Aufrufe mit einer
HTTP 200
-Antwort. EineHTTP 200
-Antwort bedeutet, dass Google diese URL demnächst wieder crawlen wird. Der Text der Antwort enthält einUrlNotificationMetadata
-Objekt, dessen Felder identisch mit den zurückgegebenen Feldern einer Benachrichtigungsstatus-Anfrage sind. - Wenn du keine
HTTP 200
-Antwort erhältst, lies bitte die Hinweise zu Indexing API-Fehlern. - Wenn sich der Inhalt der Seite ändert, sende eine Aktualisierungsbenachrichtigung. Google crawlt daraufhin die Seite erneut.
- Die Indexing API bietet ein Standardkontingent für Tests. Wenn du die API verwenden möchtest, fordere eine Genehmigung und ein Kontingent an.
URL entfernen
Nachdem du eine Seite von deinen Servern gelöscht oder ein <meta name="robots" content="noindex" />
-Tag im <head>
-Abschnitt einer bestimmten Seite hinzugefügt hast, kannst du Google benachrichtigen, damit die Seite aus dem Index entfernt und die Seite nicht mehr gecrawlt und indexiert wird. Bevor du das Entfernen anforderst, muss die URL den Statuscode 404
oder 410
zurückgeben oder die Seite muss ein <meta name="robots" content="noindex" />
-meta
-Tag enthalten.
So beantragst du das Entfernen einer Seite aus unserem Index:
- Sende eine
POST
-Anfrage an den folgenden Endpunkt:https://indexing.googleapis.com/v3/urlNotifications:publish
- Gib im Hauptteil der Anfrage die URL an, die du entfernen möchtest, und verwende dabei die folgende Syntax:
{ "url": "CONTENT_LOCATION", "type": "URL_DELETED" }
Beispiel:
{ "url": "https://careers.google.com/jobs/google/technical-writer", "type": "URL_DELETED" }
- Google reagiert auf erfolgreiche Indexing API-Aufrufe mit einer
HTTP 200
-Antwort. EineHTTP 200
-Antwort bedeutet, dass Google bereit ist, diese URL aus dem Index zu entfernen. Der Text der Antwort enthält einUrlNotificationMetadata
-Objekt, dessen Felder identisch mit den zurückgegebenen Feldern einer Benachrichtigungsstatus-Anfrage sind. - Wenn du keine
HTTP 200
-Antwort erhältst, lies bitte die Hinweise zu Indexing API-Fehlern. - Die Indexing API bietet ein Standardkontingent für Tests. Wenn du die API verwenden möchtest, fordere eine Genehmigung und ein Kontingent an.
Benachrichtigungsstatus abrufen
Mit der Indexing API kannst du überprüfen, wann Google zuletzt eine Benachrichtigung über eine bestimmte URL erhalten hat. Die GET
-Anfrage gibt keinen Aufschluss darüber, wann Google eine URL indexiert oder entfernt, sondern informiert dich nur, ob deine Anfrage erfolgreich gesendet wurde.
So rufst du den Status einer Benachrichtigung ab:
- Sende eine
GET
-Anfrage an den folgenden Endpunkt. Die von dir angegebenen URLs müssen eine URL-Codierung enthalten. Ersetze beispielsweise:
(Doppelpunkte) durch%3A
und/
(Schrägstriche) durch%2F
.https://indexing.googleapis.com/v3/urlNotifications/metadata?url=ENCODED_URL
Beispiel:
GET https://indexing.googleapis.com/v3/urlNotifications/metadata?url=https%3A%2F%2Fcareers.google.com%2Fjobs%2Fgoogle%2Ftechnical-writer
- Die Indexing API antwortet mit einer
HTTP 200
-Nachricht einschließlich einer Nutzlast, die Details zur Benachrichtigung enthält. Im folgenden Beispiel siehst du den Text einer Antwort, die den Google-Eintrag über den Empfang einer Aktualisierungs- und Löschbenachrichtigung enthält:{ 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" } }
- Wenn du keine
HTTP 200
-Antwort erhältst, lies bitte die Hinweise zu Indexing API-Fehlern. - Die Indexing API bietet ein Standardkontingent für Tests. Wenn du die API verwenden möchtest, fordere eine Genehmigung und ein Kontingent an.
Batch-Indexierungsanfragen senden
Um die Anzahl der HTTP-Verbindungen, die dein Client herstellen muss, möglichst gering zu halten, kannst du bis zu 100 Aufrufe an die Indexing API in einer einzigen mehrteiligen HTTP-Anfrage zusammenfassen, die auch als Batch bezeichnet wird.
Verwende beim Senden einer Batchanfrage an die Indexing API den folgenden Endpunkt:
https://indexing.googleapis.com/batch
Der eigentliche Text einer Batchanfrage besteht aus mehreren Teilen. Jeder Teil ist in sich eine vollständige HTTP-Anfrage mit eigenem Verb, eigener URL, eigenen Headern und eigenem Text. Die einzelnen Teile einer Batchanfrage dürfen nicht größer als 1 MB sein.
Um dir das Senden von Batchanfragen zu erleichtern, unterstützen die API-Clientbibliotheken von Google die Batchfunktion. Spezifische Informationen zur Verwendung der Batchfunktion mit den Clientbibliotheken für einzelne Programmiersprachen findest du auf den folgenden Seiten:
Wenn du auf diesen Seiten die Beispiele zur Batchverarbeitung verwendest, musst du möglicherweise deinen Code so aktualisieren, dass die Implementierungsanforderungen erfüllt werden, die unter Zugriffstoken anfordern beschrieben sind.
Das folgende Beispiel für einen Nachrichtentext in einer Batchanfrage enthält eine Benachrichtigung zur Aktualisierung und eine zur Entfernung:
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==
Weitere Informationen zum Senden von Batchanfragen