*User Registration

Register DeviceToken

Please make sure you have InstanceID and InstanceKey (of the user group where you want to register a new user) ready. If no, please refer to the part of account registration

Telematics parameters

User service enables managing user's telematics parameters. It can be set up during registration or changed later via Update User method.

Register a new user

POST http://user.telematicssdk.com /v1/Registration/Create

Register a new user. The method returns DeviceToken that will be placed to telematics SDK and will play a role of an identifier to link telematics data with app user. Authorization: Allow anonymous

Headers

{
  "Result": {
    "DeviceToken": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "AccessToken": {
      "Token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI1MmU4M2U2ZS00YmQxLTQzNTMtYThjMS02ZGY2YzJhMzJhM2QiLCJqdGkiOiJlZWEwMjlmMS01MGY1LTQyYTMtYTNiOS0zMTgyMGI3YjkxZjIiLCJpYXQiOjE1NzY0MDAzNTcsIkFwcGxpY2F0aW9uSWQiOiIxMDAyIiwiU2RrRW5hYmxlTG9nZ2luZyI6IkZhbHNlIiwiU2RrRW5hYmxlVHJhY2tpbmciOiJUcnVlIiwiU2RrRW5hYmxlUmVhbFRpbWVMb2NhdGlvbiI6IkZhbHNlIiwiU2RrQ2xpZW50SWQiOiIiLCJJbnN0YW5jZUlkIjoiM2MxYzhmZDctNDEzMy00MDRhLTgyZTktOTNhMDE1ZDg1MzYyIiwiSW5zdGFuY2VLZXkiOiIxYjdjYzI1Zi0zMjllLTQ0ODItOWRkMS0wYmIwN2MwYzc5NGIiLCJEZXZpY2VUb2tlbiI6IjUyZTgzZTZlLTRiZDEtNDM1My1hOGMxLTZkZjZjMmEzMmEzZCIsIkNvbXBhbnlJZCI6IjMiLCJSZWZyZXNoVG9rZW5FeHBpcmVkRGF0ZSI6IjIyLjEyLjIwMTkgODo1OTowOSIsIlJlZnJlc2hUb2tlbiI6InhacnN0MjF1SjN6cGw1Mmgybi9wUXM3eUVsYTZ6ZmthcDFWT2hnYUhOUVE9IiwibmJmIjoxNTc2NDAwMzU3LCJleHAiOjE1NzY0MDc1NTcsImlzcyI6IndlYkFwaSIsImF1ZCI6Imh0dHA6Ly9sb2NhbGhvc3Q6NTEzNzQvIn0.5z6eRrKUvI5d0hkjgrOcjPSpCRPsj12uKPkTvKBZ4hI",
      "ExpiresIn": 7200
    },
    "RefreshToken": "xZrst21uJ3zpl52h2n/pQs7yEla6zfkap1VOhgaHNQQ="
  },
  "Status": 200,
  "Title": "",
  "Errors": []
}

For transition period we are using Device Token, however it will be replaced with JWT token soon.

For the purpose of smooth transition, we recommend you to store JWT token and refresh token together with Device ID. Once we will be ready to move to JWT Token we will inform our clients respectively. Device Token will be supported over 12 month since announcement.

JWT token has a lifetime. After this period - it expires. When your JWT token is expired you should refresh your token.

We will support the old platform till November 01, 2021 and keep inform all our clients about progress and required steps.

Important: JWT Token will be used in other API Requests.

Optionally you can add user information to User Service as well as manage SDK tracking and data collection

Adding user information unlocks better experience working with DataHub. The more information you share, the more completed profile you will get in DataHub, as well as more data for portfolio categorisation.

In case if added UBI Platform as a product you have to add either phone number of email as a login and generate a password. You can create password for your users and send it via sms or email. Currently the system supports 2 types of login: phone number -> password is sent via sms; email -> password will be emailed.

{   
  "CreateAccessToken": true,  // default = true, - return jwt token in response for immediately using or use login to receive jwt
  "FirstName": "string",
  "LastName": "string",
  "Nickname": "string",
  "Phone": "string",
  "Email": "string",
  "Gender": "None", // { "None", "Male", "Female", "Other" }
  "Birthday": "2019-12-13T06:19:18.837Z",
  "MaritalStatus": "string",
  "ChildrenCount": 0,
  "Country": "string",
  "District": "string",
  "City": "string",
  "Address": "string",
  "ImageUrl": "string" // photo url (you can upload your photo later),
  "InstanceInviteCode": "string", // Registration in instance by invite code
  "UserFields": { // default = null. Will be using dafult values below
    "EnableTracking": true, // default = true - enable tracking user motion
    "EnableLogging": false; // default = false - enable logging on mobile device
    "Enabled": true, // default = true - enable telematics SDK
    "ClientId": "string", // default = null. User ID in your system
  }
}

Register multiple users

POST /v1/Registration/CreateMany

Create a bulk of users Authorization: Allow anonymous

Path Parameters

