We have just shipped a batch of additions for teams building SEO products on the API: the Google SERP endpoint can now be pointed at a city and a device and told to stop at your domain, the backlink and domain APIs gained paging, filters, history and per-page breakdowns, and any AI chat model can now answer from a live web search and return its sources.
What's new
- Google SERP: device, city-level location, coordinates, and stop_at_domain — billed only for the pages fetched
- New endpoints: Backlink History, Top Linked Pages, Domain Top Pages
- Backlinks and domain keywords: offset paging, sorting, and filters (dofollow, lost, broken, position, URL)
- AI chat: webSearch on any model, with one sources list in the response
- Lighthouse: mobile or desktop, with the failed audits
Rank tracking on the Google SERP API
`POST /v1/serp/google` now accepts `device` (desktop or mobile), a city or region `location_code`, a `location_name`, or `coordinates`. With `stop_at_domain` the search stops at the page where your domain appears and you are billed only for the pages fetched — a depth-50 check that finds the domain on page one costs $0.01 instead of $0.05. Every location code is searchable in the docs.
curl -X POST https://api.yepapi.com/v1/serp/google \
-H "x-api-key: $YEPAPI_KEY" \
-H "Content-Type: application/json" \
-d '{
"query": "stripe pricing",
"depth": 50,
"device": "mobile",
"location_code": 1023191,
"stop_at_domain": "stripe.com"
}'Backlinks and domain analysis
Backlink History returns one row per month with totals plus new and lost backlinks and referring domains. Top Linked Pages ranks a site's pages by the links pointing at each. Domain Top Pages ranks them by organic traffic, with keyword counts per URL. The existing list endpoints now take `offset`, `sort` and filters, return a `total`, and the backlink summary includes spam score, referring pages and broken-link counts. Keyword overview and related keywords can add clickstream volumes with `include_clickstream`.
Web search and sources on AI chat
Set `webSearch: true` on `POST /v1/ai/chat` and any model — OpenAI, Anthropic, Google, xAI — answers from a live web search. The pages it used come back in `data.sources` as `{ url, title }`, in the same place for every model including Perplexity Sonar, so you can run one prompt across several models and compare what each cites.