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.

image-20241011-134756.png

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:

  1. Create the HiveMQ Cloud REST API token, making sure to assign:

    • Full control of MQTT Credentials, Roles, Role Permissions.

    • Cluster Read and Write permissions.


  2. Save the updated token.

  3. 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