API
Submit URLs and read their status from your own tools. Available on Standard and Agency. Create your key in the dashboard under API.
Authentication
Send your key in the X-API-Key header. Keys start with iip_. Keep them secret; creating a new key switches the old one off.
Submit URLs
POST /api/v1/submit
Content-Type: application/json
X-API-Key: iip_…
{
"urls": ["https://example.com/page-one", "https://a-blog.com/post-with-my-link"],
"name": "October guest posts", // optional
"targetHost": "yourbrand.com", // optional: confirm each page links here
"siteId": 12 // optional: pages of one of your websites
}
Answer:
{ "ok": true, "id": 345, "accepted": 2, "cut": 0, "skippedRecent": 0, "invalid": 0 }
cut counts URLs over your monthly allowance. skippedRecent counts URLs you already submitted in the last 14 days.
Read a submission
GET /api/v1/jobs/345 X-API-Key: iip_…
{ "ok": true,
"job": { "id": 345, "status": "done", "counts": { "total": 2, "accepted": 2, "indexed": 1, "refunded": 0, "blocked": 0, "already": 0 } },
"urls": [ { "url": "https://example.com/page-one", "state": "indexed", "indexedAt": "2026-10-19 08:12:03" }, … ] }
URL states: queued (being checked), blocked (not charged, see reason), already (already indexed, not charged), submitted, indexed, refunded (not indexed in 14 days, credit returned), dropped (was indexed, gone on a later check).
Your allowance
GET /api/v1/account
X-API-Key: iip_…
{ "ok": true, "plan": "standard", "limit": 10000, "used": 812, "remaining": 9188, "resets": "2026-11-01T00:00:00.000Z" }
Limits
60 requests a minute per key, up to 50,000 URLs per submission.