# Unlimited Residential

Unlimited residential proxy plan management endpoints

## List unlimited accounts

> Returns all unlimited residential proxy accounts for the authenticated user.

```json
{"openapi":"3.0.0","info":{"title":"PlainProxies API v2","version":"2.0.0"},"tags":[{"name":"Unlimited Residential","description":"Unlimited residential proxy plan management endpoints"}],"servers":[{"url":"https://dashboard.plainproxies.com/api/v2","description":"Production API Server"},{"url":"https://plainproxies-sandbox.com/api/v2","description":"Sandbox API Server"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"API Key authentication. Get your key from the Dashboard Settings page. Include in all requests as: `X-API-KEY: PlainProxies_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`","name":"X-API-KEY","in":"header"}},"schemas":{"UnlimitedAccount":{"properties":{"uuid":{"type":"string","format":"uuid"},"username":{"type":"string"},"status":{"type":"string","enum":["active","expired","disabled"]},"is_enabled":{"type":"boolean"},"mbps_limit":{"description":"Speed limit in Mbps, 0 for unlimited","type":"integer"},"bandwidth_limit":{"description":"Bandwidth limit in GB, 0 for unlimited","type":"integer"},"threads_limit":{"description":"Threads limit, 0 for unlimited","type":"integer"},"bandwidth_used":{"description":"Bandwidth used in bytes","type":"integer"},"duration_days":{"type":"integer"},"expires_at":{"type":"string","format":"date-time","nullable":true},"last_active_at":{"type":"string","format":"date-time","nullable":true},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"},"credentials":{"properties":{"username":{"type":"string"},"password":{"type":"string"}},"type":"object","nullable":true},"location":{"properties":{"id":{"type":"integer"},"name":{"type":"string"},"country_code":{"type":"string"}},"type":"object","nullable":true},"server":{"properties":{"id":{"type":"integer"},"hostname":{"type":"string"}},"type":"object","nullable":true},"plan":{"properties":{"id":{"type":"integer"},"name":{"type":"string"}},"type":"object","nullable":true},"settings":{"properties":{"blocked_domains":{"type":"array","items":{"type":"string"}},"authorized_ips":{"type":"array","items":{"type":"string"}},"port_config_http":{"type":"array","items":{"type":"object"}},"port_config_socks5":{"type":"array","items":{"type":"object"}}},"type":"object","nullable":true}},"type":"object"}},"responses":{"Unauthorized":{"description":"Authentication failed. Ensure your API key is valid and included in the X-API-KEY header.","headers":{"WWW-Authenticate":{"description":"Authentication scheme hint","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string","enum":["API_KEY_MISSING","INVALID_API_KEY","USER_NOT_FOUND"]},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}}}},"paths":{"/unlimited":{"get":{"tags":["Unlimited Residential"],"summary":"List unlimited accounts","description":"Returns all unlimited residential proxy accounts for the authenticated user.","operationId":"4d9fb73f4ef56323ce5d9d49c72a3b08","parameters":[{"name":"include","in":"query","description":"Comma-separated list of relations to include (credentials, location, server, plan, settings)","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"List of unlimited accounts","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"data":{"type":"array","items":{"$ref":"#/components/schemas/UnlimitedAccount"}},"meta":{"properties":{"total":{"type":"integer"}},"type":"object"}},"type":"object"}}}},"401":{"$ref":"#/components/responses/Unauthorized"}}}}}}
```

## List available locations

> Returns all available server locations for unlimited residential plans.

