Reference

The Argus API

Argus keeps a local HTTP server open while the launcher is running. Point your own code at it, or hand it to a coding agent over MCP — the same capabilities either way.

On this page

What this is

This is a local API. It listens on loopback on the machine running Argus, and nothing off that machine can reach it. There is no hosted web API.

The server starts with the launcher and stops with it. Everything it can do happens on this machine: it opens profiles in the Argus browser, reads and changes the ones you already have, and runs the automations you have authored.

Base URL
http://127.0.0.1:39219
Auth
Authorization: Bearer <YOUR_API_KEY>
Bodies
Content-Type: application/json
Surface
41 endpoints · 39 agent tools

Profiles are created in the app, not over the API. Each one is an identity with its own fingerprint and proxy, and minting those from a script is how you end up with fifty profiles that look alike.

Two ways in

The same capabilities, reached two ways. Which you want depends on whether you are writing the code or an agent is.

MCP, for AI agents

39 tools an agent discovers on its own — no wrapper to write and nothing to keep in step with a changelog.

argus_list_profilesargus_get_profileargus_create_profileargus_update_profileand 35 more
Connect a client

HTTP, for your own code

Plain JSON over loopback. Anything that can send a request can drive a profile — no SDK, and no library to install.

Create a key, and the first call is one line:

shell
curl -s "http://127.0.0.1:39219/v1/profiles" \
  -H "Authorization: Bearer <YOUR_API_KEY>"

Keys and approval

  • Keys are created in the launcher, under the API tab. The raw value is shown once, at creation — only a hash is stored, so a lost key is replaced rather than recovered.
  • A key can be scoped to specific folders, or left unscoped. A scoped key sees only the profiles in its folders, and may only close a session it opened itself.
  • The first time a new client calls the API, the launcher raises an approve-or-deny prompt and holds the request until you answer it.

A launched profile is a separate, anonymous browser process. Never hand it credentials or tokens — it has no account of its own, and that is the point.

Reference

Every endpoint, and the agent tool fronting it where one exists. A row marked HTTP only has no tool on purpose: an agent cannot call it, however plainly it is documented here.

41 endpoints · 39 agent tools

GETPOSTendpointMCPtool, no endpoint

Handing this to a coding agent? Take the whole reference — every endpoint, its fields and its curl — as one Markdown document.

What the errors mean

Every response carries a status boolean; a failure adds a msg saying what went wrong. Two of these are routinely misread as “retry me”.

401
No bearer token, or one that does not match a stored key.
403
The key is scoped to folders that do not contain that profile, or it is trying to author an automation while folder-scoped. Not a missing profile, and not worth retrying.
400
The body failed validation. The message names the exact path that failed.
404
No such route.
501
A documented route that is not implemented yet.
503
Argus Launcher is not open. Nothing can answer until it is.
504
The launcher window did not answer in time.

4xx fix the request5xx fix the launcher

Get the launcher

The API is part of it. Create a key under the API tab and you are calling this in a minute.