REST API overview

User Management

See also: Managing Users

Create a user

See also: Signing up

Create a user and obtain the access token

See also: Pseudo Users
  • /api/apps/{appID}/users
  • POST
  • Creating a new user in the current application and obtain an access token of the user. This API is for supporting a pseudo user (i.e. a user without username and password).

Delete a user

See also: Deleting a User

Manipulate user data

Retrieve user data

Modify user data

Get the country

Get the display name

Get the locale

Manipulate the email address

Get the email address

Update the email address

Remove the email address

Manipulate the phone number

Get the phone number

Update the phone number

Remove the phone number

Manage user verification

See also: Signing up

Manage email address verification

Resend the verification email

Get the verification code

Verify the email address

Manage phone number verification

Resend the SMS with the verification code

Reset the verification code

Get the verification code

Verify the phone number

Manage OAuth2 credentials

See also: Logging in

Request a new token

Manage password

Change the password

Request for password reset with an email

Request for password reset with a chosen notification method

Complete the password reset by sending a PIN code

Manage user status

See also: Disabling Users

Get the user status

Change the user status

Manage social integration

Facebook integration

Request a new token

Link with the Facebook account

Unlink from the Facebook account

Twitter integration

Request a new token

Link with the Twitter account

Unlink from the Twitter account

QQ integration

Request a new token

Link with QQ account

Unlink from QQ account

Group Management

See also: Managing Groups

Create a group

Create a group with a given groupID

Get the group information

Delete a group

Get a list of groups filtered by a user

Update a group name

Update a group owner

Manage group members

Add a member

Remove a member

Get a list of group members

Thing Management

Register a thing

Register a thing and obtain access token

Check if the thing is registered

Get the thing information

Update the thing information

Unregister a thing

Query for things

Manage OAuth2 credentials

Request a new token

Manage thing status (enable/disable)

Get the thing status

Change the thing status (enable/disable)

Manage thing ownership

Add new ownership

Password flow (add the ownership with a thing password)

Add a user or group as the owner

Verification flow (add the ownership with a code validation)

Start the verification flow for adding a user as the owner

Start the verification flow for adding a group as the owner

Complete the verification flow by validating the code

(Old) simple flow (add the ownership without any validation)

Add a user as the owner

Add a group as the owner

Verify ownership

Verify if a user is an owner

Verify if a group is an owner

Remove ownership

Remove a user from the owner

Remove a group from the owner

Retrieve all thing owners

Data Management

See also: Managing Data

Manage Buckets

Application Scope

Retrieve the bucket information

Verify the bucket existence

Delete a bucket

Group Scope

Retrieve the bucket information

Verify the bucket existence

Delete a bucket

User Scope

Retrieve the bucket information

Verify the bucket existence

Delete a bucket

Thing Scope

Retrieve the bucket information

Verify the bucket existence

Delete a bucket

Manage Objects

Application Scope

Create an object

Retrieve an object

Fully update an object / Create a new object with an ID

Partially update an object

Delete an object

Check the object existence

Query for objects

Retrieve an object body

Add or replace an object body

Verify the object body existence

Delete an object body

Move an object body

Publish an object body

Start uploading an object body

Get the upload metadata

Upload the given object data

Set the object body upload status to committed

Set the object body upload status to cancelled

Group Scope

Create an object

Retrieve an object

Fully update an object / Create a new object with an ID

Partially update an object

Delete an object

Check an object existence

Query for objects

Retrieve an object body

Add or replace an object body

Verify an object body existence

Delete an object body

Move an object body

Publish an object body

Start uploading an object body

Get the upload metadata

Upload the given object data

Set the object body upload status to committed

Set the object body upload status to cancelled

User Scope

Create an object

Retrieve an object

Fully update an object / Create a new object with an ID

Partially update an object

Delete an object

Check an object existence

Query for objects

Retrieve an object body

Add or replace an object body

Verify an object body existence

Delete an object body

Move an object body

Publish an object body

Start uploading an object body

Get the upload metadata

Upload the given object data

Set the object body upload status to committed

Set the object body upload status to cancelled

Thing Scope

Create an object

Retrieve an object

Fully update an object / Create a new object with an ID

Partially update an object

Delete an object

Check an object existence

Query for objects

Retrieve an object body

Add or replace an object body

Verify an object body existence

Delete an object body

Publish an object body

Start uploading an object body

Get the upload metadata

Upload the given object data

Set the object body upload status to committed

Set the object body upload status to cancelled

ACL Management

Set an ACL on Scope

Application Scope

Retrieve the current ACL entries

Verify the permission

Grant the permission

Revoke the permission

Group Scope

Retrieve the current ACL entries

