Get Started
Overview
The Navigator API provides a computer-use model family. Given a task in natural language, the current screenshot, and the full action history, the model predicts the next action to take to accomplish the task. The API follows the OpenAIchat.completions format. Pick the model that matches your environment:
reasoning_effort sets how much — none, low, medium (the default, shown above), or xhigh. The trace comes back on reasoning_content and its tokens are counted in usage.reasoning_tokens. A task the model can just do returns an empty trace; the example below asks it to weigh two approaches, which is where reasoning shows up. See Reasoning.
Response Format
Actions are returned via thetool_calls field in the response message:
content is the model’s narration, tool_calls carries the predicted actions, and request_id is a unique identifier useful for debugging. Which tool names appear depends on the model — n2 batches GUI actions into computer_batch, while n1.5 calls browser actions directly. n2 also returns its reasoning trace on reasoning_content; see Reasoning.
When the model is done with the task, it returns a response with only content text and no tool_calls — the signal to end the loop. You can append a new user message to continue from the same history.Authorizations
Use Authorization: Bearer <api_key>
Body
Developer-provided instructions that the model should follow, regardless of
messages sent by the user. With o1 models and newer, developer messages
replace the previous system messages.
- ChatCompletionDeveloperMessageParam
- ChatCompletionSystemMessageParam
- ChatCompletionUserMessageParam
- ChatCompletionAssistantMessageParam
- ChatCompletionToolMessageParam
- ChatCompletionFunctionMessageParam
- ChatCompletionToolImageMessageParam
- ChatCompletionObservationMessageParam
n2, n1.5-latest, n1.5-20260428 Maximum output tokens. Defaults to 16384 for n2, because its reasoning trace and tool call share this budget. n1.5 defaults to 1572.
Sampling temperature. Defaults to 0.6 for n2. n1.5 defaults to 0.3.
Nucleus sampling threshold. Defaults to 0.95 for n2. Unset for n1.5.
Penalizes token repetition. 1.0 = no penalty, >1.0 = less repetition. Only supported by vLLM-backed models. Defaults to 1.0 for n2. Unset for n1.5.
Defaults to 0.0 for n2. Unset for n1.5.
Unset for both models; neither sets a server-side default for it.
n2 only. How much the model reasons before acting. Defaults to medium; none turns reasoning off. OpenAI's high and minimal are accepted as aliases for xhigh and low, and any unrecognized value falls back to medium.
none, low, medium, xhigh Additional tools, merged with the selected tool set rather than replacing it. n1.5 merges them with the built-in browser actions (left_click, scroll, type, etc.). n2 serves them alongside the tool set; a definition whose name the set already serves is rejected rather than shadowed — disable it first via disable_tools.
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. n2 supports 'auto' only.
An object specifying the format that the model must output.
Named tool set. n2 defaults to the current desktop set ('computer_use_tools-20260830': computer_batch, bash, read, write, edit) and accepts earlier dated sets. n1.5 defaults to 'browser_tools_core-20260403' (coordinate-based tools); 'browser_tools_expanded-20260403' adds extract_elements, find, set_element_value, execute_js.
List of tool names to remove from the selected tool set. For n2 only the shell/file tools (bash, read, write, edit) may be removed — computer_batch is the GUI surface and cannot be disabled.
JSON Schema for structured output. n1.5 only — n2 rejects this field. Appended to your task message. Model returns JSON in ```json fences, parsed and returned as 'parsed_json' in the response.
The request_id returned by the previous Navigator call in this conversation. Echo it back on each subsequent call to link the calls into one conversation for usage reporting.
Response
Successful Response