An agent carries out a set of instructions in Aiqaramba. It uses a browser or mobile device to complete the task and records what happened. The API lets you follow the run and inspect its result.
Overview
An agent represents one prompt execution and owns its full lifecycle. Its API record contains the configuration used for the run and the data produced during execution. This data includes the trace, executor result, auditor summary, findings, and artifacts.
Create an agent directly when the configuration applies to one run. Running a test spawns an agent from a saved configuration. The spawned agent links back to that test, while its state and results belong to the agent.
Lifecycle
The status field reports the current state:
pending: The run waits for an executor.
running: The executor performs the prompt.
waiting: The executor waits for human input or browser handoff.
auditing: The executor finished, and the auditor reviews the evidence.
completed: The run and audit finished. This state can include application findings.
failed: A platform error prevented the run or audit from finishing.
stopped: A user or the platform stopped the run.
Lifecycle status and test outcome serve different purposes. The result.success field gives the final pass or fail value.
Audit and summary
The executor stores result when it finishes the prompt, then moves the agent from running to auditing. The result contains the executor's reported success, short summary, and optional report.
During auditing, a separate, heavier model checks the execution trace and supporting evidence. The summary object stores the auditor's output, including the outcome, reason, test steps, decision factors, findings, and report. The auditor can also correct result.success.
Capabilities
Browser agents can use these main capabilities:
Browser interaction. Agents can navigate, read pages, take screenshots, inspect accessibility data, and use common page controls.
Low-level input. Agents can use pointer actions, keyboard actions, drag actions, key combinations, and scroll gestures.
HTTP requests. Agents can send HTTP requests without using the browser.
File workspace. Each agent has an isolated workspace. It can manage files and upload them through page controls.
JavaScript diagnostics. Agents can run read-only JavaScript to inspect browser state. They cannot use it to perform page actions.
Console and network inspection. Agents can inspect browser console messages and network events.
Human handoff. Agents can pause and give browser control to a user. They resume after the user returns control.
Creates and queues an agent from inline instructions.
Request Body (application/json)
Field
Type
Required
Description
project_id
uuid
Yes
ID of the project this agent belongs to
role_id
uuid
No
Optional role for prompt injection context
name
string
No
Human-readable agent name
entry_url
string
No
Absolute http(s) URL the agent starts at. Required for a browser run; must be omitted or empty for an android run.
instructions
string
Yes
Plain-language brief of the task the agent performs.
validations
string[]
No
Optional list of things the agent must verify and explicitly resolve (passed or failed) before it may complete. A run with a failed validation cannot complete successfully. Omit for tasks with nothing to check off.
model
string
No
LLM model to use
thinking_level
string
No
Override the executor model's reasoning depth for this run: MINIMAL, LOW, MEDIUM, or HIGH. Higher = more reasoning tokens (more thorough, more expensive). Omit to use the model's configured default.
auditor_thinking_level
string
No
Same as thinking_level but for the auditor that reviews this run after it finishes (MINIMAL, LOW, MEDIUM, HIGH). Lets you give the review more or less reasoning independently of the run itself.
auditor_model
string
No
LLM model for the auditor that reviews this run after it finishes. Lets you pick the review model independently of the run itself.
device
string
No
Execution device: browser or android
browser_type
string
No
Browser to use for a browser agent: chrome, firefox, or edge
app_artifact_id
uuid
No
Mobile app ID to install for an Android run
max_iterations
integer
No
Maximum number of model iterations before the agent stops
file_paths
string[]
No
Paths of tenant files to copy into the agent workspace
mailbox_names
string[]
No
Mailbox names to attach to this agent. The agent can read each attached inbox.
tunnel
string
No
Hostname of a live tunnel owned by this tenant. The agent starts at the entry URL rewritten onto this host, and is instructed to substitute this host for any other URL the instructions mention.