How to Use IndexNow HTTP Requests for Forum Indexing

Community forums generate fresh discussions throughout the day, but search engines can take time to crawl through deep board structures. With the IndexNow protocol, community administrators can explicitly signal participating search engines whenever a member starts a thread, updates an existing topic, or deletes obsolete content. Integrating this notification method alongside your general forum SEO basics helps search engines quickly discover your newest discussions without waiting for automated crawling.
Step 1: Generate an Account Verification Key
Before sending any requests, you need to establish a valid key that connects your forum host to your submissions. According to the IndexNow documentation, your key must meet clear structural criteria:
- It must have a minimum length of 8 hexadecimal characters.
- It can contain a maximum of 128 hexadecimal characters.
- Permitted characters are limited to lowercase letters (a-z), uppercase letters (A-Z), numbers (0-9), and dashes (-).
Keep your key private. Only your administration team and the participating search engines should know this value and where your key file is placed.
Step 2: Place the Key File on Your Web Server
Search engines verify host ownership by checking for a hosted key file before processing your submissions. The standard protocol allows two methods, but the primary method is strongly recommended for community websites.
Under Option 1, you create a UTF-8 encoded text key file named after your key with a text extension, such as {your-key}.txt. This file must contain your actual key inside its text content and sit directly in the root directory of your website host. When you submit URLs, search engines fetch this file from your root location to confirm ownership, and they continue using that key until you decide to replace it.
Under Option 2, you may place one or more UTF-8 encoded text key files in subdirectories on the same host. However, this second option restricts which URLs can be verified. For instance, placing a key inside a specific catalog path only allows submissions for web addresses starting with that exact path, while addresses outside that directory path will not be considered valid. To avoid validation issues across your board categories, place the single verification file in your root folder.
Step 3: Submit Individual New Posts via HTTP GET
When a member creates a single new thread or updates an existing reply, you can notify search engines using a basic HTTP GET request. This can be issued directly through a web browser, automated server scripts, wget, curl, or any other web request tool you prefer.
The request format targets your chosen search engine host:
https://<searchengine>/indexnow?url=url-changed&key=your-key
The URL representing the added, updated, or deleted content must be properly URL-escaped and encoded to adhere to the RFC-3986 standard for URIs. If you opted for a custom subfolder key location rather than the root directory, you must also append the keyLocation parameter containing the exact address of your hosted key file.
Step 4: Send Batch Topic Updates via JSON POST
When multiple forum discussions receive replies or several threads are updated during regular board housekeeping, submitting addresses in bulk prevents repetitive individual requests. The protocol allows you to package updates using an HTTP POST request carrying a JSON payload.
To batch your notifications, address a POST request to /indexnow on the search engine host with the Content-Type set to application/json; charset=utf-8. Your JSON body specifies your host name, your verification key, and an array named urlList containing the affected addresses. You can submit up to 10,000 URLs per post, and you are free to mix http and https addresses within the same list if necessary.
The official recommendation outlined in the IndexNow documentation is to automate submission of URLs as soon as content is added, updated, or deleted, staying within reasonable volume limits for user-generated content.
Step 5: Verify the HTTP Response Codes
Every submission triggers an HTTP response code indicating how the receiving search engine handled your notification. Review these standard status responses to confirm your forum scripts work as intended:
- HTTP 200: The URL or list was submitted successfully. This response code confirms the search engine received your submission, though it does not imply immediate crawling.
- HTTP 202: The URL was received, but key validation remains pending.
- HTTP 400: Bad request caused by an invalid format.
- HTTP 403: Forbidden request, which happens when the key is invalid, missing, or when the file exists but does not match the key inside.
- HTTP 422: Unprocessable Entity, indicating URLs that do not belong to the host or a key that fails the protocol schema.
- HTTP 429: Too Many Requests, flagging potential spam or excessive submission frequency.
If you see a code other than 200, check that your key matches the schema, confirm the URL formatting adheres to RFC-3986, verify that you are not sending updates too frequently, and resubmit.
Step 6: Understand Multi-Engine Sharing
You do not need to create unique connections for every participating search engine. Search engines that adopt the protocol agree that submitted URLs are automatically shared with all other participating search engines. To qualify as a participant, a search engine must maintain a noticeable presence in at least one market, or maintain close links to the search market while contributing significantly to submission volume. Submitting your forum posts to one participating endpoint distributes the notification across the entire network.
Sources
Published October 28, 2026. No affiliate links on this page. Facts come from the sources linked above; check them for updates.