Info

Created 17-06-2022 by Lavinia Gheghea

Revision



Description

The API allows you to create, delete, and update  user. You can retrieve individual user as well as a list of all users.

Endpoints


GET:  /userprofiles

Parameters
Headers and Query
 Name
 Description
 Type
 API-key - required
  Authorization Token
 String(64)
 UID - required
 UID -how can be obtained
 String
 DEVICEID - required
  DEVICEID
 String
 offset
 starting record
 Integer
 limit
 how many records displayed on a page
 Integer
 OrderFieldName
 field name to order the recordset
 String
 OrderDirection
 ASC or DESC
 String
 Filter
 filter the recordset
 String
 sAction
 Action
 String
Curl example

curl -X GET "https://smartapi.smarttid.dk/userprofiles" -H "accept: */*" -H "UID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -H "DEVICEID:demo@smarttid.dk" -H "API-Key: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

Response

200 (OK) :  array of users
Response body
[
  {
    "ID": 66,
    "SystemID": "SMARTTID\\cb",
    "Name": null,
    "EMail": null,
    "Password": "********",
    "LanguageCode": "DK",
    "AllowPortalLogin": false,
    "WebRole": "User",
    "FilterType": "MatchOne",
    "TimeSheetVisible": false,
    "ApproveLevel": 1,
    "OnlyChangeIndividualWorkCalendar": false
  },
  {
    "ID": 68,
    "SystemID": "SMARTTID\\js",
    "Name": null,
    "EMail": null,
    "Password": "********",
    "LanguageCode": "DK",
    "AllowPortalLogin": false,
    "WebRole": "SuperUser",
    "FilterType": "MatchOne",
    "TimeSheetVisible": false,
    "ApproveLevel": 3,
    "OnlyChangeIndividualWorkCalendar": false
  },
  {
    "ID": 64,
    "SystemID": "SMARTTID\\jhj",
    "Name": "",
    "EMail": "",
    "Password": "********",
    "LanguageCode": "DK",
    "AllowPortalLogin": false,
    "WebRole": "User",
    "FilterType": "MatchOne",
    "TimeSheetVisible": false,
    "ApproveLevel": 3,
    "OnlyChangeIndividualWorkCalendar": false
  },
  {
    "ID": 65,
    "SystemID": "ST_VN_THY",
    "Name": "",
    "EMail": "",
    "Password": "********",
    "LanguageCode": "DK",
    "AllowPortalLogin": false,
    "WebRole": "User",
    "FilterType": "MatchOne",
    "TimeSheetVisible": false,
    "ApproveLevel": 1,
    "OnlyChangeIndividualWorkCalendar": false
  },
  {
    "ID": 50,
    "SystemID": "SMARTTID\\sc",
    "Name": "",
    "EMail": "",
    "Password": "********",
    "LanguageCode": "DK",
    "AllowPortalLogin": false,
    "WebRole": "User",
    "FilterType": "MatchOne",
    "TimeSheetVisible": false,
    "ApproveLevel": 1,
    "OnlyChangeIndividualWorkCalendar": false
  },
  {
    "ID": 59,
    "SystemID": "SMARTTID\\cp",
    "Name": "",
    "EMail": "",
    "Password": "********",
    "LanguageCode": "DK",
    "AllowPortalLogin": false,
    "WebRole": "User",
    "FilterType": "MatchOne",
    "TimeSheetVisible": false,
    "ApproveLevel": 1,
    "OnlyChangeIndividualWorkCalendar": false
  },
  {
    "ID": 60,
    "SystemID": "SMARTTID\\mmb",
    "Name": "",
    "EMail": "",
    "Password": "********",
    "LanguageCode": "DK",
    "AllowPortalLogin": false,
    "WebRole": "User",
    "FilterType": "MatchOne",
    "TimeSheetVisible": false,
    "ApproveLevel": 3,
    "OnlyChangeIndividualWorkCalendar": false
  },
  {
    "ID": 62,
    "SystemID": "SMARTTID\\kws",
    "Name": "",
    "EMail": "",
    "Password": "********",
    "LanguageCode": "DK",
    "AllowPortalLogin": false,
    "WebRole": "User",
    "FilterType": "MatchOne",
    "TimeSheetVisible": false,
    "ApproveLevel": 1,
    "OnlyChangeIndividualWorkCalendar": true
  },
]


Response headers:
content-encoding: gzip 
 content-length: 238 
 content-type: application/json; charset=utf-8 
 date: Mon, 24 Aug 2020 08:01:23 GMT 
 server: Microsoft-IIS/10.0 
 vary: Accept-Encoding 
 x-pagination: {"totalCount":4,"totalFiltered":4,"Offset":0,"Limit":4,"Returned":4} 
 x-powered-by: ASP.NET 

400 (ERROR) : Error message

Response Body
Error message


GET{id} : /userprofiles/{id}  


Parameters
 Name
 Description
 Type
 API-key - required
  Authorization Token 
 String(64)
 UID - required
UID -how can be obtained
 String
 DEVICEID - required
  DEVICEID
 String
 id- required
 ID of user
 Integer
Curl example

curl -X GET "https://smartapi.smarttid.dk/userprofiles/id" -H "accept: */*" -H "UID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -H "DEVICEID:demo@smarttid.dk" -H "API-Key: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

Response

200 (OK) : the user

