Get Started

Go from zero to your first API response in under five minutes. Follow the steps below.

1

Create an account

Sign up with your email or Google account. It takes less than a minute.

Sign Up Free
2

Choose a plan

Pick the plan that fits your needs. All plans include full API access, JSON + HTML responses, and a 99.9% uptime SLA. Annual billing saves you 2 months.

PlanRequests/monthPrice
Pro10,000$9.99/mo
Ultra50,000$44.99/mo
Mega300,000$239.99/mo
EnterpriseCustomContact us

Compare all plan features

3

Generate an API key

Go to the API Keys page in your dashboard and create a new key. Keep it safe — you will need it for every request.

Authorization: Bearer mk_live_xxxxxxxxxxxxxxxxxxxxxxxx
4

Make your first request

Send a search query using GET or POST. Here are examples in popular languages:

cURL

curl -G https://serpsearch.com/api/v1/search \
  -H "Authorization: Bearer mk_live_xxxxxxxxxxxxxxxxxxxxxxxx" \
  --data-urlencode "q=hello world" \
  -d "num=5"

Python

import requests

resp = requests.get(
    "https://serpsearch.com/api/v1/search",
    headers={"Authorization": "Bearer mk_live_xxxxxxxxxxxxxxxxxxxxxxxx"},
    params={"q": "hello world", "num": 5},
)
resp.raise_for_status()
data = resp.json()
print(data["organic_results"])

JavaScript (fetch)

const res = await fetch(
  "https://serpsearch.com/api/v1/search?q=hello+world&num=5",
  {
    headers: {
      Authorization: "Bearer mk_live_xxxxxxxxxxxxxxxxxxxxxxxx",
    },
  }
);
const data = await res.json();
console.log(data.organic_results);

Go

req, _ := http.NewRequest("GET",
    "https://serpsearch.com/api/v1/search?q=hello+world&num=5", nil)
req.Header.Set("Authorization",
    "Bearer mk_live_xxxxxxxxxxxxxxxxxxxxxxxx")

resp, err := http.DefaultClient.Do(req)
if err != nil {
    panic(err)
}
defer resp.Body.Close()

var data map[string]interface{}
json.NewDecoder(resp.Body).Decode(&data)
fmt.Println(data["organic_results"])
5

Parse the response

The API returns structured JSON with organic results, featured snippets, knowledge graph data, and related searches. Here is what a typical response looks like:

{
  "query": "hello world",
  "total_results": 4250000000,
  "search_time": 0.31,
  "organic_results": [
    {
      "position": 1,
      "title": "'Hello, World!' program - Wikipedia",
      "link": "https://en.wikipedia.org/wiki/%22Hello,_World!%22_program",
      "snippet": "A 'Hello, World!' program is generally a simple computer program...",
      "displayed_link": "en.wikipedia.org"
    }
  ],
  "related_searches": [
    "hello world program",
    "hello world in python"
  ]
}
6

Monitor your usage

Track your API usage and remaining quota from the Usage page in your dashboard. Every response also includes X-Quota-Used and X-Quota-Limit headers so you can monitor programmatically.

Need more detail?

Check the full API documentation for parameters, error codes, response headers, and advanced examples.