{
  "Result": {
    "Results": [
      {
        "DeviceToken": "8eedd2d1-e873-4cf4-a641-21f478c9c7a3",
         "AccessToken": {
          "Token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI1MmU4M2U2ZS00YmQxLTQzNTMtYThjMS02ZGY2YzJhMzJhM2QiLCJqdGkiOiJlZWEwMjlmMS01MGY1LTQyYTMtYTNiOS0zMTgyMGI3YjkxZjIiLCJpYXQiOjE1NzY0MDAzNTcsIkFwcGxpY2F0aW9uSWQiOiIxMDAyIiwiU2RrRW5hYmxlTG9nZ2luZyI6IkZhbHNlIiwiU2RrRW5hYmxlVHJhY2tpbmciOiJUcnVlIiwiU2RrRW5hYmxlUmVhbFRpbWVMb2NhdGlvbiI6IkZhbHNlIiwiU2RrQ2xpZW50SWQiOiIiLCJJbnN0YW5jZUlkIjoiM2MxYzhmZDctNDEzMy00MDRhLTgyZTktOTNhMDE1ZDg1MzYyIiwiSW5zdGFuY2VLZXkiOiIxYjdjYzI1Zi0zMjllLTQ0ODItOWRkMS0wYmIwN2MwYzc5NGIiLCJEZXZpY2VUb2tlbiI6IjUyZTgzZTZlLTRiZDEtNDM1My1hOGMxLTZkZjZjMmEzMmEzZCIsIkNvbXBhbnlJZCI6IjMiLCJSZWZyZXNoVG9rZW5FeHBpcmVkRGF0ZSI6IjIyLjEyLjIwMTkgODo1OTowOSIsIlJlZnJlc2hUb2tlbiI6InhacnN0MjF1SjN6cGw1Mmgybi9wUXM3eUVsYTZ6ZmthcDFWT2hnYUhOUVE9IiwibmJmIjoxNTc2NDAwMzU3LCJleHAiOjE1NzY0MDc1NTcsImlzcyI6IndlYkFwaSIsImF1ZCI6Imh0dHA6Ly9sb2NhbGhvc3Q6NTEzNzQvIn0.5z6eRrKUvI5d0hkjgrOcjPSpCRPsj12uKPkTvKBZ4hI",
          "ExpiresIn": 7200
        },
        "RefreshToken": "otCqu3EL9FSdml9jKhzq4G+hrD6AxZcgo6pUjI1mhqQ="
      },
      {
        "DeviceToken": "72466e2b-a99d-4311-92cb-d977a1eb36ea",
        "AccessToken": {
          "Token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI1MmU4M2U2ZS00YmQxLTQzNTMtYThjMS02ZGY2YzJhMzJhM2QiLCJqdGkiOiJlZWEwMjlmMS01MGY1LTQyYTMtYTNiOS0zMTgyMGI3YjkxZjIiLCJpYXQiOjE1NzY0MDAzNTcsIkFwcGxpY2F0aW9uSWQiOiIxMDAyIiwiU2RrRW5hYmxlTG9nZ2luZyI6IkZhbHNlIiwiU2RrRW5hYmxlVHJhY2tpbmciOiJUcnVlIiwiU2RrRW5hYmxlUmVhbFRpbWVMb2NhdGlvbiI6IkZhbHNlIiwiU2RrQ2xpZW50SWQiOiIiLCJJbnN0YW5jZUlkIjoiM2MxYzhmZDctNDEzMy00MDRhLTgyZTktOTNhMDE1ZDg1MzYyIiwiSW5zdGFuY2VLZXkiOiIxYjdjYzI1Zi0zMjllLTQ0ODItOWRkMS0wYmIwN2MwYzc5NGIiLCJEZXZpY2VUb2tlbiI6IjUyZTgzZTZlLTRiZDEtNDM1My1hOGMxLTZkZjZjMmEzMmEzZCIsIkNvbXBhbnlJZCI6IjMiLCJSZWZyZXNoVG9rZW5FeHBpcmVkRGF0ZSI6IjIyLjEyLjIwMTkgODo1OTowOSIsIlJlZnJlc2hUb2tlbiI6InhacnN0MjF1SjN6cGw1Mmgybi9wUXM3eUVsYTZ6ZmthcDFWT2hnYUhOUVE9IiwibmJmIjoxNTc2NDAwMzU3LCJleHAiOjE1NzY0MDc1NTcsImlzcyI6IndlYkFwaSIsImF1ZCI6Imh0dHA6Ly9sb2NhbGhvc3Q6NTEzNzQvIn0.5z6eRrKUvI5d0hkjgrOcjPSpCRPsj12uKPkTvKBZ4hI",
          "ExpiresIn": 7200
        },
        "RefreshToken": "lPHZM7PrtiFPdtGn9bhS4H5z8sFRQtmSAD6td6QkXbg="
      }
    ]
  },
  "Status": 200,
  "Title": "",
  "Errors": []
}
{
  "Quantity": 0,  // required
  "CreateAccessToken": true, // default = true
  "CustomFields": {
    "EnableTracking": true, // default = true
    "EnableLogging": false; // default = false
    "Enabled": true, // default = true
  }  
}

Refresh Token

For any actions use JWT token. You can get it after registration (if GenerateAccessToken = true), Authorization and after RefreshToken.

Using: got 401 Error => refresh token => new JWT and refresh token. Refresh token changes when Login and RefreshToken.

Refresh Token

POST https://user.telematicssdk.com/v1/RefreshToken

Authorization: Allow Anonymous

Request Body

{
  "Result": {
    "DeviceToken": "string",
    "AccessToken": {
      "Token": "jwt token",
      "ExpiresIn": 7200
    },
    "RefreshToken": "new refresh token"
  },
  "Status": 200,
  "Title": "",
  "Errors": []
}

Format of Body Request:

{
  "AccessToken": "string", // required - JWT
  "RefreshToken": "string" // required
}

Last updated