{"uid":"cap_YRTMP3LL5jMGRrKZRhn6Y","slug":"signalharness-structured-extract-be2b01d3","name":"SignalHarness Structured Extract","description":"Explore 330 pay-per-call x402 API services and 27 agent-native digital products, with Base USDC pricing, secure Polar checkout, and free discovery.","url":"https://signalharness.ai/api/agent/services/structured_extract/invoke","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"url":{"type":"string","pattern":"^https://","maxLength":2048,"minLength":9},"fields":{"type":"array","items":{"type":"object","required":["name","kind"],"properties":{"all":{"type":"boolean"},"kind":{"enum":["text","attribute","metadata","json_ld"],"type":"string","maxLength":9,"minLength":4},"name":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_]{0,63}$","maxLength":64,"minLength":1},"path":{"type":"string","maxLength":256,"minLength":1},"selector":{"type":"string","maxLength":256,"minLength":1},"attribute":{"type":"string","maxLength":128,"minLength":1},"metadataKey":{"type":"string","maxLength":256,"minLength":1}},"maxProperties":7,"minProperties":2,"additionalProperties":false},"maxItems":32,"minItems":1}}},"responseSchema":{"type":"json","example":{"replay":false,"result":{"results":[{"kind":"text","name":"example","values":["example"],"matched":0}],"warnings":["Verify the caller-supplied data before relying on this result."],"sourceUrl":"example00"},"status":"succeeded","receipt":{"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","usage":[],"status":"succeeded","network":"eip155:8453","artifacts":[],"endedAtMs":0,"latencyMs":0,"paymentId":"example-payment","receiptId":"example-receipt","requestId":"example-request","serviceId":"structured_extract","executionId":"example-execution","startedAtMs":0,"amountAtomic":"20000","resultSha256":"aafd301cc99d8a5d7942b9e44b1f18167d3cb722ffdef8c38106181c66616ca7","serviceVersion":"1.0.0","settlementReference":"0x0000000000000000000000000000000000000000000000000000000000000000"},"artifacts":[],"requestId":"example-request","executionId":"example-execution"}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.02","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.02/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_BareCjsQBkHxEUE7131z6","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.02","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Extracts structured data fields (text, attributes, metadata, JSON-LD) from a given HTTPS URL using configurable field selectors","exampleAgentPrompt":"Can you extract the article title (as text using selector 'h1.article-title') and the author name (as text using selector 'span.author') from https://example.com/article/123?","exampleUseCases":[{"title":"E-commerce product data extraction","prompt":"Pull the product title, price, and availability from https://shop.example.com/product/456 — grab the title as text from 'h1.product-name', price as text from 'span.price', and availability as text from 'div.stock-status'."},{"title":"News article metadata scraping","prompt":"Extract the headline, published date, and description from https://news.example.com/story/789 — I need the title from the JSON-LD block, and the og:description and article:published_time from the page metadata."},{"title":"Real estate listing data pull","prompt":"Get me the listing address, asking price, and number of bedrooms from https://realestate.example.com/listing/101 — extract address as text with selector '.listing-address', price as text from '.listing-price', and beds as text from '.bed-count'."}],"resultDescription":"Returns a JSON object containing a results array with extracted field values keyed by field name, a sourceUrl confirming the fetched page, and any warnings encountered during extraction. Also includes a receipt with payment details, request/execution IDs, latency, and a SHA-256 hash of the result for verification.","failureModes":["URL is not HTTPS or is malformed — rejected by input validation","Selector does not match any element on the page — field returned with warning or null value","Page requires JavaScript rendering and returns incomplete HTML — extraction may miss dynamic content","Page blocks bots or returns a CAPTCHA — extraction fails or returns empty results","field name does not match pattern ^[A-Za-z][A-Za-z0-9_]{0,63}$ — request rejected","Too many fields (>32) specified — request rejected","Payment failure or insufficient USDC balance — request not processed"],"whenToPreferThis":"Choose this endpoint when you need to extract specific, named fields from a known HTTPS URL with precise CSS selectors, attribute names, or metadata keys, and you want structured JSON output with payment receipts and result integrity hashes. Prefer this over generic scrapers when you need field-level control, JSON-LD or metadata extraction, and an auditable micropayment trail per call at $0.02 USDC.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T18:48:27.463Z","isFirstParty":false}