Docs
Api

REST API overview

Programmatic access to your sites, keywords, articles, and Search Console data β€” built for scripts, autonomous agents, and custom integrations.

The IndexPine REST API gives you full programmatic control over your IndexPine workspace. Use it to build custom dashboards, trigger article generation from your own tools, bulk-import keywords from third-party SEO platforms, or integrate IndexPine into an autonomous agent workflow.

Base URL

bash
https://api.indexpine.com/v1

Authentication

All API requests must be authenticated with a Bearer token. Generate your API key from your IndexPine account settings under API Keys.

bash
curl https://api.indexpine.com/v1/sites \
  -H "Authorization: Bearer ip_live_your_key_here"

Response format

All responses are JSON. Successful responses have a 2xx status code. Error responses include a machine-readable code and a human-readable message:

json
{
  "error": {
    "code": "site_not_found",
    "message": "No site with ID site_01hx was found in your workspace."
  }
}

Pagination

List endpoints return a maximum of 50 items per request. Use the cursor-based pagination parameters:

bash
# First page
GET /v1/sites/{site_id}/articles

# Next page (use cursor from previous response)
GET /v1/sites/{site_id}/articles?cursor=eyJpZCI6Ii...

Rate limits

The API is rate-limited to 60 requests per minute per API key. The response headers include your current usage:

text
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 47
X-RateLimit-Reset: 1721645400

API resources