Unified Kiosk Remote Management API: API Endpoints
The Unified Kiosk Remote Management API is available for all subscribers. It is designed to allow programmatic access to devices and other relevant information within your account.
Security
The API can be accessed using your unique API Key. Your API Key should NEVER be shared, if compromised you can delete your API Key in the management console and generate a new one.
Base Url: https://kioskapi.azure-api.net/klr/api/
Headers:
api-key = myapikey
Where do I find my API Key?
You can find this via More > API Keys > Click Add
GET
/api/device - get all devices on account
/api/device?identifier=b60e7c95-d160-439d-8dc6-4c7e1648bd1a - get device on account using device identifier
Example url: https://kioskapi.azure-api.net/klr/api/device
Sample Response:
PATCH
/api/device?identifier=b60e7c95-d160-439d-8dc6-4c7e1648bd1a - update a single device using device identifier
Sample request body:
When using PATCH only the supplied values are updated. If for example you supply no value for the device name, it will not change. Include json in the request body as per examples below:
GET
/api/deviceconfiguration - get all configurations on account
/api/deviceconfiguration?id=1 - get configuration on account using configuration id
Sample Response:
GET
/api/push?identifier=b60e7c95-d160-439d-8dc6-4c7e1648bd1a&type=1 - send push/device action to device identifier and push type 1
Sample Response
Valid Push Types
Request Status from Device (heartbeat to server, battery, screen state etc...)
Restart Application
Take App Screenshot/device screenshot (Kiosk Browser)
Open WiFi Settings
Identify device (show message box)
Download configuration
Screen Off
Screen On
Open Kiosk Browser/Launcher Settings
Open TeamViewer QuickSupport or TeamViewer Host (if installed)
Open Date & Time Settings
Locate device with sound
Upload diagnostic logs (if enabled)
Clear app data (Kiosk Launcher)
Reload Home Page (Kiosk Browser)
Clear WebView Cache and reload Kiosk Url (Kiosk Browser)
Clear WebView Cookies and reload Kiosk Url (Kiosk Browser)
Clear WebView Forms and reload Kiosk Url (Kiosk Browser)
Clear WebView Cache, Cookies & Forms and reload Kiosk Url (Kiosk Browser)
Clear WebView HTML5 WebStorage (Kiosk Browser)
Execute JavaScript kbRemoteFunction() on device (Kiosk Browser)
201. Reboot device
202. Update Kiosk Browser/Launcher to latest version
203. Update Kiosk Browser/Launcher to beta version
204. Set Kiosk Browser/Launcher as the default launcher
GET
/api/fileset - get all file sets on account
/api/fileset?id=24 - get file set on account using it's unique id
Example url: https://kioskapi.azure-api.net/klr/api/fileset
Sample Response:
PATCH
/api/fileset?id=24 - update a single file set using it's unique id
Sample request body:
When using PATCH only the supplied values are updated. If for example you supply no value for the file set name, it will not change. Include json in the request body as per examples below:
GET
/api/filesetfile?id=24 - gets all files in the file set using it's unique id
Example url: https://kioskapi.azure-api.net/klr/api/filesetfile?id=24
Sample Response:
DELETE
/api/filesetfile?id=24 - deletes a specified file from the file set using it's unique id
Example url: https://kioskapi.azure-api.net/klr/api/filesetfile?id=24
Sample request body:
Include json in the request body as per examples below:
POST
/api/filesetfile?id=24 - upload a single file to the file set using it's unique id
Sample request body:
Please supply a single file as part of the form body as well as the following parameters as form data:
Path: this should be the folder path and should not include the name of the file. i.e. /localcontent/. If the folder does not exist it will automatically get created.
Whenever deleting a file or uploading a new file the "awaiting deployment" property is automatically set to true. You must deploy the changes by making a request (PATCH) to the File Set Endpoint for the specific File Set.
Security
The API can be accessed using your unique API Key. Your API Key should NEVER be shared, if compromised you can delete your API Key in the management console and generate a new one.
Request
Base Url: https://kioskapi.azure-api.net/klr/api/
Headers:
api-key = myapikey
Where do I find my API Key?
You can find this via More > API Keys > Click Add
Device Endpoint
GET
/api/device - get all devices on account
/api/device?identifier=b60e7c95-d160-439d-8dc6-4c7e1648bd1a - get device on account using device identifier
Example url: https://kioskapi.azure-api.net/klr/api/device
Sample Response:
[
{
"identifier": "e4fc83bf-d29b-4789-826a-4f9f8a21b2f0",
"name": "Emulator 7.1.1",
"serial": "EMULATOR30X8X4X0",
"androidVersion": "7.1.1",
"brand": "google",
"model": "Android SDK built for x86",
"kioskVersion": "1.4.2 (Build 127)",
"kioskPackageName": "com.procoit.kiosklauncher",
"build": 127,
"buildNumber": "NYC",
"timezone": "Europe/London",
"provisioned": true,
"systemUpdatePending": false,
"wiFiNetwork": "<unknown ssid>",
"macAddress": "",
"imei": "358240051111110",
"screenOn": true,
"defaultLauncher": "com.procoit.kiosklauncher",
"simSerial": "89014103211118510720",
"simOperator": "Android",
"permissionsGranted": true,
"batteryLevel": 100,
"isCharging": true,
"lastSeen": "2021-09-01T08:43:56.1757277",
"registered": "0001-01-01T00:00:00",
"latitude": 0.000000000,
"longitude": 0.000000000,
"tags": "cat,tag1",
"online": false,
"applicationScreenshot": ""
},
{
"identifier": "cdd7344d-731c-4bf1-8c50-a89801ce8949",
"name": "Nokia 7 Plus",
"serial": "B2NGAA9832614974",
"androidVersion": "10",
"brand": "Nokia",
"model": "Nokia 7 plus",
"kioskVersion": "1.4.6 (Build 131)",
"kioskPackageName": "com.procoit.kiosklauncher",
"build": 131,
"buildNumber": "00WW_4_15N",
"timezone": "Europe/London",
"provisioned": true,
"systemUpdatePending": false,
"wiFiNetwork": "Droid",
"macAddress": "00:00:00:00:00",
"imei": "000000000000",
"screenOn": true,
"defaultLauncher": "com.procoit.kiosklauncher",
"simSerial": "",
"simOperator": "",
"permissionsGranted": true,
"batteryLevel": 25,
"isCharging": false,
"lastSeen": "2021-09-08T10:33:51.7061598",
"registered": "2021-08-26T07:16:11.5010442",
"latitude": 0.00,
"longitude": 0.00,
"tags": null,
"online": false,
"applicationScreenshot": ""
}
}
PATCH
/api/device?identifier=b60e7c95-d160-439d-8dc6-4c7e1648bd1a - update a single device using device identifier
Sample request body:
When using PATCH only the supplied values are updated. If for example you supply no value for the device name, it will not change. Include json in the request body as per examples below:
{
"configurationid": 4688,
"name": "My Device Name"
}
DeviceConfiguration Endpoint
GET
/api/deviceconfiguration - get all configurations on account
/api/deviceconfiguration?id=1 - get configuration on account using configuration id
Sample Response:
[
{
"configurationID": 1,
"name": "First Configuration",
"lastModified": "2022-07-11T08:52:40.5432508",
"revision": 94,
"kioskType": 1
},
{
"configurationID": 2,
"name": "Second Configuration",
"lastModified": "2022-04-13T10:57:19.3491193",
"revision": 66,
"kioskType": 2
}
]
Push Endpoint
GET
/api/push?identifier=b60e7c95-d160-439d-8dc6-4c7e1648bd1a&type=1 - send push/device action to device identifier and push type 1
Sample Response
{
"success":true,
"message":"Push sent"
}
Valid Push Types
Request Status from Device (heartbeat to server, battery, screen state etc...)
Restart Application
Take App Screenshot/device screenshot (Kiosk Browser)
Open WiFi Settings
Identify device (show message box)
Download configuration
Screen Off
Screen On
Open Kiosk Browser/Launcher Settings
Open TeamViewer QuickSupport or TeamViewer Host (if installed)
Open Date & Time Settings
Locate device with sound
Upload diagnostic logs (if enabled)
Clear app data (Kiosk Launcher)
Reload Home Page (Kiosk Browser)
Clear WebView Cache and reload Kiosk Url (Kiosk Browser)
Clear WebView Cookies and reload Kiosk Url (Kiosk Browser)
Clear WebView Forms and reload Kiosk Url (Kiosk Browser)
Clear WebView Cache, Cookies & Forms and reload Kiosk Url (Kiosk Browser)
Clear WebView HTML5 WebStorage (Kiosk Browser)
Execute JavaScript kbRemoteFunction() on device (Kiosk Browser)
201. Reboot device
202. Update Kiosk Browser/Launcher to latest version
203. Update Kiosk Browser/Launcher to beta version
204. Set Kiosk Browser/Launcher as the default launcher
File Set Endpoint
GET
/api/fileset - get all file sets on account
/api/fileset?id=24 - get file set on account using it's unique id
Example url: https://kioskapi.azure-api.net/klr/api/fileset
Sample Response:
[
{
"fileSetID": 23,
"name": "local",
"lastModified": "2024-11-20T13:01:10.7376213",
"awaitingDeployment": false,
"assignments": 0
},
{
"fileSetID": 24,
"name": "test file set",
"lastModified": "2024-11-21T11:22:45.0756963",
"awaitingDeployment": true,
"assignments": 1
}
]
PATCH
/api/fileset?id=24 - update a single file set using it's unique id
Sample request body:
When using PATCH only the supplied values are updated. If for example you supply no value for the file set name, it will not change. Include json in the request body as per examples below:
{
"deploychanges": true,
"name": "test file set"
}
File Set File Endpoint
GET
/api/filesetfile?id=24 - gets all files in the file set using it's unique id
Example url: https://kioskapi.azure-api.net/klr/api/filesetfile?id=24
Sample Response:
{
"success": true,
"message": "",
"name": "test file set",
"awaitingdeployment": true,
"files": [
{
"name": "customicon.png"
},
{
"name": "localcontent/index.htm"
}
]
}
DELETE
/api/filesetfile?id=24 - deletes a specified file from the file set using it's unique id
Example url: https://kioskapi.azure-api.net/klr/api/filesetfile?id=24
Sample request body:
Include json in the request body as per examples below:
{
"path": "/localcontent/index.htm"
}
POST
/api/filesetfile?id=24 - upload a single file to the file set using it's unique id
Sample request body:
Please supply a single file as part of the form body as well as the following parameters as form data:
Path: this should be the folder path and should not include the name of the file. i.e. /localcontent/. If the folder does not exist it will automatically get created.
path: "/localcontent/"
Whenever deleting a file or uploading a new file the "awaiting deployment" property is automatically set to true. You must deploy the changes by making a request (PATCH) to the File Set Endpoint for the specific File Set.
Updated on: 21/11/2024
Thank you!