Proxy logins
A proxy login is a credential on the gateways, funded from your bandwidth pool and spending its own allocation. Every account starts with one named default; create more, one per team, project or client.
The login object:
{ "id": "3c1f8a02-...", "customer_id": "0d9e6b1c-...", "customer_name": "Acme", "name": "client-north", "proxy_user": "acme.north", "proxy_pass": "...", "status": "active", "alloc_bytes": 100000000, "used_bytes": 8388608, "remaining_bytes": 91611392, "created_at": "2026-07-15T14:20:00Z"}Create
Section titled “Create”POST /v1/loginscurl -s https://api.tpp.io/v1/logins \ -H "Authorization: Bearer $TOKEN" \ -d '{"name": "client-north", "proxy_user": "acme.north", "proxy_pass": "...", "bytes": 100000000}'bytes (optional, default 0) is the starting allocation, drawn from your unallocated_bytes. proxy_user is 3-64 characters of letters, digits, _ or . - no hyphens - and unique across the network.
List and read
Section titled “List and read”GET /v1/logins ?q=<name or proxy_user>&status=active|disabledGET /v1/logins/{id}Lists return {"logins": [...]} and support pagination.
Update
Section titled “Update”PATCH /v1/logins/{id}Any subset of name, proxy_user, proxy_pass. If your own account is disabled, all your logins stop authenticating too.
Move bandwidth
Section titled “Move bandwidth”POST /v1/logins/{id}/allocate{ "bytes": 50000000 }Positive moves bytes from your unallocated pool to the login; negative takes unspent bytes back. You can never take back more than the login’s remaining_bytes, and can never allocate more than your unallocated_bytes - either returns a 400 saying how much is available.
Delete
Section titled “Delete”DELETE /v1/logins/{id}Whatever the login hadn’t spent returns to your pool automatically.