Admin: Proxies
Cross-tenant proxy management and VM operations.
Admin proxy endpoints bypass tenant ownership checks and operate on any proxy across all tenants. The internalApiKey and internalApiUrl fields are always redacted in responses.
List All Proxies
GET
/api/admin/proxies| Param | Description |
|---|---|
| limit | Max results (default 100, max 500) |
| offset | Pagination offset |
| status | Filter: pending, running, paused, failed |
| includeDeleted | true to include soft-deleted proxies |
bash
# List all failed proxies
curl "https://cifp.vril.dev/api/admin/proxies?status=failed" \
-H "Cookie: authjs.session-token=your-admin-session"Response
{
"proxies": [
{
"id": "proxy-abc123def456",
"name": "alice-proxy",
"status": "failed",
"mode": "auto-auth",
"flyRegion": "sjc",
"proxyUrl": "https://proxy-abc123def456.proxy.cifp.vril.dev:3128",
"internalApiKey": "[REDACTED]",
"tenant": {
"name": "Alice's Org",
"slug": "user-alice1",
"plan": "pro"
},
"createdAt": "2026-06-01T10:00:00Z"
}
],
"total": 14,
"limit": 100,
"offset": 0
}Get Proxy (Cross-Tenant)
GET
/api/admin/proxies/:idbash
curl https://cifp.vril.dev/api/admin/proxies/proxy-abc123def456 \
-H "Cookie: authjs.session-token=your-admin-session"Update Proxy
PATCH
/api/admin/proxies/:id| Field / Action | Description |
|---|---|
| action: "pause" | Stop the VM (billing pauses) |
| action: "resume" | Restart the VM |
| action: "force-running" | Override status to running without touching the VM (for stuck states) |
| action: "force-failed" | Override status to failed (marks for admin attention) |
| name | Rename the proxy |
bash
# Force-clear a stuck "pending" state
curl -X PATCH https://cifp.vril.dev/api/admin/proxies/proxy-id \
-H "Cookie: authjs.session-token=your-admin-session" \
-d '{"action": "force-running"}'
# Pause a runaway proxy
curl -X PATCH https://cifp.vril.dev/api/admin/proxies/proxy-id \
-d '{"action": "pause"}'Force-Delete Proxy
DELETE
/api/admin/proxies/:idDestroys the VM and soft-deletes the DB record. Bypasses tenant ownership check.
bash
curl -X DELETE https://cifp.vril.dev/api/admin/proxies/proxy-id \
-H "Cookie: authjs.session-token=your-admin-session"
# Returns 204 No ContentRedeploy Proxy
POST
/api/admin/proxies/:id/redeployDestroys the existing VM and provisions a new one for the same tenant and proxy record. Use for stuck failed or pending proxies that cannot be recovered by pausing and resuming.
New IP address assigned
Redeployment allocates a fresh dedicated IP. The proxy URL will change. Any clients configured with the old proxy URL will need to be updated.
bash
curl -X POST https://cifp.vril.dev/api/admin/proxies/proxy-id/redeploy \
-H "Cookie: authjs.session-token=your-admin-session"Response (201)
{
"id": "proxy-abc123def456",
"status": "running",
"proxyUrl": "https://proxy-abc123def456.proxy.cifp.vril.dev:3128",
"internalApiKey": "[REDACTED]",
"message": "Proxy redeployment initiated"
}