API — Profiles, presets & routing
List and import identities, manage presets and domain routing rules, and register the gateways your ports route through.
Profiles
/api/v1/profiles
Auth required
Lists stored identities, with optional paging and a browser filter.
| Parameter | Type | Required | Description |
|---|---|---|---|
limit | int (query) | No | Page size (default 100). |
offset | int (query) | No | Page offset (default 0). |
browser | string (query) | No | Filter by browser, e.g. "chrome". |
curl -H "X-API-Key: YOUR_API_KEY" "http://127.0.0.1:8891/api/v1/profiles?browser=chrome&limit=50"
/api/v1/counts
Auth required
Returns how many identities exist per browser family.
curl -H "X-API-Key: YOUR_API_KEY" http://127.0.0.1:8891/api/v1/counts
{ "Chrome": 10000, "Firefox": 500, "Safari": 300, "Edge": 200 }
A port's identity
/api/v1/port/{port}/rotate
Auth required
Rotates a port to a different identity within its current filters.
curl -H "X-API-Key: YOUR_API_KEY" -X POST http://127.0.0.1:8891/api/v1/port/20134/rotate
/api/v1/port/{port}/profile/view
Auth required
Returns the full identity a port is currently presenting.
curl -H "X-API-Key: YOUR_API_KEY" http://127.0.0.1:8891/api/v1/port/20134/profile/view
Presets
Presets save and re-apply port configurations, organized into folders.
/api/v1/presets
Auth required
Lists saved presets and folders.
/api/v1/presets
Auth required
Saves a preset.
/api/v1/presets/load
Auth required
Loads a preset onto a port.
/api/v1/presets
Auth required
Deletes a preset.
Domain routing rules
/api/v1/domain_rules
Auth required
Returns the ordered list of domain routing rules.
/api/v1/domain_rules
Auth required
Replaces the domain routing rules. Each rule matches domains and sends them through a chosen route with optional spoofing overrides.
Gateways (OpenVPN / VLESS)
/api/v1/ovpn
Auth required
Lists saved gateways and their tunnel status.
/api/v1/ovpn
Auth required
Adds a gateway (an .ovpn file or a vless:// link).
/api/v1/ovpn/{name}
Auth required
Updates an existing gateway.
/api/v1/ovpn/{name}
Auth required
Deletes a gateway (refused if it is in use).
/api/v1/gateway/openvpn-status
Auth required
Reports whether the OpenVPN/VLESS backend is available on the host.
/api/v1/ovpn/ping
Auth required
Measures the round-trip time to every saved gateway and returns the results. The measurement also runs on a schedule, so the response may contain values collected earlier.
/api/v1/gateway/subs
Auth required
Lists subscriptions. Each entry reports the number of servers it produced, the gateways it owns, when it last refreshed and the reason it last failed. The subscription link is redacted — it is stored locally and never returned.
/api/v1/gateway/subs
Auth required
Creates a subscription or edits an existing one by name. Servers from the subscription appear as ordinary gateways and can be used as an upstream or a first hop.
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Subscription name: Latin letters, digits, dot, hyphen and underscore, up to 64 characters. |
source | string | No | Subscription link. Required when creating. On edit, leave it out to keep the stored one. |
enabled | bool | No | Whether the subscription refreshes on a schedule. |
interval_min | int | No | Refresh interval in minutes. |
/api/v1/gateway/subs/{name}/refresh
Auth required
Refreshes one subscription immediately, without waiting for its schedule.
/api/v1/gateway/subs/{name}
Auth required
Deletes a subscription together with the gateways it created.