```json
{"openapi":"3.0.0","info":{"title":"PlainProxies API v2","version":"2.0.0"},"tags":[{"name":"Unlimited Residential","description":"Unlimited residential proxy plan management endpoints"}],"servers":[{"url":"https://dashboard.plainproxies.com/api/v2","description":"Production API Server"},{"url":"https://plainproxies-sandbox.com/api/v2","description":"Sandbox API Server"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"API Key authentication. Get your key from the Dashboard Settings page. Include in all requests as: `X-API-KEY: PlainProxies_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`","name":"X-API-KEY","in":"header"}},"responses":{"Unauthorized":{"description":"Authentication failed. Ensure your API key is valid and included in the X-API-KEY header.","headers":{"WWW-Authenticate":{"description":"Authentication scheme hint","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string","enum":["API_KEY_MISSING","INVALID_API_KEY","USER_NOT_FOUND"]},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}}}},"paths":{"/unlimited/locations":{"get":{"tags":["Unlimited Residential"],"summary":"List available locations","description":"Returns all available server locations for unlimited residential plans.","operationId":"161f24e2f497a743dee90d605d9140dd","responses":{"200":{"description":"List of available locations","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"data":{"properties":{"locations":{"type":"array","items":{"properties":{"id":{"type":"integer"},"name":{"type":"string"},"region":{"type":"string"},"city":{"type":"string"},"country":{"type":"string"},"is_active":{"type":"boolean"},"available_servers":{"type":"integer"}},"type":"object"}}},"type":"object"}},"type":"object"}}}},"401":{"$ref":"#/components/responses/Unauthorized"}}}}}}
```

## List servers for a location

> Returns available servers for the specified location.

```json
{"openapi":"3.0.0","info":{"title":"PlainProxies API v2","version":"2.0.0"},"tags":[{"name":"Unlimited Residential","description":"Unlimited residential proxy plan management endpoints"}],"servers":[{"url":"https://dashboard.plainproxies.com/api/v2","description":"Production API Server"},{"url":"https://plainproxies-sandbox.com/api/v2","description":"Sandbox API Server"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"API Key authentication. Get your key from the Dashboard Settings page. Include in all requests as: `X-API-KEY: PlainProxies_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`","name":"X-API-KEY","in":"header"}},"responses":{"Unauthorized":{"description":"Authentication failed. Ensure your API key is valid and included in the X-API-KEY header.","headers":{"WWW-Authenticate":{"description":"Authentication scheme hint","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string","enum":["API_KEY_MISSING","INVALID_API_KEY","USER_NOT_FOUND"]},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"NotFound":{"description":"The requested resource does not exist or you do not have access to it.","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}}}},"paths":{"/unlimited/servers/{locationId}":{"get":{"tags":["Unlimited Residential"],"summary":"List servers for a location","description":"Returns available servers for the specified location.","operationId":"8a178cc284d54c74beb0e058f51334ef","parameters":[{"name":"locationId","in":"path","description":"Server location ID","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"List of available servers","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"data":{"properties":{"servers":{"type":"array","items":{"properties":{"id":{"type":"integer"},"hostname":{"type":"string"},"status":{"type":"string"},"has_capacity":{"type":"boolean"}},"type":"object"}}},"type":"object"}},"type":"object"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"}}}}}}
```

## Purchase unlimited plan

> Purchase a new unlimited residential proxy plan. Deducts balance from user account.

