Page SEO Check

Is this page technically fit to rank? Metadata, social preview, load performance, and availability in one call.

4 steps x402 eligible page-seo-check

What it runs

  1. URL Health Check

    Source: HTTP fetch (status code, response time, header analysis)

  2. Metadata Extraction

    Source: HTTP fetch + HTML parsing (meta tag extraction)

  3. Social Preview Image Check

    Source: HTTP fetch (Open Graph meta tag extraction)

  4. Page Speed Test

    Source: Google PageSpeed Insights API (Lighthouse performance analysis)

The answer returns every step’s result, so your agent can show or check each one.

Inputs

FieldTypeRequiredWhat it is
urlstringYes—

How to call it

# Needs an API key. The whole check is charged once, at the listed price.
curl -X POST https://api.strale.io/v1/solutions/page-seo-check/execute \
  -H "Authorization: Bearer $STRALE_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "inputs": {
      "url": "https://example.com/pricing"
    },
    "max_price_cents": 30
  }'

The bundle’s published example input.

Limitations

  • Checks HTTP response status and basic connectivity — does not assess content correctness or page rendering

    From step: URL Health Check

    What to do instead: Use page-exists for content-level existence (soft-404 detection), or screenshot-url for visual verification

  • Extracts meta tags from the initial HTML response — dynamically injected meta tags via JavaScript are not captured

    From step: Metadata Extraction

    What to do instead: Inspect the page in a browser for meta tags added by JavaScript.

  • Pages with more than 16 MiB of HTML are refused with a caller_input error naming the input field. The call is not charged, and the page is not retried through another fetch or rendering route.

    From step: Metadata Extraction

  • Checks Open Graph and Twitter Card meta tags — dynamically injected OG tags via JavaScript may not be captured

    From step: Social Preview Image Check

    What to do instead: Inspect the rendered page in a browser for Open Graph tags added by JavaScript.

  • Pages with more than 16 MiB of HTML are refused with a caller_input error naming the input field. The call is not charged, and the page is not retried through another fetch or rendering route.

    From step: Social Preview Image Check

  • Scores reflect a point-in-time test — site performance may vary throughout the day

    From step: Page Speed Test

    What to do instead: Schedule periodic tests (e.g., every 6 hours) and track the trend rather than relying on a single measurement

  • Results measured from a single geographic location — actual user experience varies by region

    From step: Page Speed Test

    What to do instead: Run tests at multiple times and average the scores, or use the lab data breakdown to identify bottlenecks independent of location

  • If Lighthouse cannot load the page because it is unavailable, blocks automated visitors, requires authentication or redirects in a loop, the call is refused. No score is returned and no charge is taken.

    From step: Page Speed Test

    What to do instead: Check the URL loads in a browser from a clean session, and that it is reachable without a login