Troubleshooting HiveMQ Cloud REST API
Problem
When using a HiveMQ Cloud REST API token with full control over MQTT Credentials, Roles, and Role Permissions, you may still receive an error when attempting to access the /mqtt/roles
API endpoint.
Solution
To resolve this issue, ensure that your REST API token not only has full control over MQTT Credentials, Roles, and Role Permissions but also includes the Cluster permissions.
To fetch the data of roles, permissions and MQTT credentials only Cluster Read permissions are required.
To modify the REST API token should also include Cluster Write permissions are needed, specifically following API requests.
PUT /api/v2/orgs/{orgId}/clusters/{clusterId}/mqtt/permissions/{id}
PUT /api/v2/orgs/{orgId}/clusters/{clusterId}/mqtt/roles/{roleId}
Follow these steps:
Create the HiveMQ Cloud REST API token, making sure to assign:
Full control of MQTT Credentials, Roles, Role Permissions.
Cluster Read and Write permissions.
Save the updated token.
Test your API call against the
/mqtt/roles
endpoint again. The inclusion of the Cluster Read permission should resolve the error.
💡 Important: The Cluster permissions are required for accessing the /mqtt/roles
endpoint, even if MQTT related permissions are already in place.
Related articles
-
Expose the HiveMQ Control Center and Rest API using Ingress (HiveMQ Knowledge Base - Self Managed Offering)