crawlerdata-com Serp API Compatible API

SerpApi parameters and response format: switch by changing the base URL

Operations 1

GET /search.json SerpApi-compatible search (GET /search also works) #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/crawlerdata-com:crawlerdata-com-serpapi-compatible-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

crawlerdata-com-serpapi-compatible-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: CrawlerData Serp API Compatible API
  version: 1.0.0
  description: Google Shopping (products, sellers, product details) and Google Search, Images, News, Local and Autocomplete results as JSON. Submit a job to POST /v1/jobs. The live queue returns the result in the same response; fast and regular are asynchronous (poll GET /v1/jobs/{jobId} or receive a webhook). Failed jobs cost 0 credits. Also available as an MCP server at POST /mcp.
  contact:
    name: CrawlerData
    email: contact@crawlerdata.com
    url: https://crawlerdata.com
  termsOfService: https://crawlerdata.com/legal/terms
  x-logo:
    url: https://crawlerdata.com/favicon.svg
servers:
- url: https://api.crawlerdata.com
security:
- bearerAuth: []
tags:
- name: SerpApi-compatible
  description: 'SerpApi parameters and response format: switch by changing the base URL'
paths:
  /search.json:
    get:
      tags:
      - SerpApi-compatible
      operationId: serpApiSearch
      summary: SerpApi-compatible search (GET /search also works)
      description: 'Takes SerpApi query parameters and returns SerpApi-shaped JSON (search_metadata, search_parameters, organic_results, shopping_results, news_results, ...), built only from the data our endpoints return. Google web results also carry, when the page shows them: source, date, sitelinks (inline or expanded), rich_snippet and key_moments on organic results; inline_videos, short_videos, discussions_and_forums and inline_images; search_information.spelling_fix and showing_results_for. Runs one live job, billed like POST /v1/jobs (1 credit; failed searches are free). Parameters SerpApi has that we cannot apply (num, google_domain, safe, ...) are ignored.'
      security:
      - bearerAuth: []
      - apiKeyQuery: []
      parameters:
      - name: engine
        in: query
        schema:
          type: string
          enum:
          - google
          - google_shopping
          - google_news
          - google_images
          - google_local
          - google_autocomplete
          default: google
      - name: q
        in: query
        required: true
        schema:
          type: string
          maxLength: 500
      - name: gl
        in: query
        schema:
          type: string
          enum:
          - us
          - gb
          - uk
          - ca
          - au
          - de
          - fr
          - nl
          - it
          - es
          - pt
          - be
          - at
          - ch
          - se
          - 'no'
          - dk
          - fi
          - ie
          - pl
          - cz
          - il
          - ae
          - in
          - jp
          - kr
          - sg
          - mx
          - br
          - nz
          - za
          - tr
          - ar
          - cl
          - co
          - pe
          - hk
          - tw
          - th
          - vn
          - id
          - my
          - ph
          - pk
          - bd
          - sa
          - eg
          - qa
          - kw
          - gr
          - hu
          - ro
          - bg
          - hr
          - sk
          - si
          - ua
          - rs
          - lt
          - lv
          - ee
          - lu
          - ng
          - ke
          - ma
          - is
          - cy
          - mt
          - ba
          - mk
          - me
          - md
          - ge
          - am
          - az
          - kz
          - uz
          - ec
          - uy
          - py
          - bo
          - cr
          - pa
          - do
          - gt
          - sv
          - pr
          - ve
          - lk
          - np
          - kh
          - jo
          - lb
          - om
          - bh
          - gh
          - tz
          - ug
          - dz
          - tn
          default: us
        description: Country
      - name: hl
        in: query
        schema:
          type: string
          default: en
        description: Language, e.g. en (a regional code such as en-GB uses its language part)
      - name: device
        in: query
        schema:
          type: string
          enum:
          - desktop
          - mobile
          - iphone
          - ipad
          - galaxy
          - tablet
          default: desktop
        description: engine=google only; tablet is an iPad
      - name: location
        in: query
        schema:
          type: string
        description: 'Search from a city, region or postal code: a Google canonical location name, e.g. "Austin, Texas, United States". Without a country name the gl country is added; without gl the country of the location is used.'
      - name: uule
        in: query
        schema:
          type: string
        description: 'Advanced: a raw Google uule value ("w+...", "a+...", "j+..."), plain or URL-encoded as copied from a Google URL, instead of location'
      - name: start
        in: query
        schema:
          type: integer
          minimum: 0
          maximum: 180
        description: 'Result offset: a multiple of 10 up to 90 (google, google_news) or of 20 up to 180 (google_local)'
      - name: tbm
        in: query
        schema:
          type: string
          enum:
          - nws
          - isch
          - shop
          - lcl
        description: 'engine=google only: news, images, shopping or local results'
      responses:
        '200':
          description: SerpApi-shaped results
          content:
            application/json:
              schema:
                type: object
        '400':
          $ref: '#/components/responses/SerpApiError'
        '401':
          $ref: '#/components/responses/SerpApiError'
        '402':
          $ref: '#/components/responses/SerpApiError'
        '429':
          $ref: '#/components/responses/SerpApiError'
        '502':
          $ref: '#/components/responses/SerpApiError'
components:
  responses:
    SerpApiError:
      description: Error, SerpApi style
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API key from the dashboard (sk_...)
    apiKeyQuery:
      type: apiKey
      in: query
      name: api_key
      description: The same API key as a query parameter (SerpApi style, /search.json only)
    cseKeyQuery:
      type: apiKey
      in: query
      name: key
      description: The same API key as a query parameter (Custom Search style, /customsearch/v1 only)
externalDocs:
  description: Docs
  url: https://app.crawlerdata.com/docs