Verify the permission

Grant the permission

Revoke the permission

User Scope

Retrieve the current ACL entries

Retrieve all ACL entries

Retrieve ACL entries with the specified ACL verb

Verify the permission

Verify if the specified user has the permission

Verify if the specified group has the permission

Verify if the specified thing has the permission

Grant the permission

Grant the permission to the specified user

Grant the permission to the specified group

Grant the permission to the specified thing

Revoke the permission

Revoke the permission from the specified user

Revoke the permission from the specified group

Revoke the permission from the specified thing

Thing Scope

Retrieve the current ACL entries

Retrieve all ACL entries

Retrieve ACL entries with the specified ACL verb

Verify the permission

Verify if the specified user has the permission

Verify if the specified group has the permission

Verify if the specified thing has the permission

Grant the permission

Grant the permission to the specified user

Grant the permission to the specified group

Grant the permission to the specified thing

Revoke the permission

Revoke the permission from the specified user

Revoke the permission from the specified group

Revoke the permission from the specified thing

Set an ACL on Bucket

Application Scope

Retrieve the current ACL entries

Verify the permission

Grant the permission

Revoke the permission

Group Scope

Retrieve the current ACL entries

Verify the permission

Grant the permission

Revoke the permission

User Scope

Retrieve the current ACL entries

Retrieve all ACL entries

Retrieve ACL entries with the specified ACL verb

Verify the permission

Verify if the specified user has the permission

Verify if the specified group has the permission

Verify if the specified thing has the permission

Grant the permission

Grant the permission to the specified user

Grant the permission to the specified group

Grant the permission to the specified thing

Revoke the permission

Revoke the permission from the specified user

Revoke the permission from the specified group

Revoke the permission from the specified thing

Thing Scope

Retrieve the current ACL entries

Retrieve all ACL entries

Retrieve ACL entries with the specified ACL verb

Verify the permission

Verify if the specified user has the permission

Verify if the specified group has the permission

Verify if the specified thing has the permission

Grant the permission

Grant the permission to the specified user

Grant the permission to the specified group

Grant the permission to the specified thing

Revoke the permission

Revoke the permission from the specified user

Revoke the permission from the specified group

Revoke the permission from the specified thing

Set an ACL on Object

Application Scope

Retrieve the current ACL entries

Verify the permission

Grant the permission

Revoke the permission

Group Scope

Retrieve the current ACL entries

Verify the permission

Grant the permission

Revoke the permission

User Scope

Retrieve the current ACL entries

Retrieve all ACL entries

Retrieve ACL entries with the specified ACL verb

Verify the permission

Verify if the specified user has the permission

Verify if the specified group has the permission

Verify if the specified thing has the permission

Grant the permission

Grant the permission to the specified user

Grant the permission to the specified group

Grant the permission to the specified thing

Revoke the permission

Revoke the permission from the specified user

Revoke the permission from the specified group

Revoke the permission from the specified thing

Thing Scope

Retrieve the current ACL entries

Retrieve all ACL entries

Retrieve ACL entries with the specified ACL verb

Verify the permission

Verify if the specified user has the permission

Verify if the specified group has the permission

Verify if the specified thing has the permission

Grant the permission

Grant the permission to the specified user

Grant the permission to the specified group

Grant the permission to the specified thing

Revoke the permission

Revoke the permission from the specified user

Revoke the permission from the specified group

Revoke the permission from the specified thing

Set an ACL on Topic

Application Scope

Retrieve the current ACL entries

Verify the permission

Grant the permission

Revoke the permission

Group Scope

Retrieve the current ACL entries

Verify the permission

Grant the permission

Revoke the permission

User Scope

Retrieve the current ACL entries

Retrieve all ACL entries

Retrieve ACL entries with the specified ACL verb

Verify the permission

Verify if the specified user has the permission

Verify if the specified group has the permission

Verify if the specified thing has the permission

Grant the permission

Grant the permission to the specified user

Grant the permission to the specified group

Grant the permission to the specified thing

Revoke the permission

Revoke the permission from the specified user

Revoke the permission from the specified group

Revoke the permission from the specified Thing

Thing Scope

Retrieve the current ACL entries

Retrieve all ACL entries

Retrieve ACL entries with the specified ACL verb

Verify the permission

Verify if the specified user has the permission

Verify if the specified group has the permission

Verify if the specified thing has the permission

Grant the permission

Grant the permission to the specified user

Grant the permission to the specified group

Grant the permission to the specified thing

Revoke the permission

Revoke the permission from the specified user

Revoke the permission from the specified group

Revoke the permission from the specified Thing

Analytics Management

Post event data

Retrieve Flex Analytics results

