Permissions

The permissions field in the app manifest controls the app's access to various sensitive APIs on the device (sometimes called WebAPIs). The permissions are described in the following tables. The three levels of permission, in brief, are:

  • Web apps: These only have a basic level of permissions, and don't have access to privileged or internal APIs.
  • Privileged apps: These have all the permissions of web apps plus more. Hosted apps can't be privileged — they must be packaged apps.

Hosted app and privileged app permissions

Manifest permission API name Minimum app type required access property Default granted
alarms Alarm hosted none Allow
audio-capture getUserMedia, Web Speech API hosted for getUserMedia, privileged for Web Speech API none Prompt for all installed App types for getUserMedia, Allow for Web Speech API.
audio-channel-alarm AudioChannels privileged none Allow
audio-channel-content AudioChannels hosted none Allow
audio-channel-normal AudioChannels hosted none Allow
audio-channel-notification AudioChannels privileged none Allow
browser Browser privileged none Allow
camera Camera privileged in KaiOS certified none Prompt for all installed App types.`
contacts Contacts privileged readonly, readwrite, readcreate, or createonly Prompt for all installed App types.
desktop-notification Notification hosted none Prompt for Web content. Allow for all installed App types.
device-storage:music Device Storage privileged readonly, readwrite, readcreate, or createonly Prompt
device-storage:pictures Device Storage privileged readonly, readwrite, readcreate, or createonly Prompt
device-storage:sdcard Device Storage privileged readonly, readwrite, readcreate, or createonly Prompt
device-storage:videos Device Storage privileged readonly, readwrite, readcreate, or createonly Prompt
fmradio FM Radio hosted none Allow
geolocation Geolocation hosted none Prompt (even for certified Apps)
input Keyboard privileged none Allow
mobileid Mobile identity privileged none Prompt
mobilenetwork Mobile Network privileged none Allow
moz-firefox-accounts Firefox Accounts privileged none Prompt for all installed App types.
nfc NFC API privileged none Allow
nfc-share NFC API privileged none Allow
nfc-read, nfc-write NFC API Was certified/internal at this stage in development. none Allow
push Simple Push hosted none Allow
speech-recognition Web Speech API privileged none Allow
systemXHR SystemXHR privileged none Allow
tcp-socket TCP Socket privileged none Allow
video-capture GetUserMedia hosted none Prompt for all installed App types.