```json
{"openapi":"3.0.0","info":{"title":"PlainProxies API v2","version":"2.0.0"},"tags":[{"name":"Unlimited Residential","description":"Unlimited residential proxy plan management endpoints"}],"servers":[{"url":"https://dashboard.plainproxies.com/api/v2","description":"Production API Server"},{"url":"https://plainproxies-sandbox.com/api/v2","description":"Sandbox API Server"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"API Key authentication. Get your key from the Dashboard Settings page. Include in all requests as: `X-API-KEY: PlainProxies_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`","name":"X-API-KEY","in":"header"}},"schemas":{"UnlimitedPurchaseRequest":{"title":"Unlimited Plan Purchase Request","description":"Request body for purchasing a new unlimited residential proxy plan. The cost is automatically deducted from your account balance. Use GET /unlimited/locations and GET /plans to find valid location_id and plan_id values.","required":["location_id","plan_id","duration_days"],"properties":{"location_id":{"description":"ID of the server location where your proxy will be provisioned. Get available locations from GET /unlimited/locations.","type":"integer"},"plan_id":{"description":"ID of the pricing plan tier (determines bandwidth speed). Get available plans from GET /plans.","type":"integer"},"duration_days":{"description":"Subscription duration in days. Common values: 7 (weekly), 30 (monthly), 90 (quarterly), 365 (yearly). Longer durations typically offer better rates.","type":"integer","maximum":365,"minimum":1},"username":{"description":"Custom proxy authentication username. If not provided, a random username will be generated. Only alphanumeric characters, underscores, and hyphens allowed.","type":"string","pattern":"^[a-zA-Z0-9_-]+$","maxLength":50,"minLength":3},"password":{"description":"Custom proxy authentication password. If not provided, a secure random password will be generated.","type":"string","maxLength":50,"minLength":6}},"type":"object"},"UnlimitedAccount":{"properties":{"uuid":{"type":"string","format":"uuid"},"username":{"type":"string"},"status":{"type":"string","enum":["active","expired","disabled"]},"is_enabled":{"type":"boolean"},"mbps_limit":{"description":"Speed limit in Mbps, 0 for unlimited","type":"integer"},"bandwidth_limit":{"description":"Bandwidth limit in GB, 0 for unlimited","type":"integer"},"threads_limit":{"description":"Threads limit, 0 for unlimited","type":"integer"},"bandwidth_used":{"description":"Bandwidth used in bytes","type":"integer"},"duration_days":{"type":"integer"},"expires_at":{"type":"string","format":"date-time","nullable":true},"last_active_at":{"type":"string","format":"date-time","nullable":true},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"},"credentials":{"properties":{"username":{"type":"string"},"password":{"type":"string"}},"type":"object","nullable":true},"location":{"properties":{"id":{"type":"integer"},"name":{"type":"string"},"country_code":{"type":"string"}},"type":"object","nullable":true},"server":{"properties":{"id":{"type":"integer"},"hostname":{"type":"string"}},"type":"object","nullable":true},"plan":{"properties":{"id":{"type":"integer"},"name":{"type":"string"}},"type":"object","nullable":true},"settings":{"properties":{"blocked_domains":{"type":"array","items":{"type":"string"}},"authorized_ips":{"type":"array","items":{"type":"string"}},"port_config_http":{"type":"array","items":{"type":"object"}},"port_config_socks5":{"type":"array","items":{"type":"object"}}},"type":"object","nullable":true}},"type":"object"}},"responses":{"Unauthorized":{"description":"Authentication failed. Ensure your API key is valid and included in the X-API-KEY header.","headers":{"WWW-Authenticate":{"description":"Authentication scheme hint","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string","enum":["API_KEY_MISSING","INVALID_API_KEY","USER_NOT_FOUND"]},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"ValidationError":{"description":"Request validation failed. Check the details field for specific field errors.","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"},"details":{"type":"object"}},"type":"object"}},"type":"object"}}}}}},"paths":{"/unlimited/purchase":{"post":{"tags":["Unlimited Residential"],"summary":"Purchase unlimited plan","description":"Purchase a new unlimited residential proxy plan. Deducts balance from user account.","operationId":"e6820285d6f8e7a308498452f39a7548","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnlimitedPurchaseRequest"}}}},"responses":{"201":{"description":"Plan purchased successfully","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"message":{"type":"string"},"data":{"$ref":"#/components/schemas/UnlimitedAccount"}},"type":"object"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"402":{"description":"Insufficient balance","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"422":{"$ref":"#/components/responses/ValidationError"}}}}}}
```

## Get unlimited account details

> Returns details for a specific unlimited residential account.

