I am unable to authenticate to the Proxmox API using API tokens, despite following all documented procedures. Authentication with user/password works, but all attempts with API tokens return {"data":null} and HTTP 401.Steps to Reproduce:
- Create a user (jenkins@pve) in the Proxmox UI (Datacenter → Permissions → Users).
- Assign Administrator permissions to the user on /.
- Create an API token for the user (e.g., ID: jenkins), with and without privilege separation, never expiring.
- Assign Administrator permissions to the token as well.
- Use the following curl command (from multiple machines, including the Proxmox
curl -k -d 'username=jenkins@pve!jenkins' -d 'password=<token-value>' https://<proxmox-host>:8006/api2/json/access/ticket - The response is always {"data":null} and the access log shows HTTP 401.
- Logging in with the same user and password (not token) returns a valid ticket.
- The user and token have full permissions.
- Tried with both root and non-root users, different token IDs, and with/without privilege separation.
- Proxmox version: 8.2.4
- All attempts to authenticate with API tokens, regardless of user, permissions, or token settings.
- /var/log/pveproxy/access.log
::ffff:[clientIp] - - [date] "POST /api2/json/access/ticket HTTP/1.1" 401 13 - No relevant errors in /var/log/pveproxy/error.log.
- Token value is copied exactly, contains only letters, numbers, and dashes.
- Tried both form and JSON payloads.
- No 2FA enabled.
- Browser access to the API endpoint also returns {"data":null}.