Documentatie

Eén URL indienen


Als u een URL wilt indienen met behulp van een HTTP-verzoek (vervang door de URL gegeven door de zoekmachine), verstrekt u uw verzoek aan de volgende URL:

                https://<searchengine>/indexnow?url=url-changed&key=your-key
            
  • url-changed is een URL van uw website die is toegevoegd, bijgewerkt of verwijderd. URL moet een URL met escapes zijn en gecodeerd. Zorg ervoor dat uw URL's de RFC-3986 -standaard voor URI's volgen.
  • Uw-sleutel moet bestaan uit minimaal 8 en maximaal 128 hexadecimale tekens. De sleutel mag alleen uit de volgende tekens bestaan: kleine letters (a-z), hoofdletters (A-Z), cijfers (0-9) en streepjes (-).

Als u zoekmachines bijvoorbeeld wilt informeren dat https://www.example.com/product.html is bijgewerkt, en als u daarvoor deze sleutel wilt gebruiken, wordt uw URL:

                https://<searchengine>/indexnow?url=https://www.example.com/product.html&key=
            

U kunt het HTTP-verzoek uitgeven met uw browser, wget, curl of een ander mechanisme van uw keuze. Een succesvol verzoek retourneert een HTTP 200-antwoordcode; als u een ander antwoord ontvangt, controleert u of niet te vaak indient, of de sleutel en URL geldig zijn en dient u het verzoek opnieuw in. De HTTP 200-antwoordcode geeft alleen aan dat de zoekmachine uw URL heeft ontvangen.

Set met URL's indienen


Als u een set met URL's wilt indienen met een HTTP-verzoek, verstrekt u uw POST JSON-verzoek aan de URL die door zoekmachines wordt gegeven. Vervang door de hostnaam van de zoekmachine.

                POST /indexnow HTTP/1.1
                Content-Type: application/json; charset=utf-8
                Host: <searchengine>
                {
                  "host": "www.example.com",
                  "key": "",
                  "urlList": [
                      "https://www.example.com/url1",
                      "https://www.example.com/folder/url2",
                      "https://www.example.com/url3"
                      ]
                }
            

U kunt maximaal 10.000 URL's per post indienen, waarbij u http- en https-URL's waar nodig door elkaar gebruikt.

U kunt het HTTP-verzoek uitgeven met wget, curl of een ander mechanisme van uw keuze. Een succesvol verzoek retourneert een HTTP 200-antwoordcode; als u een ander antwoord ontvangt, dient u uw verzoek te verifiëren. Als alles er prima uitziet, dient u uw verzoek opnieuw in. De HTTP 200-responscode geeft alleen aan dat de zoekmachine uw set met URL's heeft ontvangen.

De aanbevolen manier is om indiening van URL's te automatiseren zodra de inhoud is toegevoegd, bijgewerkt of verwijderd; zie de aanbevolen procedures voor door de gebruiker gegeneerde inhoud in de Veelgestelde vragen.

Eigendom via de sleutel


Als u URL's wilt indienen, moet u eigendom van de host waarvoor URL's worden ingediend 'bewijzen' door minimaal één tekstbestand binnen de host te hosten. Wanneer u uw URL's hebt ingediend bij zoekmachines, verkennen zoekmachines het sleutelbestand om eigendom te verifiëren en gebruiken de sleutel tot u de sleutel wijzigt. Alleen u en de zoekmachines moeten de sleutel en de locatie van uw bestandssleutel kennen.

Er zijn twee manieren om eigendom te verifiëren.

Optie 1
Een tekstsleutelbestand in de hoofdmap van uw host hosten.

U moet een met UTF-8 gecodeerd tekstsleutelbestand {your-key}.txt hosten, waarbij u de sleutel vermeldt in het bestand in de hoofdmap van uw website.

Voor de vorige voorbeelden moet u bijvoorbeeld uw UTF-8-sleutelbestand hosten op https://www.example.com/.txt. Verder moet dit bestand de sleutel bevatten

Optie 2
Een tekstsleutelbestand hosten binnen uw host.

U kunt ook één tot veel met UTF-8 gecodeerde tekstsleutelbestanden hosten binnen dezelfde host. U moet de locatie van dit tekstsleutelbestand aangeven bij zoekmachines in elke IndexNow-melding door de locatie op te geven met de variabele keyLocation.

Als u een URL indient, geeft u de sleutelbestandslocatie op als de parameterwaarde keyLocation van de URL.

                    https://<searchengine>/indexnow?url=http://www.example.com/product.html&key=&keyLocation=http://www.example.com/myIndexNowKey63638.txt
                

Als u een set URL's indient, geeft u de sleutelbestandslocatie op als de variabele keyLocation in de JSON-inhoud.

                    POST /indexnow HTTP/1.1
                    Content-Type: application/json; charset=utf-8
                    Host: <searchengine>
                    {
                      "host": "www.example.com",
                      "key": "",
                      "keyLocation": "https://www.example.com/myIndexNowKey63638.txt",
                      "urlList": [
                          "https://www.example.com/url1",
                          "https://www.example.com/folder/url2",
                          "https://www.example.com/url3"
                          ]
                    }
                

In deze optie 2 bepaalt de locatie van een sleutelbestand de set met URL's die kunnen worden bijgevoegd bij deze sleutel. Een sleutelbestand op http://example.com/catalog/key12457EDd.txt kan alle URL's bevatten die beginnen met http://example.com/catalog/, maar kan geen URL's bevatten die beginnen met http://example.com/help/.

URL's die niet als geldig worden gezien in http://example.com/catalog/sitemap.xml zijn:

URL's die niet als geldig worden gezien in optie 2 worden mogelijk niet meegenomen voor indexeren. Het wordt ten zeerste aangeraden om optie 1 te gebruiken en om uw bestandssleutel te plaatsen in de hoofdmap van uw webserver.

Requirement for search engines


Search Engines adopting the IndexNow protocol agree that submitted URLs will be automatically shared with all other participating Search Engines. To participate, search engines must have a noticeable presence in at least one market.