```json
{"openapi":"3.0.0","info":{"title":"PlainProxies API v2","version":"2.0.0"},"tags":[{"name":"Unlimited Residential","description":"Unlimited residential proxy plan management endpoints"}],"servers":[{"url":"https://dashboard.plainproxies.com/api/v2","description":"Production API Server"},{"url":"https://plainproxies-sandbox.com/api/v2","description":"Sandbox API Server"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"API Key authentication. Get your key from the Dashboard Settings page. Include in all requests as: `X-API-KEY: PlainProxies_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`","name":"X-API-KEY","in":"header"}},"schemas":{"UnlimitedAccount":{"properties":{"uuid":{"type":"string","format":"uuid"},"username":{"type":"string"},"status":{"type":"string","enum":["active","expired","disabled"]},"is_enabled":{"type":"boolean"},"mbps_limit":{"description":"Speed limit in Mbps, 0 for unlimited","type":"integer"},"bandwidth_limit":{"description":"Bandwidth limit in GB, 0 for unlimited","type":"integer"},"threads_limit":{"description":"Threads limit, 0 for unlimited","type":"integer"},"bandwidth_used":{"description":"Bandwidth used in bytes","type":"integer"},"duration_days":{"type":"integer"},"expires_at":{"type":"string","format":"date-time","nullable":true},"last_active_at":{"type":"string","format":"date-time","nullable":true},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"},"credentials":{"properties":{"username":{"type":"string"},"password":{"type":"string"}},"type":"object","nullable":true},"location":{"properties":{"id":{"type":"integer"},"name":{"type":"string"},"country_code":{"type":"string"}},"type":"object","nullable":true},"server":{"properties":{"id":{"type":"integer"},"hostname":{"type":"string"}},"type":"object","nullable":true},"plan":{"properties":{"id":{"type":"integer"},"name":{"type":"string"}},"type":"object","nullable":true},"settings":{"properties":{"blocked_domains":{"type":"array","items":{"type":"string"}},"authorized_ips":{"type":"array","items":{"type":"string"}},"port_config_http":{"type":"array","items":{"type":"object"}},"port_config_socks5":{"type":"array","items":{"type":"object"}}},"type":"object","nullable":true}},"type":"object"}},"responses":{"Unauthorized":{"description":"Authentication failed. Ensure your API key is valid and included in the X-API-KEY header.","headers":{"WWW-Authenticate":{"description":"Authentication scheme hint","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string","enum":["API_KEY_MISSING","INVALID_API_KEY","USER_NOT_FOUND"]},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"NotFound":{"description":"The requested resource does not exist or you do not have access to it.","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}}}},"paths":{"/unlimited/{uuid}":{"get":{"tags":["Unlimited Residential"],"summary":"Get unlimited account details","description":"Returns details for a specific unlimited residential account.","operationId":"6db83dd683b53571471e24b305d8746f","parameters":[{"name":"uuid","in":"path","description":"Account UUID","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"include","in":"query","description":"Comma-separated list of relations to include (credentials, location, server, plan, settings)","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Account details","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"data":{"$ref":"#/components/schemas/UnlimitedAccount"}},"type":"object"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"}}}}}}
```

## Delete unlimited account

> Delete an unlimited residential account. This action is irreversible.

```json
{"openapi":"3.0.0","info":{"title":"PlainProxies API v2","version":"2.0.0"},"tags":[{"name":"Unlimited Residential","description":"Unlimited residential proxy plan management endpoints"}],"servers":[{"url":"https://dashboard.plainproxies.com/api/v2","description":"Production API Server"},{"url":"https://plainproxies-sandbox.com/api/v2","description":"Sandbox API Server"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"API Key authentication. Get your key from the Dashboard Settings page. Include in all requests as: `X-API-KEY: PlainProxies_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`","name":"X-API-KEY","in":"header"}},"responses":{"Unauthorized":{"description":"Authentication failed. Ensure your API key is valid and included in the X-API-KEY header.","headers":{"WWW-Authenticate":{"description":"Authentication scheme hint","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string","enum":["API_KEY_MISSING","INVALID_API_KEY","USER_NOT_FOUND"]},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"NotFound":{"description":"The requested resource does not exist or you do not have access to it.","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}}}},"paths":{"/unlimited/{uuid}":{"delete":{"tags":["Unlimited Residential"],"summary":"Delete unlimited account","description":"Delete an unlimited residential account. This action is irreversible.","operationId":"9ed27ba9fb0f965dd2eb7e66136c6b67","parameters":[{"name":"uuid","in":"path","description":"Account UUID","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Account deleted successfully","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"message":{"type":"string"}},"type":"object"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"}}}}}}
```

