User Management API and User Status update

Introduction

You already met DeviceToken doing integration with our platform. DeviceToken is managed by User Service. This is a service that generates DeviceTokens and provides the list of valid tokens to the incoming server for additional verification of all data that Damoov platform can receive and process.

Authentication

The UserService works along with the main Authethhication concept described in Platform Layout and Authentication

You can use the API either via user access level and manage the individual account or admin access level to manage any users from your instance, application, or company depending on the rights.

Methods

All the methods are available on API Reference page under group User management

:zap: API Reference


The method is described in the part SDK log in and API Authentication

It generates a unique DeviceToken that you store in your Database and link to your user details. The DeviceToken is a unique key that you use across all our services.

Use this method to get a user profile

Update the User profile and add details to DeviceToken that help you to identify your users in DataHub.

Use the method carefully as it completely deletes the user record and the whole set of telematics data associated with the users without options to recover it.

This method enables users to join a group by providing the unique group id as InviteCode

The method to move users between groups.

Manage user status

there are several statuses that you can manage via Update user details API

  • Activate/Deactivate user
  • Enable/Disable Tracking
  • Enable/Disable Logs
  • Enable/Disable Realtime location (High battery consumption)

To update the statuses, you must use the extended version of the UserFields in your request body.

            "UserProfile": {
                "FirstName": "",
                "LastName": "",
                "Gender": "",
                "Birthday": null,
                "MaritalStatus": null,
                "ChildrenCount": null,
                "Address": null,
                "Country": null,
                "District": null,
                "City": null,
                "Nickname": null,
                "Email": null,
                "Phone": null,
            },
            "MobileDevice": {
                "MobileUid": null,
                "DeviceModel": null,
                "OsType": null,
                "OsVersion": null,
                "SdkVersion": null,
                "AppVersion": null,
                "VirtualImei": "895239562269318"
            },
            "AccountInfo": {
                "CompanyId": "",
                "CompanyName": null,
                "ApplicationId": "",
                "ApplicationName": null,
                "InstanceId": "",
                "InstanceName": null
            },
            "UserWallets": [],
            "UserFields": [
                {
                    "ClientId": "client123",
                    "EnableLogging": false,
                    "EnableRealTimeLocation": false,
                    "EnableTracking": true,
                    "Enabled": true
                }
            ]