Guides
Executing Actions
Execute single and batch tool actions on pages with WebUplink.
Executing Actions
After observing a page, your agent can execute tools to interact with it. Tool execution requires a Builder or Pro plan.
Single Tool Execution
Execute one tool at a time using tool and params:
// Step 1: Browse a page
const page = await client.browse('https://google.com/travel/flights');
// page.tools → [{ name: "search_flights", params: [...] }]
// Step 2: Execute a tool
const results = await client.browse({
session_id: page.session_id,
tool: 'search_flights',
params: {
origin: 'SFO',
destination: 'Barcelona',
departure_date: '2026-07-01',
},
});
// Step 3: Check the result
console.log(results.results);
// [{ tool: "search_flights", success: true }]
console.log(results.summary);
// "12 flights from SFO to BCN. Cheapest: United $487..."Batch Tool Execution
Execute multiple tools sequentially in a single request:
const result = await client.browse({
session_id: page.session_id,
tools: [
{ tool: 'fill_shipping', params: { name: 'Jane Doe', address: '123 Main' } },
{ tool: 'select_shipping_speed', params: { speed: 'express' } },
{ tool: 'continue_to_payment', params: {} },
],
});Batch Execution Rules
- Tools execute sequentially, one at a time
- After each tool, WebUplink waits for the page to settle
- If a navigation occurs (page changes), execution stops
- If a tool fails, execution stops
- PageMap perception happens once at the end (not after every tool)
Handling stopped_reason
When batch execution stops early:
if (result.stopped_reason === 'navigation') {
// Page navigated mid-batch — remaining tools were skipped
console.log('Completed:', result.results?.length);
console.log('New page:', result.summary);
}
if (result.stopped_reason === 'timeout') {
// Operation timed out
}Partial Success
results always reflects exactly which tools were attempted:
const r = await client.browse({
session_id,
tools: [
{ tool: 'add_to_cart', params: {} },
{ tool: 'proceed_to_checkout', params: {} },
{ tool: 'place_order', params: {} },
],
});
// If checkout navigated to a new page after step 2:
// r.results.length === 2
// r.stopped_reason === 'navigation'
// r.summary describes the NEW pageFree Plan Restriction
Free plans cannot execute tools. Attempting tool execution returns:
{
"error": "PLAN_RESTRICTED",
"message": "Tool execution requires Builder plan or higher."
}Free plan users can still browse pages and read summaries/tools — they just can't execute them.