## Upgrade unlimited plan

> Upgrade an existing unlimited residential plan to a higher tier. Deducts balance from user account.

```json
{"openapi":"3.0.0","info":{"title":"PlainProxies API v2","version":"2.0.0"},"tags":[{"name":"Unlimited Residential","description":"Unlimited residential proxy plan management endpoints"}],"servers":[{"url":"https://dashboard.plainproxies.com/api/v2","description":"Production API Server"},{"url":"https://plainproxies-sandbox.com/api/v2","description":"Sandbox API Server"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"API Key authentication. Get your key from the Dashboard Settings page. Include in all requests as: `X-API-KEY: PlainProxies_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`","name":"X-API-KEY","in":"header"}},"schemas":{"UnlimitedUpgradeRequest":{"title":"Unlimited Plan Upgrade Request","description":"Request body for upgrading an existing unlimited residential plan to a higher tier. You can only upgrade to a higher tier plan (e.g., from 200 Mbps to 400 Mbps). The prorated cost difference is deducted from your account balance.","required":["plan_id"],"properties":{"plan_id":{"description":"ID of the new pricing plan tier to upgrade to. Must be a higher tier than your current plan. Get available plans from GET /plans.","type":"integer"}},"type":"object"},"UnlimitedAccount":{"properties":{"uuid":{"type":"string","format":"uuid"},"username":{"type":"string"},"status":{"type":"string","enum":["active","expired","disabled"]},"is_enabled":{"type":"boolean"},"mbps_limit":{"description":"Speed limit in Mbps, 0 for unlimited","type":"integer"},"bandwidth_limit":{"description":"Bandwidth limit in GB, 0 for unlimited","type":"integer"},"threads_limit":{"description":"Threads limit, 0 for unlimited","type":"integer"},"bandwidth_used":{"description":"Bandwidth used in bytes","type":"integer"},"duration_days":{"type":"integer"},"expires_at":{"type":"string","format":"date-time","nullable":true},"last_active_at":{"type":"string","format":"date-time","nullable":true},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"},"credentials":{"properties":{"username":{"type":"string"},"password":{"type":"string"}},"type":"object","nullable":true},"location":{"properties":{"id":{"type":"integer"},"name":{"type":"string"},"country_code":{"type":"string"}},"type":"object","nullable":true},"server":{"properties":{"id":{"type":"integer"},"hostname":{"type":"string"}},"type":"object","nullable":true},"plan":{"properties":{"id":{"type":"integer"},"name":{"type":"string"}},"type":"object","nullable":true},"settings":{"properties":{"blocked_domains":{"type":"array","items":{"type":"string"}},"authorized_ips":{"type":"array","items":{"type":"string"}},"port_config_http":{"type":"array","items":{"type":"object"}},"port_config_socks5":{"type":"array","items":{"type":"object"}}},"type":"object","nullable":true}},"type":"object"}},"responses":{"Unauthorized":{"description":"Authentication failed. Ensure your API key is valid and included in the X-API-KEY header.","headers":{"WWW-Authenticate":{"description":"Authentication scheme hint","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string","enum":["API_KEY_MISSING","INVALID_API_KEY","USER_NOT_FOUND"]},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"NotFound":{"description":"The requested resource does not exist or you do not have access to it.","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"ValidationError":{"description":"Request validation failed. Check the details field for specific field errors.","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"},"details":{"type":"object"}},"type":"object"}},"type":"object"}}}}}},"paths":{"/unlimited/{uuid}/upgrade":{"post":{"tags":["Unlimited Residential"],"summary":"Upgrade unlimited plan","description":"Upgrade an existing unlimited residential plan to a higher tier. Deducts balance from user account.","operationId":"e9b2b20a694500fc5bab56bd1f661c17","parameters":[{"name":"uuid","in":"path","description":"Account UUID","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnlimitedUpgradeRequest"}}}},"responses":{"200":{"description":"Plan upgraded successfully","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"message":{"type":"string"},"data":{"$ref":"#/components/schemas/UnlimitedAccount"}},"type":"object"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"402":{"description":"Insufficient balance","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationError"}}}}}}
```

