Documentación para desarrolladores

Listar competidores

GET/sites/{siteId}/competitors
Permiso
search:read
Herramienta MCP
competitors

The competitor set with scores and visibility Picked competitors, then suggestions the AI confirmed, then ones not reviewed yet. Dismissed, weak and turned-down suggestions are left out (hidden counts them). Estimates from the keyword index.

Las descripciones vienen del documento OpenAPI y están en inglés.

Parámetros

NombreDóndeDetalles
siteIdObligatoriorutastringWebsite id, from GET /sites.

Respuesta

200 · application/json

CampoDetalles
competitorslist of values · required; Picked first, then suggestions the AI confirmed, then ones not reviewed yet
competitors[].domainstring
competitors[].kindstring
competitors[].scorenumber
competitors[].reviewobject
competitors[].review.statusstring
competitors[].review.sameKind
competitors[].review.kind
competitors[].review.reason
competitors[].drivesGapstrue or false
competitors[].sharedKeywordsnumber
competitors[].brandKeywordsnumber
competitors[].theirKeywordsnumber
competitors[].ourKeywordsnumber
competitors[].aboveUsnumber
competitors[].domainRanknumber
competitors[].categorystring
competitors[].visibilitylist of numbers
competitors[].visibilityMonthslist of strings
competitors[].dataUpdatedAtstring
ourVisibilitylist of number · required; The website's own estimated monthly search traffic, oldest first
ourVisibilityMonthslist of string · required; Month (YYYY-MM) of each ourVisibility value
drivinglist of string · required; The competitors gaps, link gap and "best X" lists use: picked, else the three strongest confirmed suggestions
hiddeninteger · required; Suggestions left out: weak, or turned down by the AI
notestring · required; How to read the numbers
linkaddress (URL) · required; The Competitors screen in the app

Notas

GET /sites/{siteId}/competitors lista los sitios con los que compites: primero los que elegiste y luego los que MonoRanks sugiere porque posicionan por las mismas búsquedas. Una sugerencia sigue siendo sugerencia hasta que alguien la elige.

Qué Detalles
score (de 0 a 100) dice cuánto encaja una sugerencia. Las palabras clave compartidas se miden frente al tamaño de las dos listas, así que un sitio gigante que comparte unos cientos de sus millones de palabras clave puntúa bajo. Las palabras clave compartidas que se explican por un nombre de marca no cuentan (brandKeywords).
review es la revisión con IA de una sugerencia frente a lo que trata tu sitio web: status (reviewed o not_reviewed), sameKind (¿es el mismo tipo de negocio o producto?) y un reason breve. Las sugerencias que la IA rechaza se ocultan; hidden las cuenta junto con las débiles. Sin IA, status es not_reviewed y decide la puntuación.
driving (y drivesGaps en cada fila) son los competidores que usan las brechas de palabras clave, la brecha de enlaces y las listas de “los mejores”: los que elegiste; si no elegiste ninguno, las tres sugerencias más fuertes que la IA confirmó; antes de que se revise ninguna, las tres más fuertes por puntuación.

POST /sites/{siteId}/competitors cambia el conjunto. action es pick (convertir una sugerencia en competidor elegido), dismiss (ocultar desde ahora una sugerencia o un competidor elegido) o add (añadir cualquier dominio como competidor elegido). Elegir o añadir consulta las brechas de palabras clave de ese competidor, una consulta de pago dentro del límite de datos de tu espacio de trabajo. El cambio queda registrado en Activity a nombre del dueño de la clave, y la respuesta es el conjunto actualizado. Errores: bad_action, bad_domain (también para tu propio sitio web, una dirección de prueba reservada o más de 10 competidores elegidos) y not_found cuando pick o dismiss nombra un dominio que no está en el conjunto.

Errores

EstadoSignificado
401Missing, unknown or revoked key. Codes: missing_key, invalid_key.
403The key lacks the scope, covers another website, or its owner lost access. Codes: missing_scope, other_site, owner_left, no_owner, forbidden.
404Not found. Codes: not_found.
429Too many requests this hour for this key. Codes: rate_limited.

Petición de ejemplo

curl \
  -H "Authorization: Bearer mr_ws_…" \
  "https://app.monoranks.com/api/v1/sites/SITE_ID/competitors"

Respuesta de ejemplo

{
  "competitors": [
    {
      "domain": "bikeworld.example",
      "kind": "picked",
      "score": 78,
      "review": {
        "status": "not_reviewed",
        "sameKind": null,
        "kind": null,
        "reason": null
      },
      "drivesGaps": true,
      "sharedKeywords": 412,
      "brandKeywords": 6,
      "theirKeywords": 5810,
      "ourKeywords": 1240,
      "aboveUs": 188,
      "domainRank": 41,
      "category": "Shop",
      "visibility": [
        32800,
        35600,
        37900,
        41600
      ],
      "visibilityMonths": [
        "2026-06",
        "2026-07",
        "2026-08",
        "2026-09"
      ],
      "dataUpdatedAt": "2026-10-01T04:20:00.000Z"
    },
    {
      "domain": "cyclehub.example",
      "kind": "suggested",
      "score": 64,
      "review": {
        "status": "reviewed",
        "sameKind": true,
        "kind": "Online bike shop",
        "reason": "Sells bikes and parts to riders, like Acme Bikes."
      },
      "drivesGaps": true,
      "sharedKeywords": 412,
      "brandKeywords": 6,
      "theirKeywords": 5810,
      "ourKeywords": 1240,
      "aboveUs": 188,
      "domainRank": 41,
      "category": "Shop",
      "visibility": [
        32800,
        35600,
        37900,
        41600
      ],
      "visibilityMonths": [
        "2026-06",
        "2026-07",
        "2026-08",
        "2026-09"
      ],
      "dataUpdatedAt": "2026-10-01T04:20:00.000Z"
    }
  ],
  "ourVisibility": [
    12400,
    13900,
    14800,
    15700
  ],
  "ourVisibilityMonths": [
    "2026-06",
    "2026-07",
    "2026-08",
    "2026-09"
  ],
  "driving": [
    "bikeworld.example"
  ],
  "hidden": 3,
  "note": "kind: picked (chosen by a person) or suggested. Suggestions stay suggestions until picked.",
  "link": "https://app.monoranks.com/sites/3f6c2a1e-8b4d-4c7a-9e21-5d0b7a6f4c13/competitors"
}

El servidor MCP hace lo mismo con la herramienta competitors.