Agent APIs & data services
Software pricing pages in. Comparison-ready JSON out.
Codex Web-to-JSON converts supported public software pricing pages into structured plan data: prices, billing commitments, seat requirements, usage allowances, and source evidence.
Built for procurement, comparison, and pricing-monitoring workflows.
Evaluate with a sample
Full response shape shown before any payment.
Purchase capacity
$10 once for 50 extractions.
Connect your agent
Buyer-scoped API key and documented HTTPS endpoints.
Sample output
The exact shape you can build on
Synthetic example — demonstrates the response schema. It is not a customer extraction or a verified live result. Every plan record carries its own evidence string, so a comparison agent can cite what it relied on.
{
"plans": [
{
"name": "Business",
"price": 49,
"currency": "USD",
"price_basis": "per_seat",
"billing_interval": "month",
"billing_commitment": "annual",
"minimum_seats": null,
"evidence": "$49 per user/month, billed annually"
}
],
"warnings": [
"Minimum seat requirement was not found."
]
}Source excerpt
Business — $49 per user/month, billed annually. Includes unlimited projects and advanced reporting.
null means not established
A null field was not stated on the page. It is never guessed or inferred — and the corresponding warning tells you which field was missing.
The offer
Prepaid capacity, not a subscription
One bundle, one price, no renewal. Capacity is granted when the payment provider confirms the charge and never before — a redirect back to this site grants nothing.
Launch terms
One-time prepaid purchase. No automatic renewal. Purchased credits do not expire. The server resolves the published price and included capacity before hosted checkout.
Evaluation bundle
Codex Web-to-JSON — Pricing Page Extraction
- One permitted public HTTPS pricing-page URL per job
- Plan records with evidence excerpts and retrieval timestamp
- Explicit unsupported status instead of invented results
- No automatic renewal, credits do not expire
Capacity is not granted by the checkout redirect. It is granted by the verified payment event, then collected at the extraction console. Need help? Contact support.
Repeat use
Track a vendor list without buying a subscription
Save up to ten pricing pages. The worker re-checks them daily or weekly, compares each extraction against the stored baseline, and reports only what actually changed: price, currency, price basis, billing interval, billing commitment, seat minimum or usage allowance.
Every scheduled check is paid from the same prepaid balance, one extraction per URL. Monitoring is not a separate plan, it renews nothing, and it stops on its own when capacity runs out.
Uncertain comparisons are never alerts
If a page layout changes, a field stops being stated, a plan disappears or an extraction fails, that is reported as a note with its reason — not as a price change. A confident alert requires both values to be established from the page.
One confirmed change
{
"plan": "Business",
"field": "price",
"previous_value": 49,
"current_value": 59,
"currency": "USD",
"price_basis": "per_seat",
"billing_interval": "month",
"billing_commitment": "annual",
"source_url": "https://vendor.example/pricing",
"evidence": "$59 per user/month, billed annually"
}Change reports are stored with the run and readable from the extraction console. Nothing is emailed or pushed anywhere yet.
Published limits
What the service does and does not do
Known before you pay, because a limit you discover after purchase is a defect.
- JavaScript-rendered pages
- Not supported. The worker reads the served HTML, so client-rendered pricing tables return unsupported.
- Maximum page size
- 2 MB of HTML. Larger pages are rejected before extraction.
- Fetch timeout
- 15 seconds per request, including up to 3 validated redirects.
- Plans per page
- Up to 12 plan records, in page order.
- Redirects
- Followed only when the destination is also a public HTTPS URL. Private and internal hosts are blocked.
- Caching
- No request caching. Every paid job fetches the page live.
- Result retention
- A 30-day retention target is documented, but automatic deletion is not yet enforced. Purchased credits do not expire.
- Access attempts
- Private-network destinations, IP literals, embedded credentials, non-443 ports and authentication bypass are refused.
- When a job consumes a credit
- Only a completed extraction returning at least one plan record. Rejected URLs, unsupported pages, fetch failures and empty extractions consume nothing.
- Retries
- Reuse the same idempotency_key to retrieve the original job without a second charge.
How it runs
Evaluate, purchase, extract, repeat
- 01
Evaluate
Read the sample output and the published limits. No account needed, no anonymous live crawl.
- 02
Purchase capacity
$10 buys 50 extractions once. Only the verified payment grants credits — never the redirect back to this site.
- 03
Collect your key
Your receipt links to the extraction console, where you issue one API key scoped to your balance.
- 04
Extract and repeat
Submit a URL, reserve one credit, receive evidence-linked JSON. Top up when the balance runs low.