Yahoo Search Predictions API

Returns the predictions Yahoo shows as people type a keyword. One keyword per GET, or up to 10,000 in a batch job.

GEThttps://rankfield.dev/v1/yahoo/search-predictions?query={keyword}

Send Authorization: Bearer YOUR_API_KEY. Get a free key; no account needed.

Parameters#

NameTypeDescription
queryquery, requiredstringThe keyword, 1 to 200 printable characters.

Response#

FieldTypeDescription
sourcestringyahoo-search-predictions.
query marketstringWhat you asked; market is default.
collectedAtstringWhen Yahoo answered (UTC). Answers may be served from a short cache.
countintegerHow many predictions came back.
predictionsarray of stringsIn Yahoo's order. The field is predictions, not suggestions.

Errors#

Errors come as {"error":"…"} with the HTTP status.

StatusWhen
400The query is empty or too long ({"error":"query must contain 1–200 printable characters"}), or a job holds more than 10,000 keywords (Supply 1–10000 queries).
401The key is missing, unknown or revoked.
429The engine is busy (its request budget is full for the moment), or a job's deadline cannot be met (capacityLimited: true). Wait for Retry-After.
503Collection is paused, cooling down, timed out or unavailable. Wait for Retry-After.

Price and limits#

  • Free; no per-call charge.
  • No per-key limits for now. Each job takes up to 10,000 keywords, and you can run as many jobs as you like. When an engine is busy it answers 429 or 503 with Retry-After.
  • GET …/usage shows the keywords you sent today.

Up to 10,000 keywords in one job#

POST /v1/yahoo/search-predictions/jobs with a unique Idempotency-Key header and {"queries":[…],"delivery":"priority"}. delivery sets how fast the whole batch must finish: live 6 seconds, priority 60 seconds, standard 300 seconds (the default). A batch that cannot meet it answers 429 with capacityLimited: true and Retry-After: retry later or pick a longer tier.

Follow GET /v1/yahoo/search-predictions/jobs/{id}, then read GET /v1/yahoo/search-predictions/jobs/{id}/results?cursor=0 and keep passing the returned cursor while hasMore is true. Results arrive as they finish; each carries its index in your list. POST /v1/yahoo/search-predictions/jobs/{id}/cancel stops a job.

Reference: https://rankfield.dev/docs/suggest/start-a-job

curl -X POST "https://rankfield.dev/v1/yahoo/search-predictions/jobs" \
  -H "Authorization: Bearer $RANKFIELD_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: kw-2026-10-25" \
  -d '{"queries":["seo tools","keyword research"],"delivery":"priority"}'

Notes#

  • Predictions show what people type, not how often: they are not search volumes.

See also#