EXTRACTION_FAILED
The fetch or the parse failed: an origin error, an unreachable host, a redirect problem, or a page or PDF Onto couldn't parse.
What this means
[02]EXTRACTION_FAILED covers several failures. The origin answered with an error status other than 401, 403 or 404, such as a 500. The connection was refused or the host was unreachable. The site redirected more than 5 times, or sent a redirect Onto couldn't follow. Or the page or PDF couldn't be parsed. The message says which. Failed requests are refunded.
When you'll see it
[03]HTTP 500. Body always includes code: "EXTRACTION_FAILED". Branch on code, never on the human-readable message — wording can change without notice; the code is the stable contract.
Example response
[04]{
"status": "error",
"code": "EXTRACTION_FAILED",
"message": "Upstream returned HTTP 503"
}How to handle
[05]Retry once. Errors are never cached, so a retry fetches the page again. If it keeps failing, read the message: an origin 5xx or an unreachable host is the site's problem. If the page loads fine in a browser and still fails, email the URL to founder@buildonto.dev.
Suggested handling in a Node client:
if (data.code === 'EXTRACTION_FAILED') {
// Often transient. Retry once — errors aren't cached.
return retry();
}The target site's TLS certificate or handshake failed, so Onto couldn't connect securely.
The target site didn't respond within 15 seconds.
See the full error index for the complete catalog with the handling switch statement covering every code at once.