Get last SEO scan

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Returns the app's last SEO scan in full, its score and checklist together.

This returns the same score and checklist Run SEO scan returned when it ran, so poll this rather than re-scanning to re-read a result. Anything else that scan's response carried isn't persisted, so it never appears here. It returns null until the app is scanned at least once, and the result is only as current as the last scan, so read scanned_at before acting on it.

The score and the checklist are stored separately, and two scans running at once can interleave those two writes. So compare scanned_at with the one Get SEO score returns before treating the two as one scan's.

<Warning>The response includes fields beyond the ones documented here. Don't rely on undocumented response fields, as they can change at any time.</Warning>

get/api/apps/{app_id}/seo/last-scan

Path parameters

app_idstring required

ID of the app.

ID of the app.

Response

The last scan, or null if the app has never been scanned.

Example response

{
  "result": {
    "score": {
      "overall": 82,
      "grade": "B",
      "categories": {
        "meta_tags": {
          "failures": 0,
          "passed": 4,
          "score": 80,
          "warnings": 1
        }
      }
    },
    "checks": [
      {
        "category": "ai_discoverability",
        "description": "Turn on the AI site guide so AI engines can understand your app.",
        "id": "llms_txt",
        "status": "warn",
        "title": "AI-readable site guide is off"
      }
    ],
    "scanned_at": "2026-09-03T09:15:00+00:00"
  }
}

Changes

No recorded changes to this endpoint across all 14 revisions of this API.