Docs

Quick UI guide, plus the v1 API and signed webhooks for automations.

Table of contents

Jump to the section you need.

  1. App UI
  2. API (v1)
  3. Webhooks

Getting Started (App UI)

Use this checklist to go from signup to first actionable indexing results. Core workflow: create project, import URLs, run checks, then automate where available.

Tip: these links open app pages directly after sign-in.

Start Here: 5-Step Setup

  1. 1) Create your first project

    Open Projects → Create project and add a project name. Then add each page URL you want to check. A site URL by itself is not treated as a tracked page.

  2. 2) Add URLs to monitor

    In your project, use Import URLs to upload CSV/TXT/JSON, paste URL lists, or paste sitemap URLs. Imported URLs become your check targets.

  3. 3) Run your first check

    From the project overview, click Run check to evaluate index status for tracked URLs. Review run output in Checks.

  4. 4) Review status changes and trends

    Use Checks for URL-level outcomes and Analytics for trend views and summaries.

  5. 5) Enable automation and integrations (optional)

    Configure provider/API settings in Settings → API & Integrations. If your plan includes schedules, use Schedules to run checks automatically.

Projects & URLs

Create projects, organize with tags, and manage the URL list you want monitored.

Open Projects

Checks

Run manual checks and inspect per-URL status results over time.

Open Checks

Analytics

See indexing trends, workspace/project summaries, and recent activity.

Open Analytics

Indexing

Configure indexing provider credentials and monitor submission outcomes.

Open Indexing

Plan-dependent features

  • Scheduled checks may require a paid plan.
  • Indexability analysis and schedule-based automation options (such as smart filtering) may require a paid plan.
  • Notification channels/events can vary by platform and plan in Settings → Notifications.

API (v1)

Generate an API key in Settings → API & Integrations. Authenticate using Authorization: Bearer or x-api-key.

curl -H "Authorization: Bearer ric_..." \
  https://rapidindexchecker.com//api/v1/projects

OpenAPI: /api/v1/openapi.json

API (v1)

Interactive API reference

Browse endpoints, schemas, and request/response examples.

Endpoints

Projects
  • GET /api/v1/projects
  • POST /api/v1/projects
  • GET /api/v1/projects/:id
  • PATCH /api/v1/projects/:id
  • DELETE /api/v1/projects/:id
  • GET /api/v1/projects/:id/sitemap
  • POST /api/v1/projects/:id/sitemap-sync
  • GET /api/v1/projects/:id/schedules
  • POST /api/v1/projects/:id/schedules
  • GET /api/v1/projects/:id/urls
  • POST /api/v1/projects/:id/urls
  • DELETE /api/v1/projects/:id/urls
Checks
  • GET /api/v1/checks
  • POST /api/v1/checks
  • GET /api/v1/checks/:id
Schedules
  • GET /api/v1/schedules/:id
  • PATCH /api/v1/schedules/:id
  • DELETE /api/v1/schedules/:id
Indexing
  • GET /api/v1/indexing/providers/rapid_url_indexer
  • POST /api/v1/indexing/providers/rapid_url_indexer
  • PATCH /api/v1/indexing/providers/rapid_url_indexer
  • DELETE /api/v1/indexing/providers/rapid_url_indexer
  • GET /api/v1/indexing/submissions
  • POST /api/v1/indexing/submissions
Webhooks
  • GET /api/v1/webhooks
  • POST /api/v1/webhooks
  • GET /api/v1/webhooks/:id
  • PATCH /api/v1/webhooks/:id
  • DELETE /api/v1/webhooks/:id
  • POST /api/v1/webhooks/:id/rotate-secret
  • GET /api/v1/webhooks/:id/deliveries

Pagination uses limit (default 50, max 100) and an opaque cursor. Many responses include x-request-id and rate limit headers (plan dependent).

Errors

Errors include a requestId and a machine-readable code. Validation errors may include details.

{
  "error": {
    "code": "rate_limited",
    "message": "Rate limit exceeded",
    "requestId": "..."
  }
}

Webhooks

Create a webhook endpoint in Settings → API & Integrations → Webhooks. Deliveries are HTTP POST requests over https:// with an X-Webhook-Event header and an HMAC signature.

When creating/updating webhooks via API, pass events as a JSON array (for example ["check.completed", "url.indexed"]) or use * to receive all events.

Events

  • check.completed
  • check.failed
  • url.indexed
  • indexing.submitted
  • schedule.completed
  • indexing.completed
  • indexing.failed
  • * (subscribe to all events)

Headers

  • X-Webhook-Signature (hex HMAC-SHA256)
  • X-Webhook-Timestamp (ISO 8601)
  • X-Webhook-Event (event type)

Payload

{
  "event": "check.completed",
  "timestamp": "2026-01-01T00:00:00.000Z",
  "projectId": "018f26ef-2e8e-7e2f-8c4c-94ec89d36a86",
  "userId": "…",
  "data": {
    "checkId": "018f26f1-0d17-72f1-8d0d-0339b9d5b275",
    "totalUrls": 120,
    "indexed": 74,
    "notIndexed": 46,
    "triggeredBy": "api"
  }
}

Signature verification

Compute HMAC-SHA256 over timestamp + "." + rawBody using your webhook secret. Reject timestamps older than 5 minutes.

import crypto from "crypto";

export function verifyWebhook({ rawBody, signature, timestamp, secret }) {
  const signed = `${timestamp}.${rawBody}`;
  const expected = crypto.createHmac("sha256", secret).update(signed).digest("hex");
  return signature === expected;
}

Failed deliveries retry up to 5 times with exponential backoff (immediate, then +1m, +2m, +4m, +8m).

Ready to pull data into your tooling?

Create an account, generate an API key, and start integrating.