Hi,
We're integrating with the Cloudron API (v9.1.6) and found several endpoints from the documentation (https://docs.cloudron.io/api/) that return 404 or don't persist changes. Authentication is via Authorization: Bearer <token> with a valid API token (other endpoints work fine with the same token).
- PUT /api/v1/users/{userId} — 404 Not Found
- Docs: https://docs.cloudron.io/api/update-user
- Expected: Update user fields (displayName, fallbackEmail, etc.)
- Actual: Returns {"status": "Not Found", "message": "No such route"}
- Tested with both uid-xxx and bare UUID formats
- Workaround: None. fallbackEmail can only be set at user creation time.
- POST /api/v1/users/{userId}/password_reset_email — 404 Not Found
- Docs: https://docs.cloudron.io/api/send-password-reset-email
- Expected: Send password reset email to the user's fallback email
- Actual: Returns {"status": "Not Found", "message": "No such route"}
- Workaround: We use POST /api/v1/users/{userId}/password (which works) and send - the new credentials ourselves via our own email service.
- POST /api/v1/mail/{domain}/mailboxes/{name} — 204 but no effect on active field
- Docs: https://docs.cloudron.io/api/update-mailbox
- Expected: Setting active: false should disable the mailbox
- Actual: Returns 204 (success) but the active field remains true when queried back via GET
- All required fields (ownerId, ownerType, active, enablePop3, storageQuota, messagesQuota, members, membersOnly) are included in the request body
- Workaround: None. We cannot disable mailboxes via API.
Endpoints that DO work correctly:
GET /api/v1/users 
GET /api/v1/users/{userId} 
POST /api/v1/users
(create with fallbackEmail)
POST /api/v1/users/{userId}/password 
GET /api/v1/mail/{domain}/mailboxes 
GET /api/v1/mail/{domain}/mailboxes/{name} 
GET /api/v1/mail/{domain}/mailboxes/{name}/aliases 
PUT /api/v1/mail/{domain}/mailboxes/{name}/aliases 
POST /api/v1/mail/{domain}/enable 
DELETE /api/v1/mail/{domain}/mailboxes/{name} 
Could you confirm if these endpoints were removed or changed in v9.x? Is there an alternative way to:
Update a user's fallbackEmail after creation?
Send a password reset email natively?
Disable (not delete) a mailbox?
Thank you.