Notification Management

Manage the user/thing device installation

Register a new device

Retrieve the registered installations

Check the registered installation by the installation ID

Delete the installation

Get the MQTT endpoint information

Leverage "Push to App" notification

Leverage bucket notification

Application Scope

Subscribe the current user to the bucket

Subscribe the specified user to the bucket

Check if the specified user is subscribed to the bucket

Unsubscribe the specified user from the bucket

Subscribe the current thing to the bucket

Subscribe the specified thing to the bucket

Check if the specified thing is subscribed to the bucket

Unsubscribe the specified thing from the bucket

Group Scope

Subscribe the current user to the bucket

Subscribe the specified user to the bucket

Check if the specified user is subscribed to the bucket

Unsubscribe the specified user from the bucket

Subscribe the current thing to the bucket

Subscribe the specified thing to the bucket

Check if the specified thing is subscribed to the bucket

Unsubscribe the specified thing from the bucket

User Scope

Subscribe the current user to the bucket

Subscribe the specified user to the bucket

Check if the specified user is subscribed to the bucket

Unsubscribe the specified user from the bucket

Subscribe the current thing to the bucket

Subscribe the specified thing to the bucket

Check if the specified thing is subscribed to the bucket

Unsubscribe the specified thing from the bucket

Thing Scope

Subscribe the current user to the bucket

Subscribe the specified user to the bucket

Check if the specified user is subscribed to the bucket

Unsubscribe the specified user from the bucket

Subscribe the current thing to the bucket

Subscribe the specified thing to the bucket

Check if the specified thing is subscribed to the bucket

Unsubscribe the specified thing from the bucket

Leverage "Push to Users" notification

Application Scope

Manage topics

Get a list of available topics

  • /api/apps/{appID}/topics
  • GET
  • Obtain the list of the available topics in the application, user, group or thing being accessed

Create a new topic

Check the topic existence

Check the topic existence (currently same as HEAD method)

Delete the topic

Subscribe/unsubscribe topics

Subscribe the current user to the topic

Subscribe the specified user to the topic

Check if the specified user is subscribed to the topic

Check if the specified user is subscribed to the topic (currently same as HEAD method)

Unsubscribe the specified user from the topic

Subscribe the current thing to the topic

Subscribe the specified thing to the topic

Check if the specified thing is subscribed to the topic

Check if the specified thing is subscribed to the topic (currently same as HEAD method)

Unsubscribe the specified thing from the topic

Send messages

Send a push message to the current topic

Group Scope

Manage topics

Get a list of available topics

Create a new topic

Check the topic existence

Check the topic existence (currently same as HEAD method)

Delete the topic

Subscribe/unsubscribe topics

Subscribe the current user to the topic

Subscribe the specified user to the topic

Check if the specified user is subscribed to the topic

Check if the specified user is subscribed to the topic (currently same as HEAD method)

Unsubscribe the specified user from the topic

Subscribe the current thing to the topic

Subscribe the specified thing to the topic

Check if the specified thing is subscribed to the topic

Check if the specified thing is subscribed to the topic (currently same as HEAD method)

Unsubscribe the specified thing from the topic

Send messages

Send a push message to the current topic

User Scope

Manage topics

Get a list of available topics

Create a new topic

Check the topic existence

Check the topic existence (currently same as HEAD method)

Delete the topic

Subscribe/unsubscribe topics

Subscribe the current user to the topic

Subscribe the specified user to the topic

Check if the specified user is subscribed to the topic

Check if the specified user is subscribed to the topic (currently same as HEAD method)

Unsubscribe the specified user from the topic

Subscribe the current thing to the topic

Subscribe the specified thing to the topic

Check if the specified thing is subscribed to the topic

Check if the specified thing is subscribed to the topic (currently same as HEAD method)

Unsubscribe the specified thing from the topic

Send messages

Send a push message to the current topic

Thing Scope

Manage topics

Get a list of available topics

Create a new topic

Check the topic existence

Check the topic existence (currently same as HEAD method)

Delete the topic

Subscribe/unsubscribe topics

Subscribe the current user to the topic

Subscribe the specified user to the topic

Check if the specified user is subscribed to the topic

Check if the specified user is subscribed to the topic (currently same as HEAD method)

Unsubscribe the specified user from the topic

Subscribe the current thing to the topic

Subscribe the specified thing to the topic

Check if the specified thing is subscribed to the topic

Check if the specified thing is subscribed to the topic (currently same as HEAD method)

Unsubscribe the specified thing from the topic

Send messages

Send a push message to the current topic

Leverage "Direct Push" notification

Send mesasges

Server Extension

Execute the server code

Execute the current version