User

Modify User

Modify an existing user

  • username: Cannot be changed. Used to identify the user.
  • status: User's new status. Can be 'active', 'disabled', 'on_hold', 'limited', or 'expired'.
  • expire: UTC timestamp for new account expiration. Set to 0 for unlimited, null for no change.
  • data_limit: New max data usage in bytes (e.g., 1073741824 for 1GB). Set to 0 for unlimited, null for no change.
  • data_limit_reset_strategy: New strategy for data limit reset. Options include 'daily', 'weekly', 'monthly', or 'no_reset'.
  • proxies: Dictionary of new protocol settings (e.g., vmess, vless). Empty dictionary means no change.
  • inbounds: Dictionary of new protocol tags to specify inbound connections. Empty dictionary means no change.
  • note: New optional text for additional user information or notes. null means no change.
  • on_hold_timeout: New UTC timestamp for when on_hold status should start or end. Only applicable if status is changed to 'on_hold'.
  • on_hold_expire_duration: New duration (in seconds) for how long the user should stay in on_hold status. Only applicable if status is changed to 'on_hold'.
  • next_plan: Next user plan (resets after use).

Note: Fields set to null or omitted will not be modified.

put/api/user/{username}

Path parameters

usernamestring required

Request body

proxiesobject
expireinteger nullable
data_limitinteger nullable

data_limit can be 0 or greater

data_limit_reset_strategy'no_reset' | 'day' | 'week' | 'month' | 'year'
inboundsobject
notestring nullable
sub_updated_atstring date-time nullable
sub_last_user_agentstring nullable
online_atstring date-time nullable
on_hold_expire_durationinteger nullable
on_hold_timeoutstring date-time nullable
auto_delete_in_daysinteger nullable
status'active' | 'disabled' | 'on_hold'

Example request

{
  "data_limit": 0,
  "data_limit_reset_strategy": "no_reset",
  "expire": 0,
  "inbounds": {
    "vless": [
      "VLESS TCP REALITY",
      "VLESS GRPC REALITY"
    ],
    "vmess": [
      "VMess TCP",
      "VMess Websocket"
    ]
  },
  "next_plan": {
    "add_remaining_traffic": false,
    "data_limit": 0,
    "expire": 0,
    "fire_on_either": true
  },
  "note": "",
  "on_hold_expire_duration": 0,
  "on_hold_timeout": "2023-11-03T20:30:00",
  "proxies": {
    "vless": {},
    "vmess": {
      "id": "35e4e39c-7d5c-4f4b-8b71-558e4f37ff53"
    }
  },
  "status": "active"
}

Response

Successful Response

proxiesobject required
expireinteger nullable
data_limitinteger nullable

data_limit can be 0 or greater

data_limit_reset_strategy'no_reset' | 'day' | 'week' | 'month' | 'year'
inboundsobject
notestring nullable
sub_updated_atstring date-time nullable
sub_last_user_agentstring nullable
online_atstring date-time nullable
on_hold_expire_durationinteger nullable
on_hold_timeoutstring date-time nullable
auto_delete_in_daysinteger nullable
usernamestring required
status'active' | 'disabled' | 'limited' | 'expired' | 'on_hold' required
used_trafficinteger required
lifetime_used_trafficinteger
created_atstring date-time required
linksstring[]
subscription_urlstring
excluded_inboundsobject

Changes

No recorded changes to this endpoint across all 1 revision of this API.