apyhub
Back
▣ SEO

Check Rich Results API

What it does

Rich Results Checker audits a webpage URL and tells you whether the page is eligible for rich results. Send an http/https URL in the request body, and the response returns the checked page URL, a summary, and per-type eligibility details.

Use Rich Results Checker when you want to verify structured-data coverage before publishing or when you need to diagnose why a page is not eligible for a specific result type. The summary includes the list of rich result types checked, the number of eligible types, and the total number of types evaluated.

For each eligible or not eligible type, the response includes the type name, status, fields present, fields missing, and fields recommended. That makes it easier to spot exactly which markup properties need to be added or corrected on a page.

This is a good fit for SEO checks in content pipelines, CMS validation, and QA workflows where you need a machine-readable assessment of structured data on a live page.

POST
Check Rich Results
https://api.eu.apyhub.com/chisleroff/check-rich-results

QUICKSTART

GUIDE

Quickstart

Check whether a webpage is eligible for rich results by sending its URL.

curl -X POST "https://api.eu.apyhub.com/chisleroff/check-rich-results" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://apyhub.com"}'

What you'll get back

Returns a JSON object with these top-level fields: url and source_url are URI strings, summary is an object, and eligible / not_eligible are arrays of result objects.

summary includes types_checked (array of strings), eligible_count (integer), and total_types_checked (integer). Each item in eligible and not_eligible may include type, status, fields_missing, fields_present, and fields_recommended.

{
  "url": "https://apyhub.com",
  "summary": {
    "types_checked": ["Article"],
    "eligible_count": 1,
    "total_types_checked": 1
  },
  "eligible": [],
  "source_url": "https://apyhub.com",
  "not_eligible": []
}
TRY ITLIVE · 100 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
body*
URL of the webpage to extract, audit, or validate content from (http/https only).

About this endpoint

What it does

Checks a webpage URL for rich-results eligibility and returns a structured report of the URL that was checked, a summary, and separate lists of eligible and not eligible rich result types.

Request Body

ParameterTypeDescription
urlStringURL of the webpage to extract, audit, or validate content from (http/https only).

Response

Returns a JSON object with url and source_url string fields, a summary object, and eligible and not_eligible arrays of objects. The summary includes types_checked as a string array, eligible_count as an integer, and total_types_checked as an integer.

ParameterTypeDescription
urlStringThe URL associated with the response.
summaryObjectSummary information for the check.
Includes types_checked (String Array), eligible_count (Integer), and total_types_checked (Integer).
summary.types_checkedString ArrayTypes that were checked.
summary.eligible_countIntegerCount of eligible types.
summary.total_types_checkedIntegerTotal number of types checked.
eligibleObject ArrayEligible rich result types. Each item includes type (String), status (String), fields_missing (String Array), fields_present (String Array), and fields_recommended (String Array).
eligible[].typeStringRich result type.
eligible[].statusStringStatus for the eligible type.
eligible[].fields_missingString ArrayFields that are missing.
eligible[].fields_presentString ArrayFields that are present.
eligible[].fields_recommendedString ArrayFields that are recommended.
source_urlStringSource URL returned in the response.
not_eligibleObject ArrayNot eligible rich result types. Each item includes type (String), status (String), fields_missing (String Array), fields_present (String Array), and fields_recommended (String Array).
not_eligible[].typeStringRich result type.
not_eligible[].statusStringStatus for the not eligible type.
not_eligible[].fields_missingString ArrayFields that are missing.
not_eligible[].fields_presentString ArrayFields that are present.
not_eligible[].fields_recommendedString ArrayFields that are recommended.
▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.