IoT Edge Connect uses the Akamai Platform to provide communication and data processing for millions of connected devices. It's a scalable, reliable, and distributed real-time publish-subscribe mechanism that organizes data into logical categories called topics.

IoT Edge Connect has two interfaces: the message queuing telemetry transport (MQTT) and HTTP interfaces. Together these create a logical system that deploys across multiple geographic jurisdictions.

  • MQTT interface. Provides an MQTT brokering service that lets you publish messages to and read messages from topics. It also provides topic-based filtering by distributing all incoming messages to users based on their subscribed topics.

  • HTTP interface. Provides an HTTP mechanism that lets you publish messages to and read messages from topics processed by the MQTT interface.

The IoT Edge Connect API provides namespace configurations for both the MQTT and HTTP interfaces. It allows you to reserve namespaces and configure them in selected geographic jurisdictions. Within a configuration, you can specify paths to topics and define authorization groups that can publish or subscribe to these topics. You create topics by publishing or subscribing to them.

Who should use this API

Use this API if you want to create your own automated mechanism to manage your namespace configurations outside of Akamai Control Center.

With these namespace configurations, your users can leverage the Akamai Platform to publish messages to and read messages from specified topics. This fully managed service for MQTT and HTTP messaging enables real-time communication between IoT devices and data centers.

API Summary

See the API's various operations for details on their request parameters and response data:

OperationMethodEndpoint
Namespace
List reserved namespacesGET/namespaces
Reserve a namespacePOST/namespaces
List all reserved namespacesGET/namespaces/‚Äčsearch
Remove a namespaceDELETE/namespaces/‚Äč{namespace}
List all namespace configurationsGET/namespaces/‚Äč{namespace}/‚Äčconfigurations
Create a namespace configurationPOST/namespaces/‚Äč{namespace}/‚Äčconfigurations
Delete a namespace configurationDELETE/namespaces/‚Äč{namespace}/‚Äčconfigurations/‚Äč{jurisdiction}
Get a namespace configurationGET/namespaces/‚Äč{namespace}/‚Äčconfigurations/‚Äč{jurisdiction}
Update a namespace configurationPUT/namespaces/‚Äč{namespace}/‚Äčconfigurations/‚Äč{jurisdiction}
List versions of a namespace configurationGET/namespaces/‚Äč{namespace}/‚Äčconfigurations/‚Äč{jurisdiction}/‚Äčversions
Create a version of a namespace configurationPOST/namespaces/‚Äč{namespace}/‚Äčconfigurations/‚Äč{jurisdiction}/‚Äčversions
List all operations for configuration versionsGET/namespaces/‚Äč{namespace}/‚Äčconfigurations/‚Äč{jurisdiction}/‚Äčversions/‚Äčactivations
Deactivate a version of a namespace configurationPUT/namespaces/‚Äč{namespace}/‚Äčconfigurations/‚Äč{jurisdiction}/‚Äčversions/‚Äčactive
Activate a version of a namespace configurationPUT/namespaces/‚Äč{namespace}/‚Äčconfigurations/‚Äč{jurisdiction}/‚Äčversions/‚Äč{version}