Try the RankNibbler SEO API

Plans Beta

GET /api/v1/plans

The public plan matrix — prices and every per-plan limit — readable straight from the API, so a billing page or upgrade prompt in your own product never drifts out of date. Reference data; this endpoint takes no url.

Beta. This endpoint is new: it is live and safe to call on every plan, but its response shape may still change while we take feedback. Nothing here is scheduled for removal — if you depend on a particular field, tell us and we will keep it stable for you.

Unlimited values are returned as null, because JSON has no representation for infinity.

Authentication

Send your API key as an X-API-Key header, or as a key query parameter. Available on every plan, including Free — plans differ only in requests per day. This call costs one request against your daily quota, which is shared across every key on the account. See Authentication.

Query parameters

NameTypeDescription
key optionalstringYour API key, if not sent as the X-API-Key header.

Request

Response

200 · application/json
  1. {
  2. "plans": [
  3. { "plan": "free", "label": "Free", "monthlyUsd": 0,
  4. "limits": { "sites": 1, "keywordsPerProject": 5, "apiRequestsPerDay": 100,
  5. "uptimeMonitors": 5, "seats": 1, "exports": false,
  6. "whiteLabel": false, "api": true } },
  7. { "plan": "enterprise", "label": "Enterprise", "monthlyUsd": null,
  8. "limits": { "sites": null, "apiRequestsPerDay": null } }
  9. ],
  10. "note": "null in limits means unlimited / negotiated fair use.",
  11. "usage": { "used": 1, "dailyLimit": 100, "tier": "free" }
  12. }

Response fields

FieldTypeDescription
plans[].planstringThe plan key — free, starter, growth, scale, enterprise.
plans[].monthlyUsdnumber | nullMonthly list price in USD. null on Enterprise (negotiated).
plans[].limitsobjectEvery limit for that plan. apiRequestsPerDay is the one that governs this API.
notestringReminds you that null in limits means unlimited / fair use.

There is no per-endpoint plan gating on this API — every plan, Free included, can call every endpoint. Plans differ only in apiRequestsPerDay. See Rate limits.

Errors

StatusWhen
401Missing or invalid API key.
429Burst rate limit (60 req/10s per IP, 30 req/10s per key) or your daily quota. See Rate limits.
503Plan data is unavailable on this server. This check runs before authentication.

Errors return { "error": "…" }; see Errors.