| Model | Description |
|---|---|
n1-latest | Points to the latest stable model. Automatically updated when new versions are released. Currently points to n1-20260203. |
n1-experimental | Points to the latest experimental research model. Model behavior and support may not be stable. May be deprecated silently at any time. |
n1-20260203 | Latest stable release. |
n1-latest for most use cases to automatically receive improvements as new versions are released.
chat.completions API.
tool_calls field in the response message. Example response:
content field contains the model’s reasoning, while tool_calls contains the predicted action(s) to execute. The request_id is a unique identifier for the request, useful for debugging and support.
n1-latest currently supports.
Note that n1-latest outputs relative coordinates in 1000×1000, which should be converted to absolute coordinates when executing actions in a browser environment.
| Action | Description | Arguments | Example |
|---|---|---|---|
left_click | Left mouse click at a specific point on the page. | coordinates: [x, y] | { "name": "left_click", "arguments": { "coordinates": [500, 300] } } |
double_click | Double left mouse click at a specific point on the page. | coordinates: [x, y] | { "name": "double_click", "arguments": { "coordinates": [500, 300] } } |
triple_click | Triple left mouse click at a specific point on the page. | coordinates: [x, y] | { "name": "triple_click", "arguments": { "coordinates": [500, 300] } } |
right_click | Right mouse click at a specific point on the page. | coordinates: [x, y] | { "name": "right_click", "arguments": { "coordinates": [500, 300] } } |
scroll | Scrolls the page in a given direction by a specified amount, centered around a given position. | coordinates: [x, y]direction: “up” | “down” | “left” | “right”amount: int | { "name": "scroll", "arguments": { "coordinates": [632, 500], "direction": "down", "amount": 3 } } |
type | Types text into the currently focused input element, optionally clearing first or pressing Enter afterwards. | text: stringpress_enter_after: boolean (optional)clear_before_typing: boolean (optional) | { "name": "type", "arguments": { "text": "example", "press_enter_after": true } } |
key_press | Sends a keyboard input (Playwright-compatible key combination). | key_comb: string (compatible with Playwright Keyboard press) | { "name": "key_press", "arguments": { "key_comb": "Escape" } } |
hover | Hovers over a specific point on the page. | coordinates: [x, y] | { "name": "hover", "arguments": { "coordinates": [540, 210] } } |
drag | Drags an element from a starting position to a target position. | start_coordinates: [x, y]coordinates: [x, y] | { "name": "drag", "arguments": { "start_coordinates": [63, 458], "coordinates": [273, 458] } } |
wait | Pauses execution without interacting, allowing the page to update. | (none) | { "name": "wait", "arguments": {} } |
goto_url | Navigates directly to the specified URL. | url: string | { "name": "goto_url", "arguments": { "url": "https://example.com" } } |
go_back | Navigates back to the previous page in browser history. | (none) | { "name": "go_back", "arguments": {} } |
refresh | Reloads the current page. | (none) | { "name": "refresh", "arguments": {} } |
stop tool in the default list. During task execution, when the model intends to stop, it will return a response with only content text and without any tool_calls. This content field is the model’s final response to the initial user task.
extract_content_and_links tool call above, an example custom tool response in the message history may look like:
tools will be automatically appended to the list of default browser-use actions.
View default browser-use tool definitions
tool_calls list using the tool_choice parameter:
"auto" (default): The model will parse and return tool calls as a tool_calls list in the model response"none": The model will return the model response directly, treating it as raw content text without parsing (though tool calls may still appear inside <tool_call> tags in the content text)tool_choice is set to “none”:
View example response_format schema
response_format yourself manually, because the API will generate the proper response schema by default. The above snippet is an example showing the schema structure. If custom tools are included in your request, our API will automatically add their schemas as additional anyOf branches.
We do not recommend providing a custom response_format input, which will override the default response format. This may impact model output parsing and may degrade performance.
If absolutely necessary to provide a custom response format, we suggest also setting tool_choice="none" to work with the raw model output directly.Use Authorization: Bearer <api_key>
n1-latest, n1-experimental, n1-20260203 Additional tools to extend the default browser action tools. Tools are merged with the built-in browser actions (left_click, scroll, type, etc.).
Controls whether tool calls are parsed from the response. Model always decides whether to call a tool. 'none' treats the response as text-only, but tool calls may be present inside <tool_call> tags, 'auto' (default) parses tool calls automatically as tool_calls list in response.
An object specifying the format that the model must output.
Successful Response