Structured web data extraction and validation
Get structured fields from a page without claiming that extraction alone makes the data complete or correct.
From page content to JSON
Request JSON with json.prompt or json.schema. A schema describes the desired structure; your application must still check the response, field types and source evidence before using it.
curl https://api.oassis.dev/web/v1/scrape \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com/product","formats":["json"],"json":{"prompt":"Extract the displayed product name, price and currency. Use null for missing values. Do not infer availability.","schema":{"type":"object","properties":{"name":{"type":["string","null"]},"price":{"type":["number","null"]},"currency":{"type":["string","null"]}},"required":["name","price","currency"]}}}'What cleaning means in this workflow
| Step | Responsibility |
|---|---|
| Read the page or convert a supported document | Oassis extraction |
| Convert page content to Markdown or requested JSON fields | Oassis output format |
| Check schema, missing fields and extraction errors | Your application's validation |
| Normalize currency, units and time zones | Your explicit business rules |
| Deduplicate records and match products across stores | Your dataset pipeline |
Validate before storing
// Example application-side checks after inspecting the API's errors/data.
function validateProduct(value) {
if (!value || typeof value !== 'object') throw new Error('Missing product');
if (value.price !== null &&
(typeof value.price !== 'number' || !Number.isFinite(value.price) || value.price < 0)) {
throw new Error('Invalid price');
}
if (value.currency !== null &&
(typeof value.currency !== 'string' || !/^[A-Z]{3}$/.test(value.currency))) {
throw new Error('Currency requires review');
}
return value;
}For full JSON Schema validation use a validator in your application. Record source URL, capture time and selected variant alongside accepted data. A missing price is not zero and a failed page read is not an out-of-stock product.
Cost and limitations
A fresh JSON output costs $0.005. Additional outputs add to that price. Oassis does not promise a separate built-in data cleaning or factual verification service.
Try Scrape & Map · API quick start · Estimate your cost
Oassis basic fresh Markdown extraction: $0.002 per page output. All operation prices and calculator.