Loads one https page in a real headless browser and performs up to eight steps o
Loads one https page in a real headless browser and performs up to eight steps on it: click, fill, select, check, uncheck, wait, wait_for_selector. Returns a per-step log saying what was attempted and whether it succeeded, plus the final URL, title, visible text, links, form structure and an optional screenshot as a base64 PNG. Three limits are part of the product, not accidents.
Answeringour last check, 2026-10-10
1 of 1checks answered this week
1187 msmedian answer time
$0.016listed price per call
$0.016price it asked us
Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.
Endpoint
POST https://lauf.halowerk.com/v1/browser-task
| Category | Commerce and shopping |
|---|---|
| Provider host | lauf.halowerk.com |
| Networks | eip155:8453 |
| Payment schemes | exact |
| Self-reported calls, 30 days | 3 from 3 payers (the provider's figure, not ours) |
Our checks, last 30 days
| Day | Result | HTTP | Asked | Time |
|---|---|---|---|---|
| 2026-10-10 | valid payment request | 402 | $0.016 | 1187 ms |
Example input (from the provider)
{
"body": {
"collect": {
"links": true,
"text": true
},
"steps": [
{
"action": "wait",
"ms": 500
}
],
"url": "https://example.com/"
},
"bodyType": "json",
"method": "POST",
"type": "http"
}
Promised output schema (from the provider)
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"additionalProperties": false,
"properties": {
"collect": {
"additionalProperties": false,
"description": "What to return. text and links are on by default.",
"properties": {
"console": {
"default": false,
"description": "Console messages emitted by the page.",
"type": "boolean"
},
"forms": {
"default": false,
"type": "boolean"
},
"links": {
"default": true,
"type": "boolean"
},
"screenshot": {
"default": false,
"description": "A base64 PNG of the final state.",
"type": "boolean"
},
"text": {
"default": true,
"type": "boolean"
}
},
"type": "object"
},
"steps": {
"description": "At most 8 steps, executed in order. A step cannot navigate to another address.",
"items": {
"additionalProperties": false,
"properties": {
"action": {
"description": "What to do. \"press\" and free typing are deliberately absent \u2014 the Enter key is the usual way to submit a form without saying so.",
"enum": [
"click",
"fill",
"select",
"check",
"uncheck",
"wait",
"wait_for_selector"
],
"type": "string"
},
"ms": {
"description": "Milliseconds for wait.",
"maximum": 10000,
"minimum": 0,
"type": "integer"
},
"selector": {
"description": "CSS selector of the element. Required for click, fill, select, check, uncheck and wait_for_selector.",
"maxLength": 300,
"type": "string"
},
"text": {
"description": "Text for fill.",
"maxLength": 2000,
"type": "string"
},
"values": {
"description": "Option values for select.",
"items": {
"type": "string"
},
"maxItems": 20,
"type": "array"
},
"wait_after_ms": {
"description": "Pause after this step, e.g. to let a page settle.",
"maximum": 10000,
"minimum": 0,
"type": "integer"
}
},
"required": [
"action"
],
"type": "object"
},
"maxItems": 8,
"type": "array"
},
"url": {
"description": "The https page to load. Only public addresses; no credentials in the URL.",
"format": "uri",
"type": "string"
},
"viewport": {
"additionalProperties": false,
"properties": {
"height": {
"default": 900,
"maximum": 2000,
"minimum": 320,
"type": "integer"
},
"width": {
"default": 1280,
"maximum": 2560,
"minimum": 320,
"type": "integer"
}
},
"type": "object"
},
"wait_until": {
"default": "load",
"description": "When the page counts as loaded.",
"enum": [
"load",
"domcontentloaded",
"networkidle"
],
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}