Skip to main content

Hexnode UEM

Driver: hexnode

Connects GEM to a Hexnode Unified Endpoint Management tenant over its HTTPS REST API. Intended for reading the managed-device inventory of a site's tablets and phones — device details, installed applications, last known locations, and applied policies — and for maintaining device groups.

One GEM device represents one Hexnode tenant. The driver creates no zones and implements no zone verbs; everything is done with explicit commands.

The API helper is not yet implemented

The internal hexnodeApiCall helper that performs the HTTP round-trip is currently a stub. No request reaches Hexnode, so every command below returns undefined rather than data, and the log shows hexnode: api call not implemented. The command surface, routing, id checks and connection validation are in place — the transport is what remains. Do not build macros or automations against this driver until the helper ships.

Prerequisites​

  • A Hexnode tenant with the devices enrolled.
  • An API key generated in the Hexnode admin console (Admin → API).
  • The tenant's API base URL, of the form https://yourcompany.hexnodemdm.com/api/v1/.
  • Outbound HTTPS from the GEM server.

Setup​

  1. Open Devices (System → Devices), choose Add Device, and pick the driver hexnode.
  2. Set Hexnode API URL to the tenant API root. A trailing slash is optional — the driver adds one if it is missing.
  3. Set API Key to the key generated in the Hexnode console. It is stored encrypted.
  4. Enable and save the device.

Both attributes are required. If either is missing, or holds only spaces, the driver logs hexnode missing api_url or hexnode missing api_key and stops before connecting. Spaces around the URL are ignored.

Attributes​

Device​

AttributeRequiredDescription
api_urlyesTenant API base URL, e.g. https://yourcompany.hexnodemdm.com/api/v1/.
api_keyyesHexnode API key. Stored encrypted.

Commands​

CommandArgsDescription
list_devices—List every managed device on the tenant.
get_devicedevice_idDetails for one managed device.
get_device_applicationsdevice_idApplications installed on a device.
get_device_locationsdevice_idReported locations for a device.
get_device_policiesdevice_idPolicies applied to a device.
list_device_groups—List device groups.
create_device_group—Create a device group.
get_device_groupgroup_idDetails for one device group.
update_device_groupgroup_idUpdate a device group.
delete_device_groupgroup_idDelete a device group.
add_group_devicegroup_idAdd a device to a group.
remove_group_devicegroup_idRemove a device from a group.

device_id and group_id go into the request path. A command whose id is missing, blank, an unfilled [token], or . / .. answers an error such as hexnode get_device: device_id required and sends nothing. Spaces around an id are ignored, and any /, ? or # in it is encoded so it cannot address a different resource.

add_group_device and remove_group_device take only the group id today; they have no argument naming which device to add or remove.

Troubleshooting​

SymptomCheck
Every command returns nothing; log shows hexnode: api call not implementedExpected today — the hexnodeApiCall helper is stubbed and performs no request.
A command answers … device_id required or … group_id requiredThe id was missing or blank. Pass the id from list_devices or list_device_groups.
Log shows hexnode missing api_url or hexnode missing api_keySet both attributes on the device and save. The URL must point at the tenant's /api/v1/ root.
Log shows hexnode error: …The API rejected the request. Confirm the key is still valid in the Hexnode console and that the GEM host has outbound HTTPS.

See also​

  • Devices — adding the device and reading its log.
  • Commands — running commands by hand.