Search & AI visibility

Read Search Console data and saved AI visibility results for sites you own.

AI visibility

GET/sites/:slug/ai-visibility

Get the stored AI visibility snapshot

Returns visibility score, tracked questions, per-platform answers and mentions, cited pages, and run history for ChatGPT, Perplexity, Google AI and Claude. A read never starts or spends a vendor run.

Same call in the CLIvdr sites:visibility example.com
Request
curl https://verifieddr.com/api/v1/sites/example.com/ai-visibility \
  -H "Authorization: Bearer vdr_your_api_key"
Response
{
  "status": "ready",
  "snapshot": { "visibilityScore": 42, "questions": [] },
  "prompts": [],
  "history": []
}
  • If no run is stored, status is pending with instructions to start the first run in the dashboard.
POST/sites/:slug/ai-visibility

Add or reset tracked questions

Send {"prompt":"..."} to add a question, or {"action":"reset"} to reseed questions from the site keywords. This edits the next-run input and never runs a vendor immediately. Verified free trial keys may configure questions.

Same call in the CLIvdr sites:visibility example.com --add-prompt "best crm tools"
Request
curl https://verifieddr.com/api/v1/sites/example.com/ai-visibility \
  -X POST \
  -H "Authorization: Bearer vdr_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"prompt":"best crm tools"}'
Response
{ "ok": true, "prompts": [{ "id": "prompt-id", "prompt": "best crm tools" }] }
POST/sites/:slug/ai-visibility

Run an AI visibility scan

Send {"action":"run"}. Running a scan needs a running growth program, unless the account still has the one limited scan granted during onboarding. That scan asks up to 4 neutral buyer questions that do not name the website on ChatGPT, Perplexity, Google AI and Claude.

Same call in the CLIvdr sites:visibility example.com --run
Request
curl https://verifieddr.com/api/v1/sites/example.com/ai-visibility \
  -X POST \
  -H "Authorization: Bearer vdr_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"action":"run"}'
Response
{ "ok": true, "status": "ready", "locked": true, "snapshot": { "visibilityScore": 24 } }
  • The onboarding funnel grants one free scan. An account or API key starts with the saved result.
  • A free result includes the full answer grid; paid results add history, exact cited pages, and outreach evidence.
DELETE/sites/:slug/ai-visibility?promptId=:id

Remove a tracked question

Stops tracking one question by the prompt ID returned by the GET endpoint.

Same call in the CLIvdr sites:visibility example.com --remove-prompt prompt-id
Request
curl "https://verifieddr.com/api/v1/sites/example.com/ai-visibility?promptId=prompt-id" \
  -X DELETE \
  -H "Authorization: Bearer vdr_your_api_key"
Response
{ "ok": true, "prompts": [] }

Google Search Console

These owner-scoped endpoints require a connected Search Console property and a running growth program.

GET/sites/:slug/gsc-performance?range=28d

Get Search Console performance

Returns daily clicks, impressions, CTR, and position; current and immediately preceding totals; and top queries, pages, countries, and devices.

Same call in the CLIvdr sites:gsc-performance example.com --range 28d
Request
curl "https://verifieddr.com/api/v1/sites/example.com/gsc-performance?range=28d" \
  -H "Authorization: Bearer vdr_your_api_key"
Response
{
  "range": "28d",
  "performance": {
    "totals": { "clicks": 1200, "impressions": 48000, "ctr": 0.025, "position": 18.4 },
    "previousTotals": { "clicks": 980, "impressions": 42000 },
    "series": [],
    "snapshot": { "queries": [], "pages": [], "countries": [], "devices": [] }
  }
}
  • Supported ranges: 28d, 3m, 6m, 12m, and 16m.
GET/sites/:slug/gsc-audit

Get the latest index audit

Reads the most recent stored audit of sitemap health, pages with impressions, and sampled indexed or excluded states.

Same call in the CLIvdr sites:gsc-audit example.com
Request
curl https://verifieddr.com/api/v1/sites/example.com/gsc-audit \
  -H "Authorization: Bearer vdr_your_api_key"
Response
{ "audit": { "status": "complete", "createdAt": "2026-07-21T10:00:00.000Z", "issues": [] } }
POST/sites/:slug/gsc-audit

Run a fresh index audit

Starts and waits for a fresh audit using budgeted URL Inspection samples. This is the consequential variant; use GET when stored evidence is sufficient.

Same call in the CLIvdr sites:gsc-audit example.com --run
Request
curl https://verifieddr.com/api/v1/sites/example.com/gsc-audit \
  -X POST \
  -H "Authorization: Bearer vdr_your_api_key"
Response
{ "audit": { "status": "complete", "issues": [], "sampledUrls": 25 } }
  • Fresh runs have a 12-hour cooldown.

Build your next trusted connection

Find websites that share your topic and serve your readers. Check the evidence, choose a partner and track what changes.

Start my DR growth planTrack DR and TrueDR each week for free. No credit card required.Already have an account? Sign in