Introduction

This API reference guide is prepared for Application Development Enablement Platform (ADEP) developers. It describes the implementation and use of the northbound IMPACT IoT REST APIs.

Note: This document only provides the APIs that are supported by IMPACT IoT application at the highlevel. For more technical details of the APIs, refer to Application APIs Swagger documentation, which is available with IMPACT IoT documentation set.

The Call flow for accessing devices shows the generic call flow for the application developers to access device information.



Figure 1. Call flow for accessing devices

The following processes can be executed by the ADEP developers by calling the respective APIs:

  • Registration

  • Notification

    • Callback notification for resources and lifecycle events
  • Endpoint

    • Delete endpoint
    • List all endpoints
    • List endpoints for a gateway
    • Add endpoint
    • Add gateway
    • Delete gateway
    • Get endpoint details
  • Subscription
    • Lifecycle events
    • Resource events
  • Resource
    • Write resource
    • Read resource
    • Execute resource
    • Delete resource
  • Token

    • Create tokens (both generic and MQTT tokens)
    • Get tokens
    • Delete tokens
  • Onboard adaptation layer

Note:

To use the IMPACT IoT APIs, the user must be created and registered using the Registration API system. Operations that an user can perform with the IMPACT IoT APIs is controlled by role specific Access Control Level (ACL) granted to the user in the system. For the these APIs to work, the user must have device.read and device.manage ACLs assigned. Following list describes the operations that can be performed with device.read and device.manage ACLs:

  • device.read: For read resource operation or any other operation such as, delete endpoint or list all endpoints.
  • device.manage: For write/execute/delete resource operation and add/delete device operation.
For more information on the following topics, see IMPACT IoT Console Guide:
  • Access levels for each role
  • Permissions granted to the default roles
Note: If customers/services team come across HttpMediaTypeNotSupportedException while using any of the /m2m APIs, pass the content type as application/json; charset=UTF-8 from your rest client to avoid the problem.