Extract links from a page
Render a URL in a headless browser and return every link on the page as absolute URLs, including links injected by JavaScript. Optionally restrict to visible links or same-domain links for internal-link and broken-link audits.
Pricing — $ · min $0.01
Minimum 10 credits ($0.01) per call. Records returned above the minimum bill 1 credit ($0.001) each.
Authorization
bearerAuth UnifAPI API key. Provider credentials are managed by UnifAPI.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/browser/links" \ -H "Content-Type: application/json" \ -d '{ "url": "string" }'{
"request_id": "string",
"data": {
"url": "string",
"links": [
"string"
]
},
"billing": {
"credits_charged": 0,
"records_charged": 0,
"balance_remaining": 0,
"truncated_due_to_balance": true
}
}{
"error": {
"type": "validation_error",
"message": "string",
"request_id": "string",
"issues": [
null
],
"billing": {
"credits_required": 0,
"credits_charged": 0,
"records_charged": 0,
"balance_remaining": 0,
"truncated_due_to_balance": true
}
}
}{
"error": {
"type": "validation_error",
"message": "string",
"request_id": "string",
"issues": [
null
],
"billing": {
"credits_required": 0,
"credits_charged": 0,
"records_charged": 0,
"balance_remaining": 0,
"truncated_due_to_balance": true
}
}
}{
"error": {
"type": "validation_error",
"message": "string",
"request_id": "string",
"issues": [
null
],
"billing": {
"credits_required": 0,
"credits_charged": 0,
"records_charged": 0,
"balance_remaining": 0,
"truncated_due_to_balance": true
}
}
}{
"error": {
"type": "validation_error",
"message": "string",
"request_id": "string",
"issues": [
null
],
"billing": {
"credits_required": 0,
"credits_charged": 0,
"records_charged": 0,
"balance_remaining": 0,
"truncated_due_to_balance": true
}
}
}{
"error": {
"type": "validation_error",
"message": "string",
"request_id": "string",
"issues": [
null
],
"billing": {
"credits_required": 0,
"credits_charged": 0,
"records_charged": 0,
"balance_remaining": 0,
"truncated_due_to_balance": true
}
}
}{
"error": {
"type": "validation_error",
"message": "string",
"request_id": "string",
"issues": [
null
],
"billing": {
"credits_required": 0,
"credits_charged": 0,
"records_charged": 0,
"balance_remaining": 0,
"truncated_due_to_balance": true
}
}
}{
"error": {
"type": "validation_error",
"message": "string",
"request_id": "string",
"issues": [
null
],
"billing": {
"credits_required": 0,
"credits_charged": 0,
"records_charged": 0,
"balance_remaining": 0,
"truncated_due_to_balance": true
}
}
}{
"error": {
"type": "validation_error",
"message": "string",
"request_id": "string",
"issues": [
null
],
"billing": {
"credits_required": 0,
"credits_charged": 0,
"records_charged": 0,
"balance_remaining": 0,
"truncated_due_to_balance": true
}
}
}Render a page to HTML POST
Render a URL in a headless browser and return the fully rendered HTML after JavaScript execution — use it to read meta tags, structured data, and content that only appears after client-side rendering.
Render a page to Markdown POST
Render a URL in a headless browser (running JavaScript) and return the page as clean Markdown — ideal for content analysis, summarization, and feeding pages to language models.