REST API | Pendium MCP Docs | Pendium.ai
Pendium MCP Docs

REST API

Use Pendium's REST API directly with curl, fetch, or any HTTP client — no MCP required.

When to use the REST API

The MCP server is the recommended way to connect AI agents to Pendium — it handles tool discovery, parameter validation, and structured responses automatically.

But if you're building a custom integration, scripting with curl, or working in an environment that doesn't support MCP, the REST API gives you direct HTTP access to the same data.

Base URL:

https://pendium.ai/api/visibility

Authentication

Pass your API key in the x-api-key header:

curl https://pendium.ai/api/visibility/account \
  -H "x-api-key: pk_live_xxxxxxxxxxxx"

No key? Most endpoints return a 401 with instructions on how to sign up. The score lookup endpoint works without authentication.

See Authentication for full details.

Endpoints at a glance

Scanning and reports

MethodEndpointWhat it does
POST/api/visibility/scanTrigger a new visibility scan for a brand
GET/api/visibility/scanCheck if a scan is done and get progress
GET/api/visibility/reportGet the full visibility report with raw LLM responses

Brand data

MethodEndpointWhat it does
GET/api/visibility/accountSee your plan, credits, and all your brand agents
GET/api/visibility/scoreLook up any brand's public visibility score (no auth needed)

Topics and personas

MethodEndpointWhat it does
GET/api/visibility/topicsList all topics and search queries for a brand
POST/api/visibility/topicsAdd new topics with search queries
GET/api/visibility/personasList buyer personas used in scans
POST/api/visibility/personasCreate a new persona (AI-generated or manual)

Response format

Every response includes a _pendium object with context about what you're looking at and what to do next. This is designed for both humans reading JSON and AI agents parsing responses.

{
  "plan": "starter",
  "creditBalance": 450,
  "agents": [...],
  "_pendium": {
    "what_is_pendium": "Pendium monitors how AI platforms perceive brands...",
    "what_you_are_seeing": "Your account overview with 3 brand agents...",
    "next_steps": ["Trigger a scan with POST /api/visibility/scan..."]
  }
}

Rate limits

  • Authenticated: 60 read requests/minute, 10 scan triggers/minute
  • Unauthenticated: 10 read requests/minute, 2 scan triggers/minute

See Rate Limiting for details.

On this page