SearchChampSearchChamp
API Documentation

API overview

Use SearchChamp's REST API from reporting tools, internal scripts, and custom integrations.

The SearchChamp REST API gives your own software access to rankings, tracked keywords, AI Visibility, site-audit summaries, Content Writer articles, and Research Studio sessions. It is designed for reporting, data integrations, and editorial sync. It is separate from the MCP connector, which exposes tools to AI clients.

Ten REST endpoints is the complete current public surface

The endpoint reference is not a partial list. SearchChamp currently exposes exactly ten public REST routes: eight GET reads and two PATCH status updates. Other Content Writer and Research Studio application endpoints are not public API contracts. Some publishing, research-assistance, and broader SEO workflows are available through MCP instead. See feature coverage before choosing an integration.

Nothing here starts a generation or research run

The Content Writer and Research Studio routes read content SearchChamp has already generated, and the two PATCH routes flip a status value in SearchChamp's own database. No public REST route triggers a Content Writer run or a Research Studio run, and publishing a status does not push anything to WordPress, Shopify, or any other connected CMS.

Availability

The public REST API requires a Pro plan or higher and an API key. The GET routes need the key's read permission; the two PATCH routes need write. Trial, Starter, and other below-floor plans cannot call these routes at all.

Base URLs

EnvironmentBase URL
Productionhttps://api.searchchamp.com
SearchChamp development/testinghttps://api-dev.searchchamp.dev

Use the environment that contains the organization and sites you want to read. API keys are environment-specific.

Quick start

  1. Create an API key under Settings → API Keys and save the value beginning with atl_.
  2. Export it from your shell instead of putting it in source code.
  3. Call a route with your site's exact domain or slug.
export SEARCHCHAMP_API_KEY='atl_your_key_here'

curl --fail-with-body \
  --get 'https://api.searchchamp.com/v1/api/rankings' \
  --header "Authorization: Bearer $SEARCHCHAMP_API_KEY" \
  --data-urlencode 'site=example.com' \
  --data-urlencode 'days=7' \
  --data-urlencode 'limit=10'

A successful response uses the common envelope:

{
  "data": {
    "site": "example.com",
    "days": 7,
    "movers": []
  },
  "meta": {},
  "errors": []
}

Current boundary

The v1 public surface contains eight GET routes and two PATCH status routes. It has no Content Writer generation endpoint, no Research Studio session-start endpoint, no CMS publish endpoint, no webhooks, no pagination cursors, and no idempotency-key header. Pagination on the two feeds is limit/offset. Do not call the internal endpoints used by the SearchChamp web app; they are not part of the public contract and can change without notice.

On this page