Website Structured Data Extraction Api avatar

Website Structured Data Extraction Api

Pricing

from $5.00 / 1,000 result returneds

Go to Apify Store
Website Structured Data Extraction Api

Website Structured Data Extraction Api

Pricing

from $5.00 / 1,000 result returneds

Rating

0.0

(0)

Developer

Jordan Nabbe

Jordan Nabbe

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Extracts and validates structured markup that already exists in HTML you supply: JSON-LD, Microdata, RDFa, Open Graph and Twitter Card. It never fetches URLs, runs no browser, executes no scripts and uses no AI, so results are deterministic and every value keeps its source format and location.

Input

Provide exactly one of: html, text (treated as HTML), records (objects with html or content, optional id), json (a record object, or an object with a records array), csv (header row with an html or content column, optional id), or base64Documents (objects with contentBase64 UTF-8 HTML, optional id).

Options: vocabularies (array of jsonld, microdata, rdfa, opengraph, twitter, no duplicates; default all five; unsupported values are rejected by the Actor code), validationLevel (none, basic, recommended; default basic), includeRaw (default true), deduplicate (default true), maxDocumentBytes (default 2097152, range 1024 to 10485760).

Output

One dataset row per document with documentId (your id or document-N), status (ok, partial, failed), entities (format, type, data, optional raw, source path and UTF-16 start offset), metadata (sorted Open Graph and Twitter maps), warnings, duplicates, coverage and stats. The OUTPUT record holds counts plus the rows (capped at 1000 rows, with rowsTruncated set when capped; the dataset always has all rows). stats.processingMs is always 0 so output stays reproducible.

Pricing

Intended pay-per-event model: document_extracted at $0.0005 when validationLevel is none, otherwise document_validated at $0.001, one event per non-failed document, with the first 1,000 documents free per customer. Events are only charged when running on the Apify platform, and the prices must be configured in the Apify Console; this repository does not set them. Compute cost estimates are unbenchmarked.

Limits

Max 10,000 documents and 100 MB total input per run; 1,000 entities per document; 100 keys per object; microdata/RDFa nesting depth 8; JSON-LD depth 32, 20,000 nodes and 1 MB per block; 200,000 elements and nesting 512 per document. Documents are processed sequentially. Validation uses bundled rules for a few common schema.org types only, with no registry lookups. Microdata itemref and full RDFa processing (prefix expansion, chaining) are not supported.

Failure behaviour

The run fails (non-zero exit, nothing stored) on invalid input: zero or multiple modes, unknown keys, out-of-range values, unsupported vocabularies, malformed CSV, unsupported record shapes, or exceeded run limits. Per-document problems (invalid base64, non-UTF-8 bytes, oversized or too complex documents) produce a failed row and the batch continues. Malformed JSON-LD gives a partial row with machine-readable warnings while other markup is still extracted. Submitted content is never logged; you are responsible for having permission to process it and for the retention of your Apify storages.