Skip to content

access / users ​

12 operations.

GET /access/users ​

ts
proxmox.access.users.$get()

User index.

Returns an array of object.

ParameterTypeRequiredNotes
enabledbooleanOptional filter for enable property.
fullbooleanInclude group and token information. — default 0

POST /access/users ​

ts
proxmox.access.users.$post()

Create new user.

Returns nothing.

ParameterTypeRequiredNotes
commentstring≤ 2048 chars
emailstringformat email-opt, ≤ 254 chars
enablebooleanEnable the account (default). You can set this to '0' to disable the account — default 1
expirenumberAccount expiration date (seconds since epoch). '0' means no expiration date. — min 0
firstnamestring≤ 1024 chars
groupsstringformat pve-groupid-list
keysstringKeys for two factor auth (yubico).
lastnamestring≤ 1024 chars
passwordstringInitial password. — ≤ 64 chars
useridstringyesFull User ID, in the name@realm format. — format pve-userid, ≤ 64 chars

GET /access/users/{userid} ​

ts
proxmox.access.users.$(userid).$get()

Get user configuration.

Returns object.

ParameterTypeRequiredNotes
useridstringyesFull User ID, in the name@realm format. — format pve-userid, ≤ 64 chars

PUT /access/users/{userid} ​

ts
proxmox.access.users.$(userid).$put()

Update user configuration.

Returns nothing.

ParameterTypeRequiredNotes
appendboolean
commentstring≤ 2048 chars
emailstringformat email-opt, ≤ 254 chars
enablebooleanEnable the account (default). You can set this to '0' to disable the account — default 1
expirenumberAccount expiration date (seconds since epoch). '0' means no expiration date. — min 0
firstnamestring≤ 1024 chars
groupsstringformat pve-groupid-list
keysstringKeys for two factor auth (yubico).
lastnamestring≤ 1024 chars
useridstringyesFull User ID, in the name@realm format. — format pve-userid, ≤ 64 chars

DELETE /access/users/{userid} ​

ts
proxmox.access.users.$(userid).$delete()

Delete user.

Returns nothing.

ParameterTypeRequiredNotes
useridstringyesFull User ID, in the name@realm format. — format pve-userid, ≤ 64 chars

GET /access/users/{userid}/tfa ​

ts
proxmox.access.users.$(userid).tfa.$get()

Get user TFA types (Personal and Realm).

Returns object.

ParameterTypeRequiredNotes
multiplebooleanRequest all entries as an array. — default 0
useridstringyesFull User ID, in the name@realm format. — format pve-userid, ≤ 64 chars

GET /access/users/{userid}/token ​

ts
proxmox.access.users.$(userid).token.$get()

Get user API tokens.

Returns an array of object.

ParameterTypeRequiredNotes
useridstringyesFull User ID, in the name@realm format. — format pve-userid, ≤ 64 chars

GET /access/users/{userid}/token/{tokenid} ​

ts
proxmox.access.users.$(userid).token.$(tokenid).$get()

Get specific API token information.

Returns object.

ParameterTypeRequiredNotes
tokenidstringyesUser-specific token identifier.
useridstringyesFull User ID, in the name@realm format. — format pve-userid, ≤ 64 chars

POST /access/users/{userid}/token/{tokenid} ​

ts
proxmox.access.users.$(userid).token.$(tokenid).$post()

Generate a new API token for a specific user. NOTE: returns API token value, which needs to be stored as it cannot be retrieved afterwards!

Returns object.

ParameterTypeRequiredNotes
commentstring
expirenumberAPI token expiration date (seconds since epoch). '0' means no expiration date. — min 0, default "same as user"
privsepbooleanRestrict API token privileges with separate ACLs (default), or give full privileges of corresponding user. — default 1
tokenidstringyesUser-specific token identifier.
useridstringyesFull User ID, in the name@realm format. — format pve-userid, ≤ 64 chars

PUT /access/users/{userid}/token/{tokenid} ​

ts
proxmox.access.users.$(userid).token.$(tokenid).$put()

Update API token for a specific user. NOTE: when 'regenerate' is set, the returned token value needs to be stored as it cannot be retrieved afterwards!

Returns object.

ParameterTypeRequiredNotes
commentstring
deletestringA list of settings you want to delete. — format pve-configid-list
expirenumberAPI token expiration date (seconds since epoch). '0' means no expiration date. — min 0, default "same as user"
privsepbooleanRestrict API token privileges with separate ACLs (default), or give full privileges of corresponding user. — default 1
regeneratebooleanRegenerate the token's secret value. All users of the previous secret will lose access after this operation. — default 0
tokenidstringyesUser-specific token identifier.
useridstringyesFull User ID, in the name@realm format. — format pve-userid, ≤ 64 chars

DELETE /access/users/{userid}/token/{tokenid} ​

ts
proxmox.access.users.$(userid).token.$(tokenid).$delete()

Remove API token for a specific user.

Returns nothing.

ParameterTypeRequiredNotes
tokenidstringyesUser-specific token identifier.
useridstringyesFull User ID, in the name@realm format. — format pve-userid, ≤ 64 chars

PUT /access/users/{userid}/unlock-tfa ​

ts
proxmox.access.users.$(userid)["unlock-tfa"].$put()

Unlock a user's TFA authentication.

Returns boolean.

ParameterTypeRequiredNotes
useridstringyesFull User ID, in the name@realm format. — format pve-userid, ≤ 64 chars