Skip to content

Docs

API reference for Indexli.

Authenticate with X-API-Key from Dashboard → API. Base path is /api/v1 on your API host.

Authentication

Send your key on every request. Session cookies work in the browser app; use the header for scripts and server jobs.

curl -X POST https://api.example.com/api/v1/projects \
  -H "Content-Type: application/json" \
  -H "X-API-Key: ix_live_••••••••" \
  -d '{ "name": "Batch", "urls": ["https://example.com"], "mode": "standard" }'

Endpoints

POST/api/v1/projects

Create a project and enqueue URLs for indexing.

{
  "name": "Campaign",
  "urls": [
    "https://example.com/a",
    "https://example.com/b"
  ],
  "mode": "standard",
  "dripFeedDays": 0,
  "notify": true
}
  • mode: "standard" (1 credit/URL) or "turbo" (3 credits/URL by default).
  • Max 10,000 URLs per request after normalize + dedupe.
  • Returns 402 if the account lacks credits.
GET/api/v1/projects

List your projects (paginated).

  • Query: page, limit.
  • Includes status, totals, and credit holds.
GET/api/v1/projects/:id

Project detail with per-URL submission summary.

  • Poll while status is PROCESSING / CHECKING.
GET/api/v1/projects/:id/report

Export-ready report payload for a finished project.

POST/api/v1/projects/:id/recheck

Force a status poll / recheck against the provider.

DELETE/api/v1/projects/:id

Delete a project you own.

GET/api/v1/credits

Current balance and credit transaction ledger.

  • Query: page, limit.
GET/api/v1/credits/packs

Active credit packs available for purchase.

POST/api/v1/checker

Check whether URLs appear indexed (free tool).

{
  "urls": ["https://example.com/page"]
}
  • ≤50 URLs: sync response.
  • >50 URLs: 202 + checkId — poll GET /checker/:checkId.
  • Guests capped lower than authenticated users.