# AgentShelf JSON-LD Product Extractor

> AgentShelf JSON-LD Product Extractor is a paid API for AI agents from agentshelf.syntexa.ch, paid per call via x402, $0.003/call, status unknown (last checked 2026-09-29).

Extracts JSON-LD @type Product structured data from a public webpage URL or raw HTML snippet, SSRF-safe.

## Facts

- Endpoint: POST https://agentshelf.syntexa.ch/v1/profile-jsonld-product?utm_source=zero.xyz
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-29
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/agentshelf-json-ld-product-extractor-aab4264f
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_5rLSFcm3K8Qb65adei8PC

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability agentshelf-json-ld-product-extractor-aab4264f -d '<json body>'
```

Example prompt: Can you pull the JSON-LD Product structured data from this product page for me? Here's the URL: https://www.example-store.com/products/blue-widget

## When to prefer this

Use this endpoint when you need to reliably extract schema.org @type Product JSON-LD structured data from a public e-commerce or product page, either by URL fetch or by supplying raw HTML. Prefer the free sandbox endpoint POST /v1/sandbox/profile-jsonld-product first if available. Choose this paid endpoint when the sandbox is unavailable or rate-limited, and when you need SSRF-safe remote fetching of product metadata at scale.

## Known failure modes

- No JSON-LD Product schema found on the page — returns empty or null result
- URL is unreachable or returns a non-200 HTTP status
- HTML input exceeds the 200,000 character limit
- URL string is malformed or too short (under 8 characters)
- Page blocks crawling via robots.txt or bot detection — may return incomplete or no data
- SSRF-filtered URL (internal/private IP ranges) returns an error

## How this service works

Call when an agent needs JSON-LD @type Product extracted from a public page or HTML (SSRF-safe). Exact $0.003 USDC. Prefer unpaid POST /v1/sandbox/profile-jsonld-product first.

## Output

Returns the parsed JSON-LD @type Product object found within the page or HTML, including fields such as name, description, brand, offers (price, currency, availability), SKU, image, and other schema.org Product properties that are present in the source.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "url": {
   "type": "string",
   "maxLength": 2048,
   "minLength": 8,
   "description": "Public page to fetch. The selector or profile is fixed by the SKU. Provide url or html."
  },
  "html": {
   "type": "string",
   "examples": [
    "<!doctype html><html lang=\"en\"><head><title>Hello</title>\n<meta name=\"description\" content=\"Desc\"><meta property=\"og:title\" content=\"OG\">\n<link rel=\"canonical\" href=\"https://example.com/\"><link rel=\"icon\" href=\"/favicon.ico\">\n</head><body><h1>Hello</h1><a href=\"https://example.com/a\">A</a></body></html>"
   ],
   "maxLength": 200000,
   "minLength": 1,
   "description": "HTML to extract from locally. Provide html or url. When both are set, html is used."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agentshelf-json-ld-product-extractor-aab4264f/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agentshelf.syntexa.ch](https://www.zero.xyz/host/agentshelf.syntexa.ch/llms.txt)
