SERP API

SERP API

Get the full search results page for any query as structured JSON — organic listings, AI Overview, People Also Ask, featured snippet, shopping, and local pack — across Google, Bing, Yahoo & DuckDuckGo, plus dedicated News, Image, and Video search.

POST/api/v1/serp$1 per 1,000 queriesscope serp:read
Quick start

One request, structured JSON back

Request
curl -X POST https://instarankseo.com/api/v1/serp \
  -H "X-API-Key: isk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{"q": "best running shoes", "country": "us", "num": 20, "engine": "google"}'
Response
{
  "success": true,
  "query": "best running shoes",
  "country": "us",
  "results": {
    "organic": [
      { "position": 1, "url": "https://...", "title": "...", "snippet": "..." }
    ],
    "aiOverview": { "text": "...", "sources": [ ... ] },
    "peopleAlsoAsk": [ ... ],
    "featuredSnippet": null,
    "shopping": [ ... ],
    "localPack": [ ... ]
  },
  "meta": { "creditsUsed": 1, "creditsRemaining": 18999, "apiVersion": "1.0" }
}
Reference

Parameters

FieldTypeRequiredDescription
qstringrequiredThe search query.
enginestringoptionalSearch engine: google (default), bing, yahoo, or ddg.
countrystringoptional2-letter ISO country code (default "us").
numintegeroptionalOrganic results to return, 1–100 (default 20).
modestringoptional"deep" (default, full results + AI Overview) or "quick" (faster, no AI Overview).
pagesintegeroptionalResult pages to fetch, 1–10 (default 1).
freshnessstringoptionalTime filter: d, 7d, w, m, or y.
languagestringoptional2-letter language code to restrict content language.
Why this API

Built for builders

Full SERP, not just links

Organic, AI Overview, People Also Ask, featured snippet, shopping, and local pack — every block the results page renders, normalized into one JSON shape.

Four engines + News, Images, Video

Query Google, Bing, Yahoo, or DuckDuckGo on the main endpoint, and hit /serp/news, /serp/images, and /serp/videos for dedicated vertical search — all the same clean shape, all 1 credit.

AI Overview & deep controls

Get the AI Overview text and its cited sources, or switch to quick mode for speed. Filter by freshness, language, country, and paginate up to 10 pages.

Transparent

Pricing & limits

Price

$1 per 1,000 queries

1 credit per query

Billed from one credit wallet. Failed upstream calls are refunded automatically.

Rate limits

  • Free10 / min
  • SEO+60 / min
  • Agency120 / min

Surfaced as X-RateLimit-* headers on every response.

Errors

Every non-2xx shares one envelope with a machine-readable code, a retryable flag, and a requestId for tracing.

Send an Idempotency-Key header to retry POSTs safely without double-charging.

Skip the proxy farms, CAPTCHA solvers, and HTML parsing. One POST returns clean, structured SERP data across every engine and vertical — at a flat $1 per 1,000 queries.

Last updated:

FAQ

SERP API FAQ

Common questions about the SERP API — pricing, auth, and what it returns.

  • What does the SERP API return?

    A single JSON object with the full results page: organic listings (position, url, title, snippet), the AI Overview and its cited sources, People Also Ask, the featured snippet, shopping results, and the local pack. Empty blocks come back as empty arrays or null so your parser never breaks.

  • Which search engines and verticals are supported?

    The main /api/v1/serp endpoint supports Google, Bing, Yahoo, and DuckDuckGo via the engine field. Three dedicated vertical endpoints share the same auth and pricing: POST /api/v1/serp/news (news articles), /api/v1/serp/images (image results), and /api/v1/serp/videos (video results).

  • How much does the SERP API cost?

    One credit per query — $1 per 1,000 queries at the standard rate — for web, news, images, and video alike. You are only charged for successful queries; if the upstream search fails, the credit is automatically refunded.

  • How do I authenticate?

    Send your API key in the X-API-Key header on every request. Create and manage keys from your InstaRank dashboard under API Keys. The SERP API requires the serp:read scope.

  • Can I localize and filter results?

    Yes. Pass a 2-letter country code (e.g. "us", "gb", "in") to localize, a language code to restrict content language, a freshness window (d, 7d, w, m, y) to time-bound results, and pages (1–10) to paginate.

  • Are there rate limits?

    Yes — 10 requests per minute on Free, 60 on SEO+, and 120 on Agency. Every response includes X-RateLimit-Limit and X-RateLimit-Remaining headers so you can pace your requests.