## Renew unlimited plan

> Renew an existing unlimited residential plan with a new pricing plan. Deducts balance from user account.

```json
{"openapi":"3.0.0","info":{"title":"PlainProxies API v2","version":"2.0.0"},"tags":[{"name":"Unlimited Residential","description":"Unlimited residential proxy plan management endpoints"}],"servers":[{"url":"https://dashboard.plainproxies.com/api/v2","description":"Production API Server"},{"url":"https://plainproxies-sandbox.com/api/v2","description":"Sandbox API Server"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"API Key authentication. Get your key from the Dashboard Settings page. Include in all requests as: `X-API-KEY: PlainProxies_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`","name":"X-API-KEY","in":"header"}},"schemas":{"UnlimitedRenewRequest":{"title":"Unlimited Plan Renewal Request","description":"Request body for renewing an existing unlimited residential plan. You can renew with the same plan or choose a different tier. The renewal cost is deducted from your account balance and the expiration date is extended accordingly.","required":["plan_id"],"properties":{"plan_id":{"description":"ID of the pricing plan for renewal. Can be the same plan or a different tier. Get available plans from GET /plans.","type":"integer"}},"type":"object"},"UnlimitedAccount":{"properties":{"uuid":{"type":"string","format":"uuid"},"username":{"type":"string"},"status":{"type":"string","enum":["active","expired","disabled"]},"is_enabled":{"type":"boolean"},"mbps_limit":{"description":"Speed limit in Mbps, 0 for unlimited","type":"integer"},"bandwidth_limit":{"description":"Bandwidth limit in GB, 0 for unlimited","type":"integer"},"threads_limit":{"description":"Threads limit, 0 for unlimited","type":"integer"},"bandwidth_used":{"description":"Bandwidth used in bytes","type":"integer"},"duration_days":{"type":"integer"},"expires_at":{"type":"string","format":"date-time","nullable":true},"last_active_at":{"type":"string","format":"date-time","nullable":true},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"},"credentials":{"properties":{"username":{"type":"string"},"password":{"type":"string"}},"type":"object","nullable":true},"location":{"properties":{"id":{"type":"integer"},"name":{"type":"string"},"country_code":{"type":"string"}},"type":"object","nullable":true},"server":{"properties":{"id":{"type":"integer"},"hostname":{"type":"string"}},"type":"object","nullable":true},"plan":{"properties":{"id":{"type":"integer"},"name":{"type":"string"}},"type":"object","nullable":true},"settings":{"properties":{"blocked_domains":{"type":"array","items":{"type":"string"}},"authorized_ips":{"type":"array","items":{"type":"string"}},"port_config_http":{"type":"array","items":{"type":"object"}},"port_config_socks5":{"type":"array","items":{"type":"object"}}},"type":"object","nullable":true}},"type":"object"}},"responses":{"Unauthorized":{"description":"Authentication failed. Ensure your API key is valid and included in the X-API-KEY header.","headers":{"WWW-Authenticate":{"description":"Authentication scheme hint","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string","enum":["API_KEY_MISSING","INVALID_API_KEY","USER_NOT_FOUND"]},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"NotFound":{"description":"The requested resource does not exist or you do not have access to it.","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"ValidationError":{"description":"Request validation failed. Check the details field for specific field errors.","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"},"details":{"type":"object"}},"type":"object"}},"type":"object"}}}}}},"paths":{"/unlimited/{uuid}/renew":{"post":{"tags":["Unlimited Residential"],"summary":"Renew unlimited plan","description":"Renew an existing unlimited residential plan with a new pricing plan. Deducts balance from user account.","operationId":"e96decee1ddd89f17e10b986e51a0280","parameters":[{"name":"uuid","in":"path","description":"Account UUID","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnlimitedRenewRequest"}}}},"responses":{"200":{"description":"Plan renewed successfully","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"message":{"type":"string"},"data":{"$ref":"#/components/schemas/UnlimitedAccount"}},"type":"object"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"402":{"description":"Insufficient balance","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationError"}}}}}}
```

