Indexing API verwenden

Überblick

Mit der Indexing API können Sie Google anweisen, Seiten zu aktualisieren oder aus dem Google-Index zu entfernen. Bei der Anfrage muss die Webadresse der jeweiligen Webseite angegeben werden. Zusätzlich können Sie den Status der Benachrichtigungen abrufen, die Sie an Google gesendet haben. Momentan können mit der Indexing API nur Seiten gecrawlt werden, die entweder strukturierte Daten von Stellenausschreibungen oder strukturierte Livestream-Daten enthalten.

Wenn Sie eine Anfrage an die Indexing API senden, geben Sie 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:

Aktualisieren einer URL
POST https://indexing.googleapis.com/v3/urlNotifications:publish
{
  "url": "https://careers.google.com/jobs/google/technical-writer",
  "type": "URL_UPDATED"
}
Entfernen einer URL
POST https://indexing.googleapis.com/v3/urlNotifications:publish
{
  "url": "https://careers.google.com/jobs/google/technical-writer",
  "type": "URL_DELETED"
}
Abrufen des Benachrichtigungsstatus
GET https://indexing.googleapis.com/v3/urlNotifications/metadata

Parameter

In der folgenden Tabelle werden die zum Aktualisieren oder Entfernen einer URL erforderlichen Felder beschrieben:

Felder
url

Erforderlich

Die vollständig qualifizierte Webadresse des Elements, das Sie aktualisieren oder entfernen möchten

type

Erforderlich

Der Typ der Benachrichtigung, die Sie übermittelt haben

Richtlinien

Die folgenden Richtlinien gelten für Anfragen zum Aktualisieren und Entfernen einer URL.

  • In allen Aufrufen von https://indexing.googleapis.com/v3/UrlNotifications:publish muss "application/json" als Content-Type-Header verwendet werden.
  • Im Hauptteil einer Aktualisierungsanfrage kann nur eine URL gesendet werden. Sie haben aber auch die Möglichkeit, bis zu 100 Anfragen in einem Batch zusammenzufassen. Beschrieben wird dieser Vorgang im Abschnitt Batch-Indexierungsanfragen senden.
  • Der Hauptteil der Anfrage in diesen Beispielen ist der Wert der Variable content, die in den Beispielen für Zugriffstokens verwendet wird.

URL aktualisieren

So informieren Sie Google über eine neue URL, die gecrawlt werden muss, oder über die Aktualisierung von Inhalten einer bereits übermittelten URL:

  1. Senden Sie eine POST-Anfrage an den folgenden Endpunkt:
    POST https://indexing.googleapis.com/v3/urlNotifications:publish
  2. Geben Sie im Hauptteil der Anfrage mit der folgenden Syntax die Webadresse der Seite an:
    {
      "url": "content_location",
      "type": "URL_UPDATED"
    }
  3. Google antwortet auf erfolgreiche Indexing API-Aufrufe mit einem HTTP 200. Eine HTTP 200-Antwort bedeutet, dass Google diese URL demnächst wieder crawlen wird. Der Hauptteil der Antwort enthält ein UrlNotificationMetadata-Objekt, dessen Felder identisch mit den zurückgegebenen Feldern einer Benachrichtigungsstatus-Anfrage sind.
  4. Wenn Sie keine HTTP 200-Antwort erhalten, lesen Sie die Hinweise zu Indexing API-Fehlern.
  5. Wenn sich der Inhalt der Seite ändert, senden Sie eine Aktualisierungsbenachrichtigung. Google crawlt daraufhin die Seite erneut.
  6. Möglicherweise benötigen Sie ein höheres Kontingent als das Standardkontingent. Informationen zum Anzeigen Ihres aktuellen Kontingents und zum Anfordern eines höheren Kontingents finden Sie auf der Seite "Kontingent".

URL entfernen

Benachrichtigen Sie Google nach dem Löschen einer Seite von Ihren Servern, damit die Seite aus dem Index entfernt werden kann und die URL nicht mehr gecrawlt wird. Bevor Sie das Entfernen anfordern, müssen Sie die Seite von Ihrem Server entfernen und die URL muss den Statuscode 404 oder 410 zurückgeben.

