---
title: "Create Proxy User"
method: POST
path: "/public/user/proxy_user/create"
tags: ["Proxy User"]
---

# Create Proxy User

`POST /public/user/proxy_user/create`

This endpoint allows you to create a new proxy user.

The `proxy_user_id` and `proxy_user_password` can be provided or, if omitted, will be randomly generated.

Additional considerations when creating a Proxy User:
- `proxy_user_access_type`: Controls access restrictions ("all", "service_restricted", "proxy_restricted")
- `proxy_user_is_strict_security`: If true, the Proxy User requires an IP address authentication list.
- `proxy_user_enforce_https`: If true, this Proxy User can only access targets on port 443 (HTTPS).
- `ip_address_authentications` must be a list of valid IP addresses. Each IP address can only be used by one Proxy User.
- `proxy_user_residential_bytes_limit`: An integer limiting residential traffic (must not be negative).
- `proxy_user_mobile_bytes_limit`: An integer limiting mobile traffic (must not be negative).

For access control, use the ProxyUserAcl endpoints to grant specific service or proxy access when using "service_restricted" or "proxy_restricted" access types.

## Headers

- `Content-Type` string, required

## Request body

- object
  - `ip_address_authentications` string[] — A list of IP addresses for Proxy User authentication. Each IP can only be used by one Proxy User.
  - `proxy_user_access_type` 'all' | 'service_restricted' | 'proxy_restricted' — Access control type for the proxy user: - "all": Unrestricted access (default) - "service_restricted": Access restricted by ProxyUserAcl service entries - "proxy_restricted": Access restricted by ProxyUserAcl proxy entries
  - `proxy_user_enforce_https` boolean — If true, this Proxy User can only access targets on port 443 (HTTPS). This is useful for enforcing secure connections.
  - `proxy_user_id` string — The ID of the proxy user. If not provided, it will be randomly generated.
  - `proxy_user_is_strict_security` boolean — Enable strict security. If true, IP authentication is required.
  - `proxy_user_metadata` object — Arbitrary metadata object for the Proxy User. Constraints - Supports string, boolean, float and integer values. - Non-nested JSON object - Max 30 keys - Each value ≤ 300 chars - Total size ≤ 32KB Defaults to `{}` if not provided.
  - `proxy_user_mobile_bytes_limit` integer — Mobile bytes limit for the Proxy User (must not be negative).
  - `proxy_user_password` string — The password of the proxy user. If not provided, it will be randomly generated.
  - `proxy_user_residential_bytes_limit` integer — Residential bytes limit for the Proxy User (must not be negative).

## Response `201`

Proxy User Successfully Created

- object
  - `created` string[], required
  - `data` object, required
    - `proxy_user_id` string — The Proxy User ID/username.
    - `proxy_user_password` string — The Proxy User password.
  - `message` string, required — A message indicating success.

---

[API](https://skmtc.dev/byteful/apis/byteful-public-user-api.md) · [All operations](https://skmtc.dev/byteful/apis/byteful-public-user-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/byteful/byteful-public-user-api/revisions/3db1a6fc0099/schema)
