{"uid":"cap_kDS1nb-_aBD7AFjeJK8tD","slug":"sitecheck-structured-data-extractor-1d6ea252","name":"SiteCheck Structured Data Extractor","description":"Structured data from a web page (url) or your own text: give a schema of up to 20 field names with what each holds, and get a JSON object with exactly those fields, null where the text does not state one. Llama 3.3 70B. Text is capped at 12,000 characters; a model answer that is not JSON is retried once, then not charged.","url":"https://api.sitecheck-api.workers.dev/api/extract?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"url":{"type":"string","description":"Web page to read (or text)"},"text":{"type":"string","description":"Text to read (up to 12,000 characters), instead of url"},"schema":{"type":"object","description":"Field name to what the field holds, up to 20 fields"},"instructions":{"type":"string","description":"Optional extra instructions, up to 500 characters"}}},"responseSchema":{"type":"json","example":{"note":"Values come from the text only; a null means the text does not state it. Check important values against the source.","model":"@cf/meta/llama-3.3-70b-instruct-fp8-fast","fields":{"total":1250,"currency":"EUR","due_date":"2026-10-31","invoice_number":"INV-2026-0042"},"checkedAt":"2026-10-14T05:12:24.660Z"}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.004","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.004/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.004","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.004","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_E2JoI6_L-Lm7gVQPZ-Yb_","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.004","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Extracts structured, schema-defined fields from a web page URL or raw text using an LLM, returning typed values mapped to user-defined field names","exampleAgentPrompt":"Read the invoice at https://example.com/invoice-2026-42.html and extract the total amount, currency, due date, and invoice number into structured fields.","exampleUseCases":[{"title":"Invoice data extraction pipeline","prompt":"Fetch this invoice page at https://billing.acme.com/invoices/INV-2026-0042 and extract the invoice number, total, currency, and due date as structured fields so I can log them to our accounting system."},{"title":"Job listing field parser","prompt":"Read the job posting at https://jobs.example.com/posting/senior-engineer and extract the job title, salary range, location, required years of experience, and application deadline into structured JSON fields."},{"title":"Unstructured text field extractor","prompt":"Here's a contract excerpt — can you pull out the party names, contract start date, termination notice period, and governing law from it? The text is: 'This agreement is entered into between Acme Corp and Widget LLC on January 1 2026, with a 30-day termination notice, governed by New York law.'"}],"resultDescription":"A JSON object containing a 'fields' map where each key is a user-defined field name and the value is the extracted content (or null if not found in the source), along with the model name used, a checkedAt timestamp, and a note reminding users to verify important values against the source.","failureModes":["URL is unreachable or returns non-200 status — extraction fails with no content","Text exceeds 12,000 character limit — truncation or rejection","Schema has more than 20 fields — excess fields may be ignored","LLM cannot find a field value — returns null for that field","Ambiguous or conflicting values in source — LLM may pick the wrong one","Paywalled or login-protected page — content unavailable for extraction","Non-text content (e.g. images, PDFs without text layer) — no extractable text"],"whenToPreferThis":"Use this endpoint when you need to extract specific, named fields from an arbitrary web page or text blob into a structured JSON object, especially when the source is unstructured or semi-structured. Ideal for invoice parsing, document field extraction, lead enrichment from web pages, or any task where you define a schema and want the LLM to fill it from a given source. Prefer this over generic web scrapers when you need typed, schema-aligned output rather than raw HTML or Markdown.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-17T15:33:51.917Z","isFirstParty":false,"canonicalSlug":"sitecheck-structured-data-extractor-1d6ea252"}