So beantragen Sie das Entfernen einer Seite aus unserem Index:

  1. Senden Sie eine POST-Anfrage an den folgenden Endpunkt:
    POST https://indexing.googleapis.com/v3/urlNotifications:publish
  2. Geben Sie im Hauptteil der Anfrage die URL an, die Sie entfernen möchten, und verwenden Sie dabei die folgende Syntax:
    {
      "url": "content_location",
      "type": "URL_DELETED"
    }

    Beispiel:

    {
      "url": "https://careers.google.com/jobs/google/technical-writer",
      "type": "URL_DELETED"
    }
  3. Google antwortet auf erfolgreiche Indexing API-Aufrufe mit einer HTTP 200-Antwort. Eine HTTP 200-Antwort bedeutet, dass Google bereit ist, diese URL aus dem Index zu entfernen. Der Hauptteil der Antwort enthält ein UrlNotificationMetadata-Objekt, dessen Felder identisch mit den zurückgegebenen Feldern einer Benachrichtigungsstatus-Anfrage sind.
  4. Wenn Sie keine HTTP 200-Antwort erhalten, lesen Sie die Hinweise zu Indexing API-Fehlern.
  5. Möglicherweise benötigen Sie ein höheres Kontingent als das Standardkontingent. Informationen zum Anzeigen Ihres aktuellen Kontingents und zum Anfordern eines höheren Kontingents finden Sie auf der Seite "Kontingent".

Benachrichtigungsstatus abrufen

Mit der Indexing API können Sie ü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 Sie nur, ob Ihre Anfrage erfolgreich übermittelt wurde.

So rufen Sie den Status einer Benachrichtigung ab:

  1. Senden Sie eine GET-Anfrage an den folgenden Endpunkt. Die von Ihnen angegebenen URLs müssen eine URL-Codierung aufweisen. Ersetzen Sie beispielsweise : (Doppelpunkte) durch %3A und / (Schrägstriche) durch %2F.
    GET https://indexing.googleapis.com/v3/urlNotifications/metadata?url=url-encoded_url

    Beispiel:

    GET https://indexing.googleapis.com/v3/urlNotifications/metadata?url=https%3A%2F%2Fcareers.google.com%2Fjobs%2Fgoogle%2Ftechnical-writer
    
  2. Die Indexing API antwortet mit einer HTTP 200-Nachricht einschließlich einer Nutzlast, die Details zur Benachrichtigung enthält. Im folgenden Beispiel sehen Sie den Hauptteil einer Antwort mit Informationen zu einer Aktualisierungs- und Löschbenachrichtigung:
    {
      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”
      }
    }
    
  3. Wenn Sie keine HTTP 200-Antwort erhalten, lesen Sie die Hinweise zu Indexing API-Fehlern.
  4. Möglicherweise benötigen Sie ein höheres Kontingent als das Standardkontingent. Informationen zum Anzeigen Ihres aktuellen Kontingents und zum Anfordern eines höheren Kontingents finden Sie auf der Seite "Kontingent".

Batch-Indexierungsanfragen senden

Um die Anzahl der HTTP-Verbindungen, die Ihr Client herstellen muss, möglichst gering zu halten, können Sie bis zu 100 Aufrufe an die Indexing API in einer einzigen mehrteiligen HTTP-Anfrage zusammenfassen, die auch als Batch bezeichnet wird.

Verwenden Sie beim Senden einer Batchanfrage an die Indexing API den folgenden Endpunkt:

https://indexing.googleapis.com/batch

Der Hauptbereich einer Batchanfrage besteht aus mehreren Teilen. Jeder Teil ist in sich eine vollständige HTTP-Anfrage mit eigenem Verb, eigener URL, eigener Kopfzeile und eigenem Text. Die einzelnen Teile einer Batchanfrage dürfen nicht größer als 1 MB sein.

Um Ihnen 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 finden Sie auf den folgenden Seiten:

Wenn Sie auf diesen Seiten die Beispiele zur Batchverarbeitung verwenden, müssen Sie möglicherweise Ihren 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 finden Sie unter Batchanfragen senden.

Feedback geben zu...