## Get account metrics

> Returns usage metrics for a specific unlimited residential account.

```json
{"openapi":"3.0.0","info":{"title":"PlainProxies API v2","version":"2.0.0"},"tags":[{"name":"Unlimited Residential","description":"Unlimited residential proxy plan management endpoints"}],"servers":[{"url":"https://dashboard.plainproxies.com/api/v2","description":"Production API Server"},{"url":"https://plainproxies-sandbox.com/api/v2","description":"Sandbox API Server"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"API Key authentication. Get your key from the Dashboard Settings page. Include in all requests as: `X-API-KEY: PlainProxies_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`","name":"X-API-KEY","in":"header"}},"responses":{"Unauthorized":{"description":"Authentication failed. Ensure your API key is valid and included in the X-API-KEY header.","headers":{"WWW-Authenticate":{"description":"Authentication scheme hint","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string","enum":["API_KEY_MISSING","INVALID_API_KEY","USER_NOT_FOUND"]},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"NotFound":{"description":"The requested resource does not exist or you do not have access to it.","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}}}},"paths":{"/unlimited/{uuid}/metrics":{"get":{"tags":["Unlimited Residential"],"summary":"Get account metrics","description":"Returns usage metrics for a specific unlimited residential account.","operationId":"4295d6e049815f4a2e2159f9cb48ea65","parameters":[{"name":"uuid","in":"path","description":"Account UUID","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Account metrics","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"data":{"properties":{"server":{"properties":{"cpu_usage":{"type":"number","format":"float"},"ram_usage":{"type":"number","format":"float"}},"type":"object"},"bandwidth":{"properties":{"used":{"description":"Bandwidth used in bytes","type":"integer"}},"type":"object"},"speed":{"description":"Speed metrics","type":"object"},"last_updated":{"type":"string","format":"date-time"}},"type":"object"}},"type":"object"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"}}}}}}
```

## Change account password

> Change the proxy password for an unlimited residential account.

```json
{"openapi":"3.0.0","info":{"title":"PlainProxies API v2","version":"2.0.0"},"tags":[{"name":"Unlimited Residential","description":"Unlimited residential proxy plan management endpoints"}],"servers":[{"url":"https://dashboard.plainproxies.com/api/v2","description":"Production API Server"},{"url":"https://plainproxies-sandbox.com/api/v2","description":"Sandbox API Server"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"API Key authentication. Get your key from the Dashboard Settings page. Include in all requests as: `X-API-KEY: PlainProxies_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`","name":"X-API-KEY","in":"header"}},"schemas":{"UnlimitedChangePasswordRequest":{"title":"Unlimited Account Password Change Request","description":"Request body for changing the proxy authentication password for an unlimited residential account. The new password takes effect immediately.","required":["password"],"properties":{"password":{"description":"New proxy authentication password. Must be 6-50 characters. Choose a strong password with a mix of letters, numbers, and symbols.","type":"string","maxLength":50,"minLength":6}},"type":"object"}},"responses":{"Unauthorized":{"description":"Authentication failed. Ensure your API key is valid and included in the X-API-KEY header.","headers":{"WWW-Authenticate":{"description":"Authentication scheme hint","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string","enum":["API_KEY_MISSING","INVALID_API_KEY","USER_NOT_FOUND"]},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"NotFound":{"description":"The requested resource does not exist or you do not have access to it.","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"ValidationError":{"description":"Request validation failed. Check the details field for specific field errors.","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"},"details":{"type":"object"}},"type":"object"}},"type":"object"}}}}}},"paths":{"/unlimited/{uuid}/password":{"put":{"tags":["Unlimited Residential"],"summary":"Change account password","description":"Change the proxy password for an unlimited residential account.","operationId":"f8ee418578799be1899e64471480c697","parameters":[{"name":"uuid","in":"path","description":"Account UUID","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnlimitedChangePasswordRequest"}}}},"responses":{"200":{"description":"Password changed successfully","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"message":{"type":"string"}},"type":"object"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationError"}}}}}}
```