Response Body
[  { "ID": 66, "SystemID": "SMARTTID\\cb", "Name": null, "EMail": null, "Password": "********", "LanguageCode": "DK", "AllowPortalLogin": false, "WebRole": "User", "FilterType": "MatchOne", "TimeSheetVisible": false, "ApproveLevel": 1, "OnlyChangeIndividualWorkCalendar": false } ]


Response Headers
content-encoding: gzip
  content-length: 175
  content-type: application/json; charset=utf-8 
 date: Mon, 24 Aug 2020 08:39:57 GMT 
 server: Microsoft-IIS/10.0 
 vary: Accept-Encoding  x-powered-by: ASP.NET 

400 (ERROR) : Error message

Response Body
Error message


POST: /userprofiles


Parameters
 Name
 Description
 Type
 API-key - required
  Authorization Token  
 String(64)
 UID - required
 UID -how can be obtained
 String
 DEVICEID - required
  DEVICEID
 String

Request body
{
"sSystemID": "string",
  "sName": "string",
  "sEMail": "string",
  "sPassword": "string",
  "sLanguageCode": "string",
  "bAllowPortalLogin": true,
  "sWebRole": "string",
  "sFilterType": "string",
  "bTimeSheetVisible": true,
  "bApproveLevel": 0,
  "bSQLAccess": true,
  "bOnlyChangeIndividualWorkCalendar": true
}

Curl example
curl -X POST "https://smartapi.smarttid.dk/userprofiles" -H "accept: */*" -H "UID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -H "DEVICEID:demo@smarttid.dk" -H "API-Key: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" -H "Content-Type: application/json-patch+json" -d { \"sSystemID\": \"string\",  \"sName\": \"string\",  \"sEMail\": \"string\",  \"sPassword\": \"string\",  \"sLanguageCode\": \"string\",  \"bAllowPortalLogin\": true,  \"sWebRole\": \"string\",  \"sFilterType\": \"string\",  \"bTimeSheetVisible\": true,  \"bApproveLevel\": 0,  \"bSQLAccess\": true,  \"bOnlyChangeIndividualWorkCalendar\": true}"

Response

200 (OK) : The ID of the new user

Response Body
[
 {
  "ID": 30
 }
]
Response Headers
content-encoding: gzip 
 content-length: 138 
 content-type: application/json; charset=utf-8 
 date: Mon, 24 Aug 2020 09:24:44 GMT 
 server: Microsoft-IIS/10.0 
 vary: Accept-Encoding  x-powered-by: ASP.NET

400 (ERROR) : Error message

Response Body
Error message


PUT{id}: /userprofiles/{id}


Parameters
 Name
 Description
 Type
 API-key - required
  Authorization Token  
 String(64)
 UID - required
UID -how can be obtained
 String
 DEVICEID - required
 DEVICEID
 String
 id- required
 ID of user
 Integer

Request body

{
"sSystemID": "string",
  "sName": "string",
  "sEMail": "string",
  "sPassword": "string",
  "sLanguageCode": "string",
  "bAllowPortalLogin": true,
  "sWebRole": "string",
  "sFilterType": "string",
  "bTimeSheetVisible": true,
  "bApproveLevel": 0,
  "bSQLAccess": true,
  "bOnlyChangeIndividualWorkCalendar": true 
}

Curl example

curl -X PUT "https://smartapi.smarttid.dk/userprofiles/id" -H "accept: */*" -H "UID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -H "DEVICEID:demo@smarttid.dk" -H "API-Key: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" -H "Content-Type: application/json-patch+json" -d { \"sSystemID\": \"string\",  \"sName\": \"string\",  \"sEMail\": \"string\",  \"sPassword\": \"string\",  \"sLanguageCode\": \"string\",  \"bAllowPortalLogin\": true,  \"sWebRole\": \"string\",  \"sFilterType\": \"string\",  \"bTimeSheetVisible\": true,  \"bApproveLevel\": 0,  \"bSQLAccess\": true,  \"bOnlyChangeIndividualWorkCalendar\": true}"

Response

200 (OK) : success

400 (ERROR) : Error message

Response Body
Error message


DELETE{id}: /userprofiles/{id}


Parameters
 Name
 Description
 Type
 API-key - required
  Authorization Token  
 String(64)
 UID - required
UID -how can be obtained
 String
 DEVICEID - required
 DEVICEID
 String
 id- required
 ID of user
 Integer

Curl example

curl -X DELETE "https://smartapi.smarttid.dk/userprofiles/id" -H "accept: */*" -H "UID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -H "DEVICEID:demo@smarttid.dk" -H "API-Key: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" 

Response
200 (OK) :Success


400 (ERROR) : Bad request

Response Body
Error message

Response headers

content-length: 84 
 content-type: text/plain; charset=utf-8 
 date: Tue, 25 Aug 2020 08:35:21 GMT 
 server: Microsoft-IIS/10.0 
 x-powered-by: ASP.NET


SQL Procedure 


sp_UserProfile

Object

UserProfile
 Name
 Description
 Type
sSystemID
User System ID
 String
sName
 User Name
 String
 sEMail
 User EMail
String
 sPassword
 Password
 String
 sLanguageCode
 Language Code
String
 bAllowPortalLogin
 Allow Portal Login
bool 
 sWebRole
 Role - User, TeamLeader, SuperUser, Viewer
 string
sFilterType
 Filter Type
 string
 bTimeSheetVisible
 TimeSheet Visible
 bool
 bApproveLevel
 Approve Level
Number- Integer
 bSQLAccess
 SQL Access
 bool
 bOnlyChangeIndividualWorkCalendar
 Only Change Individual WorkCalendar
 bool