Developer docs

Get one page

GET/sites/{siteId}/pages/{pageId}
Scope
pages:read

Get a page with its findings Page facts, scores and every finding on the page. Personal email addresses in stored page text are masked.

Parameters

NameInDetails
siteIdRequiredpathstringWebsite id, from GET /sites.
pageIdRequiredpathstringPage id, from GET /sites/{siteId}/pages.

Response

200 · application/json

FieldDetails
pageobject · required
page.idstring · required; Page id
page.urlstring · required; Page address
page.statusinteger or null · required; HTTP status the address answered (its own 3xx for a redirect); null when unknown
page.redirectobject or null · required; Set when the address redirects; null otherwise
page.titlestring or null · required; Page title
page.descriptionstring or null · required; Meta description
page.h1list of string · required; H1 headings
page.pageScoreinteger or null · required; Page score 0–100
page.aeoScoreinteger or null · required; AEO score 0–100
page.categoriesobject or null · required; Score per category (Technical, On-page, Internal linking, Performance), 0–100
page.categories.Technicalnumber
page.categories.On-pagenumber
page.categories.Internal linkingnumber
page.categories.Performancenumber
page.linkstring · required; The page in the app
findingslist of object · required; Issues that list this page
findings[].issueIdstring · required; Issue id
findings[].ruleIdstring · required; Rule id
findings[].titlestring · required; Issue title
findings[].severitycritical | serious | warning | low · required
findings[].statusopen | in_progress | recheck_queued | resolved | ignored | reopened · required
findings[].onThisPagepresent | fixed · required; Whether the problem is still on this page
findings[].evidenceobject · required; What the rule saw on this page; fields depend on the rule
findings[].evidence.titlestring

Errors

StatusMeaning
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.

Example request

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

Example response

{
  "page": {
    "id": "c7a9e1b3-5d7f-4b9c-8e1a-3c5e7a9b1d2f",
    "url": "https://acmebikes.com/products/trail-pro-29",
    "status": 200,
    "redirect": null,
    "title": "Trail Pro 29 Mountain Bike | Acme Bikes",
    "description": null,
    "h1": [
      "Trail Pro 29"
    ],
    "pageScore": 86,
    "aeoScore": 71,
    "categories": {
      "Technical": 94,
      "On-page": 78,
      "Internal linking": 88,
      "Performance": 82
    },
    "link": "https://app.monoranks.com/sites/3f6c2a1e-8b4d-4c7a-9e21-5d0b7a6f4c13/pages/c7a9e1b3-5d7f-4b9c-8e1a-3c5e7a9b1d2f"
  },
  "findings": [
    {
      "issueId": "b2e4c6a8-1d3f-4a5b-9c7d-0e2f4a6b8c1d",
      "ruleId": "SEO-ONP-011",
      "title": "Meta description missing on 3 pages (/products/*)",
      "severity": "warning",
      "status": "open",
      "onThisPage": "present",
      "evidence": {
        "title": "Trail Pro 29 Mountain Bike | Acme Bikes"
      }
    }
  ]
}

The MCP server does the same with the tool page_findings.