## Get bandwidth metrics

> Returns time-series bandwidth usage data for an unlimited residential account. Supports configurable timeframes and intervals for granular usage analysis.

```json
{"openapi":"3.0.0","info":{"title":"PlainProxies API v2","version":"2.0.0"},"tags":[{"name":"Unlimited Residential","description":"Unlimited residential proxy plan management endpoints"}],"servers":[{"url":"https://dashboard.plainproxies.com/api/v2","description":"Production API Server"},{"url":"https://plainproxies-sandbox.com/api/v2","description":"Sandbox API Server"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"API Key authentication. Get your key from the Dashboard Settings page. Include in all requests as: `X-API-KEY: PlainProxies_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`","name":"X-API-KEY","in":"header"}},"responses":{"Unauthorized":{"description":"Authentication failed. Ensure your API key is valid and included in the X-API-KEY header.","headers":{"WWW-Authenticate":{"description":"Authentication scheme hint","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string","enum":["API_KEY_MISSING","INVALID_API_KEY","USER_NOT_FOUND"]},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}},"NotFound":{"description":"The requested resource does not exist or you do not have access to it.","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"}},"type":"object"}},"type":"object"}}}}}},"paths":{"/unlimited/{uuid}/bandwidth-metrics":{"get":{"tags":["Unlimited Residential"],"summary":"Get bandwidth metrics","description":"Returns time-series bandwidth usage data for an unlimited residential account. Supports configurable timeframes and intervals for granular usage analysis.","operationId":"cba5bbc37414e4f8350343df2d451a5a","parameters":[{"name":"uuid","in":"path","description":"Account UUID","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"timeframe","in":"query","description":"Predefined timeframe for the metrics window","schema":{"type":"string","default":"1day","enum":["1hour","6hours","1day","1week","1month","3months","custom"]}},{"name":"interval","in":"query","description":"Data point interval (defaults based on timeframe)","schema":{"type":"string","enum":["5min","30min","1hour","6hour","1day","1week","1month"]}},{"name":"start_date","in":"query","description":"Start date for custom timeframe (required when timeframe=custom)","schema":{"type":"string","format":"date-time"}},{"name":"end_date","in":"query","description":"End date for custom timeframe (required when timeframe=custom)","schema":{"type":"string","format":"date-time"}}],"responses":{"200":{"description":"Bandwidth metrics retrieved successfully","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean"},"data":{"properties":{"data":{"type":"array","items":{"properties":{"time":{"type":"string","format":"date-time"},"uploaded_bytes":{"type":"integer"},"downloaded_bytes":{"type":"integer"},"uploaded_gb":{"type":"number","format":"float"},"downloaded_gb":{"type":"number","format":"float"},"request_count":{"type":"integer"},"success_count":{"type":"integer"}},"type":"object"}},"summary":{"properties":{"total_uploaded_gb":{"type":"number","format":"float"},"total_downloaded_gb":{"type":"number","format":"float"},"total_requests":{"type":"integer"},"total_success":{"type":"integer"}},"type":"object"}},"type":"object"}},"type":"object"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.plainproxies.com/resller-api-documentation/unlimited-residential-plans/unlimited-residential.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
