Documentation
Integrations

DataForSEO

Keyword rankings, backlinks, domain authority. Currently routed through n8n.

Overview

DataForSEO is our SERP intelligence and backlink data provider. Direct API access exists, but to control cost and to allow caching we currently funnel requests through an n8n workflow that runs on a schedule (weekly for keyword positions, monthly for backlinks) and pushes the result into the dashboard.

The route

text
GET /api/metrics/seo-rankings?domain=example.com

The route reads from a Supabase cache populated by n8n. It returns:

ts
{
  connected: true,
  weekDate: '2026-05-01',  // when the snapshot was taken
  summary: {
    totalKeywords, top3, top5, top10, top20, notFound
  },
  backlinks: {
    totalBacklinks, referringDomains, referringIPs, domainRank
  },
  rankings: [
    { keyword, rank, url, found }, ...
  ]
}

Per-client config

  • clients.dataforseo_domain — the canonical domain (no protocol, no www).
  • Tracked keywords are managed inside the n8n workflow, not in FPM Client Hub. Adding a keyword today is a manual step in n8n.

Where it appears

  • Keyword Rankings Summary card on the SEO/GEO/AIEO tab — totals by position bucket.
  • Backlinks & Domain card — totalBacklinks, referringDomains, referringIPs, domainRank.
  • SERP Rankings table — full keyword list with current rank.

Status partial

The data flows but two limitations are worth flagging:

  • Snapshots are weekly, not on-demand. If n8n misses a run, the dashboard shows stale data.
  • There is no UI to manage tracked keywords from FPM Client Hub. Adding/removing a keyword requires editing the n8n workflow.
Future: SE Ranking
SE Ranking has a richer agency-tier offering and a proper MCP server we can integrate with. It is on the roadmap as a possible replacement for DataForSEO. See Roadmap.

Direct API access (fallback)

For one-off audits we can also hit DataForSEO directly. Credentials live in 1Password under DataForSEO API. The auth is HTTP Basic. Endpoints we use:

  • POST /v3/serp/google/organic/live/regular — single-keyword SERP snapshot.
  • POST /v3/backlinks/summary/live — backlink summary.
  • POST /v3/dataforseo_labs/google/keywords_for_site/live — keywords a domain ranks for.