Orthogonal
Extract structured content from raw HTML without using a browser
Offering
- Provider
- Orthogonal
- Method
- POST
- Offering type
- Api Endpoint
- Transport type
- http
- Category
- Infrastructure
- Delivery
- Not provided
- Pricing model
- Not provided
- x402 version
- 2
Endpoint context
- URL
https://np.orthogonal.com/notte/scrape_from_html- MIME type
- application/json
- First seen
- 2026-10-16T01:50:04.079Z
- Last seen
- Tags
- X402, paid-api, orthogonal-proxy, notte, data-apis, browser-automation, web-scraping, AI-agents, headless-browser
Payment pricing
x402 payment terms are the authoritative price for calling this endpoint.
- Payment option 1
- 0.002 USDC
Atomic price: 2000 · Network: eip155:8453 · Asset: USDC · Scheme: exact - Payment option 2
- 2000 atomic units
Atomic price: 2000 · Network: eip155:5042 · Asset: 0x3600000000000000000000000000000000000000 · Scheme: exact
Raw x402 terms
[
{
"scheme": "exact",
"network": "eip155:8453",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "2000",
"payTo": "0x4616EFD1a55C4415D42CceCFFe254965acEb8FEB"
},
{
"scheme": "exact",
"network": "eip155:5042",
"asset": "0x3600000000000000000000000000000000000000",
"amount": "2000",
"payTo": "0x4616EFD1a55C4415D42CceCFFe254965acEb8FEB"
}
]Observed health
- Status
- Healthy
- Latest latency
- 83 ms
- Average latency
- 724 ms
- HTTP status
- 204
- Last checked
- Reachability
- 100% over 9 checks
Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.
Input schema
{
"body": {
"type": "object",
"title": "ScrapeFromHtmlRequest",
"properties": {
"model": {
"anyOf": [
{
"enum": [
"openai/gpt-4o",
"gemini/gemini-3.5-flash",
"vertex_ai/gemini-3.5-flash",
"openrouter/google/gemma-3-27b-it",
"cerebras/gpt-oss-120b",
"groq/gpt-oss-120b",
"perplexity/sonar-pro",
"deepseek/deepseek-r1",
"together_ai/meta-llama/llama-3.3-70b-instruct",
"anthropic/claude-sonnet-4-5-20250929",
"moonshot/kimi-k2.5",
"xai/grok-4.3",
"minimax/minimax-m2.5"
],
"type": "string",
"title": "LlmModel"
},
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Model",
"description": "The LLM used to extract structured data when `instructions` or `response_format` is set, e.g. 'vertex_ai/gemini-3.1-flash-lite'. Defaults to the platform model."
},
"frames": {
"type": "array",
"items": {
"type": "object",
"title": "FrameData",
"required": [
"frameUrl",
"frameData"
],
"properties": {
"frameUrl": {
"type": "string",
"title": "Frameurl",
"description": "URL of the frame"
},
"frameData": {
"type": "string",
"title": "Framedata",
"description": "DOM Content of the frame"
}
}
},
"title": "Frames",
"description": "Frame data for all frames found in the page. The main frame has to be the first one"
},
"selector": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Selector",
"description": "Playwright selector to scope the scrape to. Only content inside this selector will be scraped."
},
"only_images": {
"type": "boolean",
"title": "Only Images",
"default": false,
"description": "Whether to only scrape images from the page. If True, the page content is excluded."
},
"ignored_tags": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
],
"title": "Ignored Tags",
"description": "HTML tags to ignore from the page"
},
"instructions": {
"type": "string",
"title": "Instructions",
"default": "",
"description": "User description as to what needs to be scraped"
},
"scrape_links": {
"type": "boolean",
"title": "Scrape Links",
"default": true,
"description": "Whether to scrape links from the page. Links are scraped by default."
},
"scrape_images": {
"type": "boolean",
"title": "Scrape Images",
"default": false,
"description": "Whether to scrape images from the page. Images are scraped by default."
},
"response_format": {
"anyOf": [
{},
{
"type": "null"
}
],
"title": "Response Format",
"description": "The response format to use for the scrape. You can use a Pydantic model or a JSON Schema dict (cf. https://docs.pydantic.dev/latest/concepts/json_schema/#generating-json-schema.)"
},
"only_main_content": {
"type": "boolean",
"title": "Only Main Content",
"default": false,
"description": "Whether to only scrape the main content of the page. If True, navbars, footers, etc. are excluded."
},
"use_link_placeholders": {
"type": "boolean",
"title": "Use Link Placeholders",
"default": false,
"description": "Whether to use link/image placeholders to reduce the number of tokens in the prompt and hallucinations. However this is an experimental feature and might not work as expected."
}
},
"additionalProperties": false
},
"type": "http",
"method": "POST",
"bodyType": "json"
}Output schema
{
"type": "object",
"title": "ScrapeSchemaResponse",
"required": [
"model_schema",
"scrape"
],
"properties": {
"scrape": {
"anyOf": [
{
"type": "object",
"title": "StructuredData[BaseModel]",
"properties": {
"data": {
"anyOf": [
{
"type": "object",
"title": "BaseModel",
"properties": {}
},
{
"title": "RootModel[Any]"
},
{
"type": "null"
}
],
"title": "Data",
"description": "Structured data extracted from the page in JSON format"
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Error",
"description": "Error message if the data was not extracted successfully"
},
"success": {
"type": "boolean",
"title": "Success",
"default": true,
"description": "Whether the data was extracted successfully"
}
}
},
{
"type": "null"
}
],
"description": "Output from the scrape, validated upon the model schema"
},
"model_schema": {
"type": "object",
"title": "SchemaGenerationResponse",
"required": [
"success"
],
"properties": {
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Error"
},
"success": {
"type": "boolean",
"title": "Success"
},
"model_schema": {
"anyOf": [
{
"type": "object",
"additionalProperties": true
},
{
"type": "null"
}
],
"title": "Model Schema"
}
}
}
}
}