The Proxy User ACL (Access Control List) object defines granular access permissions for proxy users. It allows you to control whether a proxy user can access specific services or individual proxies, enabling flexible access management for different use cases such as team segregation, reselling, or fine-grained security controls.
Key Attributes
| Attribute | Type | Description | 
proxy_user_acl_id | string | Unique identifier for the ACL entry (UUID format) | 
proxy_user_id | string | ID of the proxy user this ACL entry applies to | 
service_id | string | Service ID to grant access to (mutually exclusive with proxy_id) | 
proxy_id | string | Proxy ID to grant access to (mutually exclusive with service_id) | 
proxy_user_acl_creation_datetime | datetime | Timestamp when the ACL entry was created | 
 
Access Control Model
Proxy User ACL entries work in conjunction with the proxy_user_access_type field on the Proxy User object:
access_type: "all": No ACL entries needed. Proxy user has unrestricted access to all proxies. 
access_type: "service_restricted": ACL entries with service_id define which services the proxy user can access. The user can use any proxy within those services. 
access_type: "proxy_restricted": ACL entries with proxy_id define which specific individual proxies the proxy user can access. 
Each ACL entry must contain either a service_id or a proxy_id, but never both. The type of ID must match the proxy user’s access_type.
 
Use Cases
Service-Restricted Access
Perfect for organizing proxy access by teams, departments, or customers:
{
  "proxy_user_id": "seo_team",
  "service_id": "API-SEO-POOL-001"
}
 
The seo_team proxy user can access all proxies in the API-SEO-POOL-001 service.
Proxy-Restricted Access
Ideal for reselling individual proxies or highly granular access control:
{
  "proxy_user_id": "customer_123",
  "proxy_id": "550e8400-e29b-41d4-a716-446655440001"
}
 
The customer_123 proxy user can only access this specific proxy.
Object Relationships
The Proxy User ACL creates a many-to-many relationship between proxy users and their accessible resources:
- Proxy User: A single proxy user can have multiple ACL entries
 
- Service: When an ACL grants service access, the user can access all proxies in that service
 
- Proxy: When an ACL grants proxy access, the user can only access that specific proxy
 
- Multiple ACLs: You can create multiple ACL entries to grant access to multiple services or proxies
 
| Endpoint | Method | Description | 
/public/user/proxy_user_acl/create | POST | Create a new ACL entry | 
/public/user/proxy_user_acl/retrieve/{proxy_user_acl_id} | GET | Retrieve a specific ACL entry | 
/public/user/proxy_user_acl/search | GET | Search ACL entries with filters | 
/public/user/proxy_user_acl/delete/{proxy_user_acl_id} | DELETE | Delete an ACL entry | 
 
Example Response
{
  "data": {
    "proxy_user_acl_id": "550e8400-e29b-41d4-a716-446655440000",
    "proxy_user_id": "stevejobs",
    "service_id": "API-1234-5678",
    "proxy_user_acl_creation_datetime": "2023-09-28 12:34:56"
  },
  "message": "Proxy User Acl successfully retrieved."
}
 
Usage Notes
- ACL entries can only be created for proxy users with 
access_type set to "service_restricted" or "proxy_restricted" 
- The service or proxy specified in the ACL must belong to the same customer account as the proxy user
 
- When changing a proxy user’s 
access_type to "all", you must clear all existing ACL entries using the clear_proxy_user_acl parameter 
- Deleting a proxy user automatically deletes all associated ACL entries
 
- You can have multiple ACL entries for the same proxy user to grant access to multiple services or proxies