Documentación para desarrolladores

Historial de una página

GET/sites/{siteId}/pages/{pageId}/history
Permiso
pages:read
Herramienta MCP
page_history

What changed on a page, audit by audit From stored readings (nothing is crawled), newest first; kept for 12 months. wordCount changes count from 10 words and 5 percent; robots is reported only when noindex stayed the same.

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

Parámetros

NombreDóndeDetalles
siteIdObligatoriorutastringWebsite id, from GET /sites.
pageIdObligatoriorutastringPage id, from GET /sites/{siteId}/pages.
limitqueryintegerdefault 30, min 1, max 100Entries to return, 1 to 100.

Respuesta

200 · application/json

CampoDetalles
pageobject · required
page.idstring · required; Page id
page.urlstring · required; Page address
entrieslist of values · required; Newest first
entries[].crawlIdstring
entries[].atstring
entries[].kindstring
entries[].statusnumber
entries[].redirectHopsnumber
entries[].pageScorenumber
entries[].aeoScorenumber
entries[].wordCountnumber
entries[].titlestring
entries[].firsttrue or false
entries[].noSnapshottrue or false
entries[].changeslist of objects
entries[].changes[].fieldstring
entries[].changes[].beforestring
entries[].changes[].afterstring
moretrue or false · required; Older entries exist
notestring · required; How the entries are compared
linkstring · required; The page history in the app

Notas

GET /sites/{siteId}/pages/{pageId}/history (o GET /sites/{siteId}/pages/history?url=) dice qué cambió en una página de una auditoría o revisión a la siguiente, de la más nueva a la más antigua. Usa lo que MonoRanks guardó al leer la página; no se rastrea nada para esto. La app muestra la misma línea de tiempo en la pantalla de detalle de la página.

{
  "page": { "id": "…", "url": "https://example.com/pricing/" },
  "entries": [
    { "crawlId": "…", "at": "2026-10-01T09:12:00Z", "kind": "recheck", "status": 200, "redirectHops": 0, "pageScore": 86, "aeoScore": 71,
      "wordCount": 912, "title": "Pricing – Example", "first": false, "noSnapshot": false,
      "changes": [ { "field": "title", "before": "Pricing", "after": "Pricing – Example" }, { "field": "pageScore", "before": 78, "after": 86 } ] }
  ],
  "more": true, "note": "…", "link": "https://app.monoranks.com/sites/SITE_ID/pages/PAGE_ID#history"
}
Qué Detalles
Qué se compara field es uno de status, redirect, title, description, h1, headings (número de encabezados H2), canonical, noindex, robots, wordCount, schemaTypes, internalLinks, pageScore y aeoScore. Una lista changes vacía significa que no cambió nada.
Los cambios pequeños no cuentan El número de palabras tiene que moverse al menos 10 palabras y un 5 %. Los espacios en los títulos y el orden de los tipos de schema se ignoran.
Caídas noSnapshot es true cuando la lectura no tenía HTML legible. Esa entrada solo muestra el cambio de estado, y la siguiente lectura se compara con la última que tenía HTML legible.
Hasta cuándo Las lecturas se guardan 12 meses; first marca la más antigua guardada. Las revisiones y las puntuaciones de página se guardan desde la versión 1.0.92, así que las entradas anteriores tienen pageScore y aeoScore en null.

Errores

EstadoSignificado
400Bad request. Codes: bad_limit, missing_page.
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/pages/PAGE_ID/history"

Respuesta de ejemplo

{
  "page": {
    "id": "c7a9e1b3-5d7f-4b9c-8e1a-3c5e7a9b1d2f",
    "url": "https://acmebikes.com/products/trail-pro-29"
  },
  "entries": [
    {
      "crawlId": "d4f6a8c0-2e4a-4c6e-8a0c-4e6a8c0e2a4b",
      "at": "2026-10-04T02:41:12.000Z",
      "kind": "audit",
      "status": 200,
      "redirectHops": 0,
      "pageScore": 86,
      "aeoScore": 71,
      "wordCount": 842,
      "title": "Trail Pro 29 Mountain Bike | Acme Bikes",
      "first": false,
      "noSnapshot": false,
      "changes": [
        {
          "field": "title",
          "before": "Trail Pro 29 | Acme Bikes",
          "after": "Trail Pro 29 Mountain Bike | Acme Bikes"
        },
        {
          "field": "pageScore",
          "before": 79,
          "after": 86
        }
      ]
    },
    {
      "crawlId": "e5a7c9e1-3f5b-4d7f-9b1d-5f7b9d1f3b5c",
      "at": "2026-09-27T02:38:51.000Z",
      "kind": "audit",
      "status": 200,
      "redirectHops": 0,
      "pageScore": 79,
      "aeoScore": 71,
      "wordCount": 836,
      "title": "Trail Pro 29 | Acme Bikes",
      "first": true,
      "noSnapshot": false,
      "changes": []
    }
  ],
  "more": false,
  "note": "One entry per audit or recheck that read this page, newest first.",
  "link": "https://app.monoranks.com/sites/3f6c2a1e-8b4d-4c7a-9e21-5d0b7a6f4c13/pages/c7a9e1b3-5d7f-4b9c-8e1a-3c5e7a9b1d2f#history"
}

El servidor MCP hace lo mismo con la herramienta page_history.