curl -X POST https://searchcompany-main.up.railway.app/api/cron/submit-indexnow \
-H "Content-Type: application/json" \
-d '{
"source_url": "https://nike.com",
"urls": [
"https://nike.com/expert-review/",
"https://nike.com/comparison/"
]
}'
{
"status": "success",
"submitted": 2,
"http_status": 200
}
π΅ POST - Submit IndexNow
Submit IndexNow
Submit URLs to IndexNow for instant search engine indexing
POST
/
api
/
cron
/
submit-indexnow
curl -X POST https://searchcompany-main.up.railway.app/api/cron/submit-indexnow \
-H "Content-Type: application/json" \
-d '{
"source_url": "https://nike.com",
"urls": [
"https://nike.com/expert-review/",
"https://nike.com/comparison/"
]
}'
{
"status": "success",
"submitted": 2,
"http_status": 200
}
Internal endpoint for the Cron service to notify search engines about new URLs.
The key file contains the key itself (from
IndexNow submissions are automatically shared across all participating search
engines: Bing, Yandex, Naver, Seznam.cz, Yep, and Amazon.
Why IndexNow?
Without IndexNow, search engines may take days to weeks to discover new content. With IndexNow, search engines are notified immediately when content is added, updated, or deleted.Request Body
string
required
The customerβs real domain (e.g. βhttps://nike.comβ). IndexNow submissions must match this host.
array
required
Array of full URLs to submit (up to 10,000 per request)
Response
string
βsuccessβ or βerrorβ
integer
Number of URLs submitted
integer
HTTP status code from IndexNow API
curl -X POST https://searchcompany-main.up.railway.app/api/cron/submit-indexnow \
-H "Content-Type: application/json" \
-d '{
"source_url": "https://nike.com",
"urls": [
"https://nike.com/expert-review/",
"https://nike.com/comparison/"
]
}'
{
"status": "success",
"submitted": 2,
"http_status": 200
}
IndexNow Response Codes
| Code | Meaning |
|---|---|
| 200 | OK - URLs submitted successfully |
| 202 | Accepted - URLs received, key validation pending |
| 400 | Bad request - Invalid format |
| 403 | Forbidden - Key not valid (check key file exists) |
| 422 | Unprocessable - URLs donβt belong to host |
| 429 | Too Many Requests - Rate limited |
Key Verification
IndexNow requires a key file at the site root to verify ownership. This is automatically added during site creation:https://example.searchcompany.dev/{INDEXNOW_KEY}.txt
INDEXNOW_KEY env var).
Workflow
This is Phase 3 of the AI articles workflow:Phase 1: Generate content (parallel)
βββ create-ai-article (ΓN) β Returns files
Phase 2: Deploy to Vercel (single deployment)
βββ deploy-to-vercel β Deploys all files
Phase 3: Submit to IndexNow (this endpoint)
βββ submit-indexnow β Notifies search engines