serpยทbase API Documentation

Proxies

Scraping endpoints reach the target site through a proxy, never from our infrastructure address. You choose which proxy: yours, or one you buy from us.

Why a proxy is required

Our scraping servers share a fixed set of outbound addresses. If every customer's traffic left from those addresses, a single abusive caller would get the whole range blocked โ€” for everyone. Routing each request through a per-customer proxy keeps that blast radius at one customer.

That is why parse_page, parse_page_pro, screenshot_page, extract_schema and ocr_pdf always leave through a proxy. Search endpoints (Yandex, Google, Wordstat, news, shopping) do not use one: those requests go to our search data provider, not to the target website.

Two ways to get a proxy

Your own proxyBuy from us
SetupPaste host:port:user:passPick a country and a period
PriceFree โ€” you already pay for itFrom $0.41 per 7 days (see pricing)
IP reputationYours to manageFresh IPv4 datacenter addresses
Best forExisting proxy pool, geo already coveredGetting started fast, specific countries

Option 1 โ€” your own proxy

Set it once, and every scraping call runs through it:

curl -X POST https://serp-base.com/v1/proxy/own \
  -H "Authorization: Bearer $SERPBASE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"proxy":"198.51.100.10:8080:user:pass"}'

Accepted formats: host:port:user:pass, host:port, or a full URL such as http://user:pass@host:port. SOCKS5 is supported by the scraping endpoints; pass the scheme explicitly if your proxy needs it.

Internal and private addresses are rejected โ€” a proxy must be a public endpoint.

Option 2 โ€” buy an IPv4 proxy from us

1. Check the price

curl "https://serp-base.com/v1/proxy/prices?days=30" \
  -H "Authorization: Bearer $SERPBASE_KEY"
{
  "price_rub": 168.0,
  "price_per_proxy_rub": 168.0,
  "price_usd": 1.77,
  "days": 30,
  "count": 1,
  "version": "IPv4"
}

2. Pick a country

curl "https://serp-base.com/v1/proxy/countries?limit=10" \
  -H "Authorization: Bearer $SERPBASE_KEY"

Returns countries with live availability, e.g. {"country":"in","available":1630}. Availability changes through the day; a country missing from the list can still return on the next refresh.

3. Buy

curl -X POST https://serp-base.com/v1/proxy/buy \
  -H "Authorization: Bearer $SERPBASE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"country":"ru","days":30}'
{
  "ok": true,
  "bought": 1,
  "price_rub": 168.0,
  "balance_left": 132.0,
  "expires_at": "2026-11-18 14:22:31",
  "proxies": [{
    "id": "42248665",
    "host": "193.41.87.199",
    "port": 8000,
    "username": "V1UEUP",
    "country": "be",
    "expires_at": "2026-11-18 14:22:31",
    "days_left": 29,
    "usage": "http://V1UEUP:[email protected]:8000",
    "usage_socks": "socks5://V1UEUP:[email protected]:8000"
  }]
}

4. Read it back any time

curl https://serp-base.com/v1/proxy \
  -H "Authorization: Bearer $SERPBASE_KEY"

The connection strings stay available for the lifetime of the proxy โ€” you do not have to store them from the purchase response.

Pricing

PeriodPrice per IPv4 proxy
7 days39.20 โ‚ฝ โ‰ˆ $0.41
30 days168.00 โ‚ฝ โ‰ˆ $1.77
90 daysโ‰ˆ $5.30

Billed from your account balance; nothing is charged for creating the entry. Unused days are not refunded on cancellation.

IPv4 vs IPv6 โ€” check before you buy

Buying IPv6 for an IPv4-only site returns 502. IPv6 proxies can only reach sites that publish an AAAA (IPv6) record. Most marketplaces and e-commerce sites are IPv4-only. Verify first:

curl "https://serp-base.com/v1/proxy/check-ipv6?url=ozon.ru" \
  -H "Authorization: Bearer $SERPBASE_KEY"
{
  "host": "ozon.ru",
  "ipv4": true,
  "ipv6": false,
  "verdict": "ipv4-only",
  "note": "Site has no IPv6 โ€” an IPv6 proxy would return 502. Use an IPv4 proxy.",
  "ipv6_recommended": false,
  "required_version": 4
}

We sell IPv4 only through /v1/proxy/buy, because it works for both IPv4-only and dual-stack targets.

Auto-renew

Renewal is off by default. Turn it on and we extend the proxy for another 30 days two days before expiry, charging your balance. If the balance is short, we skip the renewal and the proxy simply expires โ€” no silent overdraft.

curl -X POST https://serp-base.com/v1/proxy/auto-prolong \
  -H "Authorization: Bearer $SERPBASE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"enabled":true}'

Manage a proxy

ActionRequest
ListGET /v1/proxy
One proxyGET /v1/proxy/<id>
Extend manuallyPOST /v1/proxy/prolong {"id":"โ€ฆ","days":30}
DeletePOST /v1/proxy/delete {"id":"โ€ฆ"}
Auto-renewPOST /v1/proxy/auto-prolong {"enabled":true}

Using the proxy outside serp-base

A proxy you buy is yours: use it in your own scraper, in a browser profile, or in any tool that accepts an HTTP or SOCKS5 proxy. The usage field is ready to paste.

curl -x "http://V1UEUP:[email protected]:8000" https://api.ipify.org

Errors

CodeMeaningWhat to do
400Bad country or periodPeriod is 7โ€“90 days; country is an ISO-2 code from /countries
402Insufficient balanceTop up, or buy a shorter period
404Proxy not found on your accountCheck the id from GET /v1/proxy
429Provider rate limitRetry after a few seconds

Pay-per-request data APIs. Built for agents and developers.