Visible API: Integrating GEO Data into Your Stack
Introduction
The Visible API provides programmatic access to all AI Discovery data — scores, mention rates, citation rates, prompt-level results, and competitor benchmarks. It enables teams to integrate GEO intelligence into their existing dashboards, BI tools, CRM workflows, and marketing automation systems.
This guide covers API authentication, core endpoints, data structures, and practical integration patterns for the most common use cases.
Key Concepts
API Key Authentication: All Visible API requests require a valid API key. Keys are scoped to your workspace and plan tier.
Rate Limits: API calls are rate-limited by plan tier. Starter: 100 requests/day. Business: 1,000 requests/day. Enterprise: custom limits.
Data Freshness: API data reflects the most recent completed scan. Data is updated on your scan cadence (daily on Business, weekly on Starter).
Pagination: All list endpoints support cursor-based pagination. Default page size: 50 results.
Webhook Support: Visible supports webhooks for scan completion events — allowing your systems to automatically pull fresh data when scans complete.
Why It Matters
GEO data locked inside Visible's dashboard creates friction for teams that need to incorporate AI visibility metrics into broader reporting workflows. The Visible API enables: unified marketing dashboards that include GEO alongside SEO and paid metrics; automated alerting when AI Discovery Score drops below a threshold; CRM enrichment with prospect AI visibility data; and executive reporting with GEO KPIs alongside revenue metrics.
Step-by-Step Guidance
Step 1 — Obtain your API key Navigate to Settings > API Access in Visible. Generate an API key. Store it securely — it is shown only once.
Step 2 — Authenticate requests
All requests use Bearer token authentication:
curl -H "Authorization: Bearer YOUR_API_KEY" https://api.visible.spotlize.com/v1/scores
Step 3 — Core endpoints
| Endpoint | Method | Description |
|---|---|---|
/v1/scores |
GET | Current AI Discovery Scores by brand |
/v1/scores/history |
GET | Score history with date range filter |
/v1/prompts |
GET | Prompt-level results for latest scan |
/v1/competitors |
GET | Competitor benchmark data |
/v1/engines |
GET | Engine-breakdown scores |
/v1/citations |
GET | Citation source data |
/v1/scans |
GET | Scan history and status |
/v1/scans/trigger |
POST | Trigger a manual scan |
Step 4 — Retrieve your current score
GET /v1/scores
Response:
{
"brand_id": "brand_abc123",
"overall_score": 67,
"mention_rate": 0.72,
"citation_rate": 0.38,
"sentiment_score": 0.84,
"prompt_coverage": 0.61,
"consistency_score": 0.71,
"as_of": "2026-06-12T08:00:00Z"
}
Step 5 — Pull prompt-level data
GET /v1/prompts?limit=50
Response:
{
"prompts": [
{
"prompt_id": "p_xyz",
"prompt_text": "best enterprise analytics software",
"engine": "chatgpt",
"brand_mentioned": true,
"brand_cited": false,
"sentiment": "positive",
"competitor_mentions": ["CompetitorA", "CompetitorB"],
"scan_date": "2026-06-12"
}
],
"next_cursor": "cursor_abc"
}
Step 6 — Configure webhooks for automated data pulls
In Settings > Webhooks, add your endpoint URL. Visible will POST scan completion events:
{
"event": "scan.completed",
"brand_id": "brand_abc123",
"scan_id": "scan_xyz",
"completed_at": "2026-06-12T08:00:00Z"
}
Step 7 — Build your integration
Common integration patterns: - Looker/Tableau/Power BI: Pull scores via scheduled API calls; build GEO metrics alongside SEO and paid data - Slack alerting: Webhook-triggered Slack notification when score changes >5 points - HubSpot enrichment: Append AI visibility score to company records for sales context - Weekly executive report: Automated score pull + formatted email via Zapier or Make
Best Practices
- Cache API responses. Score data updates on your scan cadence. Pulling the API on every page load is unnecessary and will exhaust rate limits.
- Use webhooks, not polling. Webhook-triggered pulls are more efficient than scheduled polling for real-time workflows.
- Version your integration. The Visible API uses versioned endpoints (/v1/). Monitor the changelog for new versions.
Common Mistakes
- Exposing your API key in client-side code. API keys must be kept server-side. Never include them in frontend JavaScript.
- Ignoring rate limits. Exceeding rate limits results in 429 errors. Implement exponential backoff in your integration.
- Building against unstable endpoints. Use only stable, versioned endpoints. Beta endpoints may change without notice.
Related Articles
Summary
The Visible API enables programmatic access to all GEO intelligence data. Authenticate with your API key, use core endpoints for scores and prompt data, configure webhooks for automated workflows, and build integrations that embed GEO metrics into your existing reporting stack. Keep API keys server-side, cache responses, and use webhooks over polling.