LinkDR MCP Public data API

Read-only endpoints that work without an account, subject to rate limits.

GitHub OpenAPI

Operations 2

GET /rpc/domains/quickInfo Domain quick info over oRPC GET #
POST /rpc/domains/quickInfo Domain quick info over oRPC #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/linkdr:linkdr-public-data-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

linkdr-public-data-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: support@linkdr.com
    name: LinkDR support
    url: https://linkdr.com/contact
  description: 'LinkDR is a managed backlink service: real publisher placements priced by Domain Rating (DR), ordered one-time or monthly, fulfilled in 3-4 weeks.


    Agents have three doors:


    1. Managed backlinks (no auth needed to plan): fetch https://linkdr.com/SKILL.md, plan the DR-tier mix from the budget, then send the user one https://linkdr.com/agent/checkout URL. The user logs in and pays in the browser; the user MCP can also charge a card already saved on the project, after the user confirms the quote.

    2. User MCP (any LinkDR account): https://linkdr.com/mcp over Streamable HTTP with OAuth 2.1. Your own projects, orders, outreach progress, live links, and AI answers, plus cache-first keyword SERPs and domain metrics. It can also add a site and its keywords, answer site approvals, quote and order links (a saved card is charged only after the user confirms; otherwise it returns the checkout link), and send feedback. Docs: https://linkdr.com/docs/mcp.

    3. Admin MCP (LinkDR admins only): https://linkdr.com/mcp/admin. The operator''s tools: every order and project, publisher outreach, customer emails, guest posts, and research with contacts. Other accounts complete OAuth and receive 403. Docs: https://linkdr.com/docs/admin.


    Machine-readable resources: this spec (https://linkdr.com/openapi.json), agent instructions (https://linkdr.com/llms.txt), the checkout skill (https://linkdr.com/SKILL.md), and docs (https://linkdr.com/docs).'
  termsOfService: https://linkdr.com/terms
  title: LinkDR Public data API
  version: 1.0.0
servers:
- description: Production
  url: https://linkdr.com
tags:
- description: Read-only endpoints that work without an account, subject to rate limits.
  name: Public data
paths:
  /rpc/domains/quickInfo:
    get:
      description: Same data as the POST variant for clients that prefer query encoding of the input string.
      operationId: rpcQuickInfoViaGet
      parameters:
      - description: URL-encoded input string (the domain).
        in: query
        name: input
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DomainQuickInfo'
          description: Metrics (nulls when unknown)
      security:
      - SessionCookie: []
      summary: Domain quick info over oRPC GET
      tags:
      - Public data
    post:
      description: oRPC procedure domains.quickInfo. Body is the raw input string encoded as JSON.
      operationId: rpcQuickInfo
      requestBody:
        description: Domain, e.g. "example.com"
        content:
          application/json:
            schema:
              type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DomainQuickInfo'
          description: Metrics (nulls when unknown)
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
      - SessionCookie: []
      summary: Domain quick info over oRPC
      tags:
      - Public data
components:
  schemas:
    Error:
      description: Structured error returned by all /api and /rpc failures. Agents should read code and hint.
      properties:
        error:
          properties:
            code:
              description: Stable machine-readable code.
              enum:
              - BAD_REQUEST
              - NOT_FOUND
              - METHOD_NOT_ALLOWED
              - UNAUTHORIZED
              - FORBIDDEN
              - RATE_LIMIT_EXCEEDED
              - INTERNAL_ERROR
              type: string
            hint:
              description: Resolution hint for the caller.
              type: string
            message:
              description: Human-readable summary.
              type: string
            status:
              description: HTTP status repeated in the body.
              type: integer
          required:
          - code
          - message
          - status
          type: object
      type: object
    DomainQuickInfo:
      description: Marketplace metrics for one host; any field may be null when unknown.
      properties:
        description:
          description: Meta description of the site.
          type:
          - string
          - 'null'
        domainRating:
          description: Ahrefs-style Domain Rating, 0-100.
          type:
          - integer
          - 'null'
        domainTraffic:
          description: Monthly organic traffic estimate.
          type:
          - integer
          - 'null'
        name:
          description: Site display name.
          type:
          - string
          - 'null'
        screenshotPath:
          description: Path to a cached homepage screenshot, relative to the site origin.
          type:
          - string
          - 'null'
      type: object
  securitySchemes:
    McpOAuth:
      description: 'OAuth 2.1 authorization-code flow with PKCE (required) for both MCP servers. Authorization server metadata: https://linkdr.com/.well-known/oauth-authorization-server. Dynamic client registration is accepted. Each server is its own protected resource (https://linkdr.com/mcp and https://linkdr.com/mcp/admin), so a token is audience-bound to one of them. The admin server also requires the admin role on the LinkDR account.'
      flows:
        authorizationCode:
          authorizationUrl: /api/auth/oauth2/authorize
          refreshUrl: /api/auth/oauth2/token
          scopes:
            email: Identify the account by email address during sign-in
            offline_access: Receive a refresh token so long-running agent sessions stay connected until revoked
            openid: Sign in with a LinkDR account
            profile: Read the account display name
          tokenUrl: /api/auth/oauth2/token
      type: oauth2
    SessionCookie:
      description: Dashboard session cookie (better-auth.session_token) issued by browser sign-in. Endpoints under this scheme serve the logged-in app and its rate limits; there is no header-token alternative yet.
      in: cookie
      name: better-auth.session_token
      type: apiKey