Berank Public API

The Berank Public API gives programmatic access to the backlink catalog, projects, favorites, competitor backlinks and monitoring data. It requires an Agency plan and a brnk_... Bearer API key. Base URL https://api.berank.co. Legacy origin https://app.berank.co/api is deprecated but still supported.

Quickstart

  1. In the Berank app, go to Settings → Developer → API (https://app.berank.co/settings/developer/api) and create an API key (shown once, starts with brnk_).
  2. Call ping:

    curl -H "Authorization: Bearer brnk_..." https://api.berank.co/v1/ping

    Expected 200 JSON response:

    {
      "data": {
        "pong": true,
        "account_id": "00000000-0000-0000-0000-000000000000",
        "project_scope": null,
        "scopes": ["catalog:read"],
        "plan": "agency"
      }
    }
  3. Explore the full reference → API Reference.

Authentication & scopes

Authenticate with Bearer auth (Authorization: Bearer brnk_...). Keys are global or project-scoped. Each endpoint declares a required scope (x-required-scope in the OpenAPI spec. See the reference for per-endpoint scopes.

Pagination, rate limits and errors

Rate limiting is enforced server-side with response headers X-RateLimit-*. Certain list endpoints (catalog domains, competitor backlinks, monitoring links) use a lower per-key rate limit class (20 requests/min/key). Other endpoints use the standard rate limit class.

Error responses use an error object with required code (string, machine-readable error code, e.g. invalid_parameters, project_not_found, monitoring_addon_required) and message (string), plus an optional details array of { path, message } objects for validation errors.

Webhooks

Berank can push events to a webhook endpoint you configure. Six event types are currently supported: backlink.new, backlink.lost, backlink.status_changed, competitor.backlink.new, price.changed, and webhook.ping. Payloads are signed; deliveries support retry/replay. Webhooks are managed at https://app.berank.co/settings/developer/webhooks. Full payload schemas are in the reference.