Kalle Browser tasks
Give Kalle Browser a task on the web and follow it step by step. It asks before it pays, sends or deletes anything.
Base URLhttps://api.kalle.build/v1AuthBearer kalle_sk_…VersionKalle-Version: 2026-11-01
Start a task
taskstringRequiredWhat the browser should do, in plain words.start_urlstringThe page to start on.require_approvalarrayActions that wait for your approval: payment, form_submit, message_send, delete. All four by default.webhook_urlstringWhere to send browser.task.* events instead of polling.POST/v1/browser/tasks
curl https://api.kalle.build/v1/browser/tasks \
-H "Authorization: Bearer $KALLE_API_KEY" \
-H "Kalle-Version: 2026-11-01" \
-H "Content-Type: application/json" \
-d '{
"task": "Find three venues in Aarhus for 40 people on 12 December and list their prices",
"start_url": "https://www.google.com",
"require_approval": [
"payment",
"form_submit",
"message_send"
]
}'Follow the task
| Status | Meaning |
|---|---|
running | Working through the steps |
requires_action | Waiting for your approval, see pending_action |
completed | Done. The result is in output |
failed | Stopped. The reason is in error |
cancelled | You stopped it |
GET/v1/browser/tasks/btk_4Rz8
curl https://api.kalle.build/v1/browser/tasks/btk_4Rz8 \
-H "Authorization: Bearer $KALLE_API_KEY" \
-H "Kalle-Version: 2026-11-01"Approve or stop
Approve the pending action, or call /cancel to stop the task. Sign-in pages are never filled in by Kalle Browser: the task returns requires_action with type sign_in and a link for a person to sign in.
POST/v1/browser/tasks/btk_4Rz8/approve
curl https://api.kalle.build/v1/browser/tasks/btk_4Rz8/approve \
-X POST \
-H "Authorization: Bearer $KALLE_API_KEY" \
-H "Kalle-Version: 2026-11-01"