Tizen APIs

Mobile nativeWearable native

You can develop native applications using the native API modules. You can create diverse applications with a variety of features, and design versatile applications and intriguing user interfaces with text and graphics while taking advantage of many device functionalities, such as sensors and call operations. In addition, you can, for example, manage content and media files, use network and social services, and provide messaging and embedded Web browsing functionality.

The Tizen platform also provides a special kind of native application model, which consists of 1 UI native application and 1 or more native service applications.

The native API specification consists of multiple API modules that represent the versatility and wide variety of features that you can implement in your native application. Each API module represents a set of logically similar submodule APIs which can be grouped into the same category. This structure was designed to make it easier for you to narrow down and find the specific methods that you require to implement a feature in your native application.

There are 2 types of submodules - Tizen native modules and open source modules. The integration of open source modules in the native API structure allows you to add additional features by using well-known open source libraries. This is particularly advantageous for developers who are familiar with certain libraries because they can quickly add features and use previously written code in certain cases.

The following table defines the Tizen mobile native API layout. The table describes the API modules and the functionality of all their submodule APIs within that module. The table also acts as a reference source for when you are planning a new feature for your application and need a way to efficiently compare different API modules to decide which APIs to use.

Note Except as noted, the mobile native APIs are available since Tizen 2.3.

Table: Mobile native API modules

API module API submodule Functionality Description
Account Account Manager Provides CRUD (Create, Read, Update, Delete) account management functionality. The Account API module features include managing various account information, such as receiving sync operation notifications and obtaining an access token by using the OAuth 2.0 authorization.

Guides:

FIDO Client

(since 3.0)

Allows you to utilize the device's available authenticators for online service integration.
OAuth 2.0

(since 2.4)

Provides an easy way to gain an access token between a server and client.
Sync Manager

(since 2.4)

Helps applications in scheduling their data sync operations.
libOAuth Provides a library for using an open standard for secure authorization. This library enables users to securely log into an account on an application by using their logon credentials from another secondary account that they can have with another account provider or application.
Application Framework Application Manages the application's main event loop, state change events, and basic system events, and gets information about the application. It is also used to launch other applications. The Application Framework API contains submodule APIs for application development. The submodule APIs enable application life-cycle management, usage of functionality that is exported by other applications, and access to a user's application preferences.

Guides:

Application Manager Gets information, such as the application ID and path to the shared data directory, of the current application and other installed or running applications.
Attach Panel

(since 2.4)

Provides a panel in which users can take pictures, record voice, and select files to attach.
Badge Creates and removes badges on the application's home screen icon. A badge is an image displayed on the application icon, which informs the user about notifications and events. This submodule can also be used to set and get the badge value and visibility.
Bundle Provides a string-based dictionary abstract data type (ADT). A dictionary is an ordered or unordered list of key-element pairs. Keys are used to locate elements in the list. This submodule can be used to create and manage a dictionary.
Data Control Exchanges data between applications by allowing an application to query the public database of another application that has opted to be a data provider.
Message Port Sends and receives small messages between applications without interference from other applications and processes. Each message is a bundle.
Notification Creates, inserts, and updates notifications so that applications can relay information to users. Visuals, sounds, or vibrations can be used as notifications.
Package Manager Stores and receives information related to packages installed on the device. This is information can be, for example, the package name, path to the icon image, or the application version. It can also be used to check whether 2 package certificates match. If they match, they have been created by the same developer and can share resources securely.
Service Application Handles Tizen service application (non-UI application) state changes and system events. It is also used to start and exit the main event loop of service applications.
Shortcut Adds application shortcuts to the device home screen, the main landing screen of the device.
Widget

(since 2.3.1)

Handles Tizen widget application state changes and system events. It is also used to start and exit the main event loop of widget applications.
Base C++ Standard Library Provides a standard C++ library. The Base API contains submodule APIs for internationalization support and contains various open source libraries.

Guides:

Common Error Provides error codes that are common for the whole Tizen API.
Glib Provides low-level libraries and advanced data structures, such as linked lists and hash tables, for use in application development.
Glibc Provides a standard C library.
LibXML Used to parse XML documents, such as the Application Manifest.
Minizip Provides a library to process files in the ZIP format. It can be used to zip, unzip and compress files.
OpenMP Supports shared memory multiprocessing. This can be used for complex tasks on multicore processors.
Sqlite Implements a lightweight SQL relational database. This is widely used for embedded client or local storage.
Utils > i18n Provides internationalization (i18n) support, such as flexibly generating date formats and numbers, depending on the locale setting of the device.
zlib

(since 2.4)

Used for in-memory compression and decompression.
Content Download Creates and manages 1 or more download requests. Content is downloaded from servers through an HTTP connection. The Content API module contains submodule APIs for managing the most common device media data types, such as image, audio, and video files. It provides operations to search for content, search for content information stored on the device, create playlists, download content from servers through an HTTP connection, and access the EXIF information in an image file.

Guides:

MIME Type Maps MIME types to file extensions and vice versa. For example, the .jpeg file extension is mapped to the image/jpeg MIME type, which is required when using other API modules, such as the AppControl API in the Application submodule API, because it operates with MIME types.
Media Content Connects and disconnects from the media content service. This connection is required to insert, update and remove media file information in the media content database. Common media data types, such as image, audio, and video can be managed through the database. Other queries, such as searching for content and content information and accessing EXIF information from image files, are also possible.
Context Activity Recognition Detects user activities, such as walking, running, and being in a moving vehicle with a device. The Context API module contains submodule APIs to detect user information, such as when a user is running with a device, and device information, such as gestures when a device is tilted.

Guides:

Contextual History

(since 2.4)

Allows you to query statistics and patterns derived from contextual history data.
Contextual Trigger

(since 2.4)

Provides a way to define rules, each of which can trigger a specified action when the rule is satisfied.
Gesture Recognition Detects user gestures on devices, such as tilt, snap, and double-tap.
Location Geofence Manager

(since 2.4)

Provides a service related to geofence (geo-fence). The Location API module allows the geographical position of a device to be determined for use with location-based services.

Guides:

Location Manager Acquires information about the geographical location of the device. It also allows the receiving of notifications about position changes, velocity changes, and when a given geographical area is left.
Maps Service

(since 2.4)

Provides a set of functions, helping to create map-aware applications.
Messaging Email Allows composing, sending, and receiving of email messages. The Messaging API module contains submodule APIs which grant access to the messaging capabilities, such as SMS, MMS and email, of the device.

Guides:

Messages Allows composing, sending, and receiving of SMS, MMS, and WAP push messages.
Push Allows receiving of push notifications from a push server.
Multimedia Audio I/O Manages the system audio devices by granting access to the hardware layer of the sound card. This API must be used for tasks that require raw audio data buffers in PCM format. The Multimedia API module contains submodule APIs for easily integrating an application with audio, image, and video files. It can also be used for image editing.

Guides:

Camera Accesses the camera preview to display photo previews, focuses images, and captures images.
Image Util Encodes and decodes JPEG images. It also provides tools, such as crop, resize, and rotate, to transform images.
Media Codec Provides interfaces for encoding and decoding audio and video data, such as AAC audio or MPEG-4 AVC video.
Media Controller

(since 2.4)

Provides functions for communication between the media controller server and the media controller client.
Media Demuxer

(since 3.0)

Provides functions for demuxing media data.
Media Muxer

(since 3.0)

Provides functions for muxing media data.
Media Streamer

(since 3.0)

Provides functions for building custom pipeline for streaming media.
Media Tool Handles audio and video packet buffers. These buffers are utilized by the other Multimedia submodule APIs.
Media Vision

(since 2.4)

Provides functionality for barcode detection and generation. Since 3.0, it also provides functionality for face detection, and tracking and recognition of both images and faces.
Metadata Editor

(since 2.4)

Provides functions for editing the metadata of several popular audio formats.
Metadata Extractor Extracts metadata information from an input media file.
OpenAL Renders multichannel 3D audio.
Player Provides functions for media playback and can be used to control media playback attributes.
Radio Supports radio usage. This submodule API can be used for tasks, such as starting and stopping the radio and scanning for radio channels.
Recorder Controls the recording of multimedia content. Recording process attributes, such as setting the recording filename and file format, can also be configured with this API submodule.
Screen Mirroring

(since 2.4)

Provides functions for screen mirroring as a sink.
Sound Manager Provides functions to get and set sound parameters, such as output sound volume. Session policy, such as the handling of sound session interrupts, can also be configured with this API submodule.
Sound Pool

(since 4.0)

Provides functions for easy sound management, such as grouping sounds in pools, handling sound stream playback operations, and controlling stream and pool states.
StreamRecorder

(since 3.0)

Provides functions to record video or audio from a buffer including a media packet.
Thumbnail Util

(since 2.4)

Provides functions for creating the thumbnail from an input media file.
Tone Player Plays and stops tones.
Video Util Transcodes or converts media files from one encoding to another. This API supports certain video codecs, audio codecs, and file formats.
WAV Player Plays and stops Waveform Audio File (WAV) format files.
libEXIF Supports an image file format that extends existing formats, such as JPEG and TIFF. Many Tizen devices have a camera and use the EXIF format, and libEXIF can be used to read and write EXIF metainformation to and from image files.
Network Application Service Platform

(since 4.0)

Provides functions for discovery and session management using the Application Service Platform. The Network API module contains submodule APIs, which can be used for data communication. It is responsible for managing connections, maintaining IP addresses, and connecting to the system through Bluetooth, Hypertext Transfer Protocol (HTTP), Near Field Communication (NFC), Sockets, and Wi-Fi. It also provides functions for retrieving information about a specific host from the Internet Domain Name System (DNS).

Guides:

Bluetooth Manages Bluetooth devices. This involves launching the Bluetooth adapter and discovering, connecting, and bonding with other Bluetooth devices.
Connection Gets network connection information, such as IP address, proxy information, gateway information, connection state, and data transfer statistics.
Curl Provides a client-side URL data transfer library supporting HTTP, HTTPS, FTP, and file URIs, among many other protocols. Allows applications to perform URL-related activities without a Web browser.
DNSSD

(since 3.0)

Provides functions for network service discovery using DNSSD.
HTTP

(since 3.0)

Allows you to connect to a Web server to fetch and transmit a Web resource.
IoTCon

(since 3.0)

Provides functions for IoT connectivity.
MTP

(since 3.0)

Manages Media Transfer Protocol (MTP) file transfers between 2 devices.
NFC Allows management, such as registering and deregistering event listeners, of short-range wireless near field communication (NFC). This submodule API must also be used to read, write, receive, and send NFC messages.
SSDP

(since 3.0)

Provides functions for network service discovery using SSDP.
Smart Traffic Control

(since 4.0)

Provides functions for managing and monitoring network packets.
Smartcard

(since 2.3.1)

Provides application communication to the SE applet functions.
VPN Service

(since 3.0)

Manages Virtual Private Network (VPN) connections between 2 VPN devices.
Wi-Fi Manages Wi-Fi connections and monitors the state of Wi-Fi connections.
Wi-Fi Direct Manages the settings of Wi-Fi Direct®. This submodule API also provides functions to connect and disconnect remote devices that use Wi-Fi Direct.
Security CSR

(since 3.0)

Provides the Content Screening Service to scan the content for data, files, and directories, and the Web Protection Service to protect a device by checking whether a URL the user wants to access is risky. The Security API module contains submodule APIs which provide basic cryptographic functions, various utility functions through the OpenSSL open source library, and a secure password-protected repository for keys, certificates, and sensitive data.

Guides:

Device Policy Manager

(since 3.0)

Provides functions to create security-aware applications that are useful in enterprise settings.
Key Manager Provides functions to store keys, certificates, and sensitive data related to users and their password-protected applications in a secure repository. It also provides cryptographic operations to prevent key value names from being revealed to clients.
OpenSSL Provides an open source library that provides basic cryptographic functions and various utility functions.
Privacy Privilege Manager

(since 4.0)

Provides functions for retrieving and determining an application's permissions for privacy privileges.
Privilege Info Retrieves and displays privilege information. This can be used to show a user the privileges that an application contains when they are downloading it onto their device. This is so that they are aware of the resources which the application may access.
Trusted Execution Framework

(since 4.0)

Provides the TEE Client API as defined by the GlobalPlatform TEE standard for connecting to applications executed in the TrustZone.
YACA

(since 3.0)

Provides cryptographic functions, such as key management, data integrity, data encryption and decryption, and low-level RSA operations.
Social Calendar Manages calendars, including events and tasks. It also stores and queries calendar information. The Social API module contains submodule APIs to manage personal data, such as contacts and calendars, on a device.

Guides:

Contacts Manages phone contact information, such as address books, persons, and phone logs.
Phonenumber utils

(since 2.4)

Provides functions for parsing and formatting phone numbers.
Service Adaptor

(deprecated)

Provides common interfaces, such as using a local service for various service infra.
System Device Controls devices and monitors their status. For example, this submodule API can be used to control and monitor the device battery, display, and LED. The System API module contains submodule APIs for system management.

Guides:

Feedback

(since 2.4)

Provides functions to play sound or vibration associated with properties.
Media key Provides functions to handle media keys from external devices that are connected to the Tizen device, such as the volume control buttons on a headset.
Runtime information Obtains runtime information from a mobile device. For example, this submodule API can obtain information about the device's GPS.
Sensor Starts and stops sensors and receives sensor data.
Storage Obtains storage information, such as root directory, storage type (internal or external), storage status, and total available space size.
System Information Obtains information about the device, such as the platform and API version, device model, supported device features, and screen dimensions.
System Settings Manages system settings, such as the lock screen settings.
T-trace

(since 2.4)

Provides functions for writing trace messages to the system trace buffer.
USB Host

(since 3.0)

Provides direct access to USB devices to communicate with connected devices.
dlog Sends log output and filters log messages from the dlog logging service.
Telephony Telephony Information Obtains call, network, and SIM information. The Telephony API module contains a submodule API to enable an application to access the telephony capabilities of the device, such as the call facility (call information and status), the network query services, and the SIM module.

Guides:

UI Cairo Provides a library for 2D vector graphics drawing. Vector graphics are advantageous because they have small file sizes and can be scaled to any size without any loss of image quality. Cairo EvasGL APIs have been newly added since 2.3.1. The UI API module contains submodule APIs and open source libraries for 2D and 3D graphics and text.

Guides:

Clipboard History Manager

(since 3.0)

Provides copy and paste functionalities for applications.
DALi Provides a cross-platform 3D UI Toolkit for embedded systems.
EFL Provides a collection of libraries that are independent and can be built on top of each other to provide useful features that complement the existing environment.
EFL UTIL Gets and sets the priority order of notification windows.
EFL Extension

(since 2.3.1)

Enhances the EFL libraries and includes device-specific features (such as support for the hardware Back key).
External Output Manager

(since 2.4)

Provides functions for external outputs.
Fontconfig and Freetype Provides a text rendering library and font-handling library to let applications find a font or closely matching font.
HarfBuzz

(since 2.4)

Provides functions for text shaping.
Minicontrol

(since 2.4)

Provides functions for creating and displaying an EFL socket window.
OpenGL ES

(since 4.0)

Provides a library for rendering 3D and 2D graphics in embedded systems.
SDL

(since 3.0)

Provides a low level hardware abstraction layer to computer multimedia hardware components. It manages video, audio, input devices, threads, and timers.
TBM Surface Provides functions for the graphics buffer.
Tizen WS Shell

(since 3.0)

Allows you to communicate with the window manager.
UI View Manager

(since 3.0)

Provides functions for application view management.
Vulkan

(since 3.0)

Provides functions for rendering 3D and 2D graphics in embedded systems.
UIX Input Method

(since 2.4)

Provides functions for starting the IME application life-cycle, for interacting with the current UI state of the IME, and getting attributes and events. The UIX API module contains submodule APIs for managing sound data, such as voice commands.

Guides:

Input Method Manager

(since 2.4)

Provides functions for launching the input method editor (IME) list and selector settings.
STT Provides functions to recognize speech.
STT Engine

(since 3.0)

Provides functions for operating the Speech-To-Text engine.
TTS Provides functions for synthesizing voice from text and playing synthesized sound data.
TTS Engine

(since 3.0)

Provides functions for operating the Text-To-Speech engine.
Voice control

(since 2.4)

Provides functions for registering commands and getting notifications when a registered command is recognized.
Voice control elementary

(since 2.4)

Provides functions to control UI components through voice commands.
Web Json-Glib Allows reading and parsing of JavaScript Object Notation (JSON) documents. The Web API module contains submodule APIs for browsing the Internet, tracking browsing history, downloading Web content, and manipulating JavaScript Object Notation (JSON) documents.

Guides:

WebView Displays and controls Web pages. This submodule API contains interfaces for browsing, tracking browsing history, and downloading Web content.

The following table describes the API modules in the wearable profile and the functionality of all their submodule APIs within that module. The table also acts as reference sources for when you are planning a new feature for your application and need a way to efficiently compare different API modules to decide which APIs to use.

Note Except as noted, the wearable native APIs are available since Tizen 2.3.1.

Table: Wearable native API modules

API module API submodule Functionality Description
Account Account Manager Provides CRUD (Create, Read, Update, Delete) account management functionality. The Account API module features include managing various account information, such as receiving sync operation notifications and obtaining an access token by using the OAuth 2.0 authorization.

Guides:

FIDO Client

(since 3.0)

Allows you to utilize the device's available authenticators for online service integration.
OAuth 2.0

(since 2.4)

Provides an easy way to gain an access token between a server and client.
Sync Manager

(since 2.4)

Helps applications in scheduling their data sync operations.
libOAuth Provides a library for using an open standard for secure authorization. This library enables users to securely log into an account on an application by using their logon credentials from another secondary account that they can have with another account provider or application.
Application Framework Application Manages the application's main event loop, state change events, and basic system events, and gets information about the application. It is also used to launch other applications. The Application Framework API contains submodule APIs for application development. The submodule APIs enable application life-cycle management, usage of functionality that is exported by other applications, and access to a user's application preferences.

Guides:

Application Manager Gets information, such as the application ID and path to the shared data directory, of the current application and other installed or running applications.
Badge Creates and removes badges on the application's home screen icon. A badge is an image displayed on the application icon, which informs the user about notifications and events. This submodule can also be used to set and get the badge value and visibility.
Bundle Provides a string-based dictionary abstract data type (ADT). A dictionary is an ordered or unordered list of key-element pairs. Keys are used to locate elements in the list. This submodule can be used to create and manage a dictionary.
Data Control Exchanges data between applications by allowing an application to query the public database of another application that has opted to be a data provider.
Message Port Sends and receives small messages between applications without interference from other applications and processes. Each message is a bundle.
Notification

(since 3.0)

Creates, inserts, and updates notifications so that applications can relay information to users. Visuals, sounds, or vibrations can be used as notifications.
Package Manager Stores and receives information related to packages installed on the device. This is information can be, for example, the package name, path to the icon image, or the application version. It can also be used to check whether 2 package certificates match. If they match, they have been created by the same developer and can share resources securely.
Service Application Handles Tizen service application (non-UI application) state changes and system events. It is also used to start and exit the main event loop of service applications.
Watch Application Handles Tizen watch application state changes and system events. It is also used to start and exit the main event loop of watch applications.
Widget Handles Tizen widget application state changes and system events. It is also used to start and exit the main event loop of widget applications.
Base C++ Standard Library Provides a standard C++ library. The Base API contains submodule APIs for internationalization support and contains various open source libraries.

Guides:

Common Error Provides error codes that are common for the whole Tizen API.
Glib Provides low-level libraries and advanced data structures, such as linked lists and hash tables, for use in application development.
Glibc Provides a standard C library.
LibXML Used to parse XML documents, such as the Application Manifest.
Minizip Provides a library to process files in the ZIP format. It can be used to zip, unzip and compress files.
OpenMP Supports shared memory multiprocessing. This can be used for complex tasks on multicore processors.
Sqlite Implements a lightweight SQL relational database. This is widely used for embedded client or local storage.
Utils > i18n Provides internationalization (i18n) support, such as flexibly generating date formats and numbers, depending on the locale setting of the device.
zlib

(since 3.0)

Used for in-memory compression and decompression.
Content MIME Type Maps MIME types to file extensions and vice versa. For example, the .jpeg file extension is mapped to the image/jpeg MIME type, which is required when using other API modules, such as the AppControl API in the Application submodule API, because it operates with MIME types. The Content API module contains submodule APIs for managing the most common device media data types, such as image, audio, and video files. It provides operations to search for content, search for content information stored on the device, create playlists, and access the EXIF information in an image file.

Guides:

Media Content Connects and disconnects from the media content service. This connection is required to insert, update and remove media file information in the media content database. Common media data types, such as image, audio, and video can be managed through the database. Other queries, such as searching for content and content information and accessing EXIF information from image files, are also possible.
Context Activity Recognition Detects user activities, such as walking, running, and being in a moving vehicle with a device. The Context API module contains submodule APIs to detect user information, such as when a user is running with a device, and device information, such as gestures when a device is tilted.

Guides:

Contextual History

(since 4.0)

Allows you to query statistics and patterns derived from contextual history data.
Gesture Recognition Detects user gestures on devices, such as tilt, snap, and double-tap.
Location Location Manager Acquires information about the geographical location of the device. It also allows the receiving of notifications about position changes, velocity changes, and when a given geographical area is left. The Location API module allows the geographical position of a device to be determined for use with location-based services.

Guides:

Maps Service

(since 2.3.2)

Provides a set of functions, helping to create map-aware applications.
Messaging Email

(since 3.0)

Allows composing, sending, and receiving of email messages. The Messaging API module contains submodule APIs which grant access to the messaging capabilities, such as SMS, MMS and email, of the device.

Guides:

Messages Allows composing, sending, and receiving of SMS, MMS, and WAP push messages.
Push Allows receiving of push notifications from a push server.
Multimedia Audio I/O Manages the system audio devices by granting access to the hardware layer of the sound card. This API must be used for tasks that require raw audio data buffers in PCM format. The Multimedia API module contains submodule APIs for easily integrating an application with audio, image, and video files. It can also be used for image editing.

Guides:

Camera Accesses the camera preview to display photo previews, focuses images, and captures images.
Image Util Encodes and decodes JPEG images. It also provides tools, such as crop, resize, and rotate, to transform images.
Media Codec Provides interfaces for encoding and decoding audio and video data, such as AAC audio or MPEG-4 AVC video.
Media Controller

(since 3.0)

Provides functions for communication between the media controller server and the media controller client.
Media Demuxer

(since 3.0)

Provides functions for demuxing media data.
Media Muxer

(since 3.0)

Provides functions for muxing media data.
Media Streamer

(since 3.0)

Provides functions for building custom pipeline for streaming media.
Media Tool Handles audio and video packet buffers. These buffers are utilized by the other Multimedia submodule APIs.
Media Vision

(since 3.0)

Provides functionality for barcode detection and generation. It also provides functionality for face detection, and tracking and recognition of both images and faces.
Metadata Editor

(since 3.0)

Provides functions for editing the metadata of several popular audio formats.
Metadata Extractor Extracts metadata information from an input media file.
OpenAL Renders efficiently multichannel 3D audio.
Player Provides functions for media playback and can be used to control media playback attributes.
Radio Supports radio usage. This submodule API can be used for tasks, such as starting and stopping the radio and scanning for radio channels.
Recorder Controls the recording of multimedia content. Recording process attributes, such as setting the recording filename and file format, can also be configured with this API submodule.
Sound Manager Provides functions to get and set sound parameters, such as output sound volume. Session policy, such as the handling of sound session interrupts, can also be configured with this API submodule.
Sound Pool

(since 4.0)

Provides functions for easy sound management, such as grouping sounds in pools, handling sound stream playback operations, and controlling stream and pool states.
StreamRecorder

(since 3.0)

Provides functions to record video or audio from a buffer including a media packet.
Thumbnail Util

(since 3.0)

Provides functions for creating the thumbnail from an input media file.
Tone Player Plays and stops tones.
WAV Player Plays and stops Waveform Audio File (WAV) format files.
libEXIF Supports an image file format that extends existing formats, such as JPEG and TIFF. Many Tizen devices have a camera and use the EXIF format, and libEXIF can be used to read and write EXIF metainformation to and from image files.
Network Application Service Platform

(since 4.0)

Provides functions for discovery and session management using the Application Service Platform. The Network API module contains submodule APIs, which can be used for data communication. It is responsible for managing connections, maintaining IP addresses, and connecting to the system through Bluetooth, Hypertext Transfer Protocol (HTTP), Near Field Communication (NFC), Sockets, and Wi-Fi. It also provides functions for retrieving information about a specific host from the Internet Domain Name System (DNS).

Guides:

Bluetooth Manages Bluetooth devices. This involves launching the Bluetooth adapter and discovering, connecting, and bonding with other Bluetooth devices.
Connection Gets network connection information, such as IP address, proxy information, gateway information, connection state, and data transfer statistics.
Curl Provides a client-side URL data transfer library supporting HTTP, HTTPS, FTP, and file URIs, among many other protocols. Allows applications to perform URL-related activities without a Web browser.
DNSSD

(since 3.0)

Provides functions for network service discovery using DNSSD.
HTTP

(since 3.0)

Allows you to connect to a Web server to fetch and transmit a Web resource.
IoTCon

(since 3.0)

Provides functions for IoT connectivity.
NFC Allows management, such as registering and deregistering event listeners, of short-range wireless near field communication (NFC). This submodule API must also be used to read, write, receive, and send NFC messages.
SSDP

(since 3.0)

Provides functions for network service discovery using SSDP.
Smart Traffic Control

(since 4.0)

Provides functions for managing and monitoring network packets.
Smartcard

(since 2.3.1)

Provides application communication to the SE applet functions.
Wi-Fi Manages Wi-Fi connections and monitors the state of Wi-Fi connections.
Security CSR

(since 3.0)

Provides the Content Screening Service to scan the content for data, files, and directories, and the Web Protection Service to protect a device by checking whether a URL the user wants to access is risky. The Security API module contains submodule APIs which provide basic cryptographic functions, various utility functions through the OpenSSL open source library, and a secure password-protected repository for keys, certificates, and sensitive data.

Guides:

Device Policy Manager

(since 3.0)

Provides functions to create security-aware applications that are useful in enterprise settings.
Key Manager Provides functions to store keys, certificates, and sensitive data related to users and their password-protected applications in a secure repository. It also provides cryptographic operations to prevent key value names from being revealed to clients.
OpenSSL Provides an open source library that provides basic cryptographic functions and various utility functions.
Privacy Privilege Manager

(since 4.0)

Provides functions for retrieving and determining an application's permissions for privacy privileges.
Privilege Info Retrieves and displays privilege information. This can be used to show a user the privileges that an application contains when they are downloading it onto their device. This is so that they are aware of the resources which the application may access.
Trusted Execution Framework

(since 4.0)

Provides the TEE Client API as defined by the GlobalPlatform TEE standard for connecting to applications executed in the TrustZone.
YACA

(since 3.0)

Provides cryptographic functions, such as key management, data integrity, data encryption and decryption, and low-level RSA operations.
Social Calendar

(since 3.0)

Manages calendars, including events and tasks. It also stores and queries calendar information. The Social API module contains submodule APIs to manage personal data, such as contacts and calendars, on a device.

Guides:

Contacts

(since 3.0)

Manages phone contact information, such as address books, persons, and phone logs.
Phonenumber utils

(since 3.0)

Provides functions for parsing and formatting phone numbers.
System Device Controls devices and monitors their status. For example, this submodule API can be used to control and monitor the device battery, display, and LED. The System API module contains submodule APIs for system management.

Guides:

Feedback

(since 3.0)

Provides functions to play sound or vibration associated with properties.
Media key Provides functions to handle media keys from external devices that are connected to the Tizen device, such as the volume control buttons on a headset.
Runtime information Obtains runtime information from a wearable device. For example, this submodule API can obtain information about the device's GPS.
Sensor Starts and stops sensors and receives sensor data.
Storage Obtains storage information, such as root directory, storage type (internal or external), storage status, and total available space size.
System Information Obtains information about the device, such as the platform and API version, device model, supported device features, and screen dimensions.
System Settings Manages system settings, such as the lock screen settings.
T-trace

(since 3.0)

Provides functions for writing trace messages to the system trace buffer.
dlog Sends log output and filters log messages from the dlog logging service.
Telephony Telephony Information Obtains call, network, and SIM information. The Telephony API module contains a submodule API to enable an application to access the telephony capabilities of the device, such as the call facility (call information and status), the network query services, and the SIM module.

Guides:

UI Cairo Provides a library for 2D vector graphics drawing. Vector graphics are advantageous because they have small file sizes and can be scaled to any size without any loss of image quality. This module also includes Cairo EvasGL APIs which have been designed to support hardware-accelerated rendering. The UI API module contains submodule APIs and open source libraries for 2D and 3D graphics and text.

Guides:

DALi Provides a cross-platform 3D UI Toolkit for embedded systems.
EFL Provides a collection of libraries that are independent and can be built on top of each other to provide useful features that complement the existing environment.
EFL UTIL Gets and sets the priority order of notification windows.
EFL Extension Enhances the EFL libraries and includes device-specific features (such as support for rotary events).
External Output Manager

(since 3.0)

Provides functions for external outputs.
Fontconfig and Freetype Provides a text rendering library and font-handling library to let applications find a font or closely matching font.
HarfBuzz

(since 3.0)

Provides functions for text shaping.
OpenGL ES

(since 4.0)

Provides a library for rendering 3D and 2D graphics in embedded systems.
SDL

(since 3.0)

Provides a low level hardware abstraction layer to computer multimedia hardware components. It manages video, audio, input devices, threads, and timers.
TBM Surface Provides functions for the graphics buffer.
Tizen WS Shell

(since 3.0)

Allows you to communicate with the window manager.
Vulkan

(since 3.0)

Provides functions for rendering 3D and 2D graphics in embedded systems.
UIX Input Method

(since 3.0)

Provides functions for starting the IME application life-cycle, for interacting with the current UI state of the IME, and getting attributes and events. The UIX API module contains submodule APIs for managing sound data, such as voice commands.

Guides:

Input Method Manager

(since 3.0)

Provides functions for launching the input method editor (IME) list and selector settings.
STT Provides functions to recognize speech.
STT Engine

(since 3.0)

Provides functions for operating the Speech-To-Text engine.
TTS Provides functions for synthesizing voice from text and playing synthesized sound data.
TTS Engine

(since 3.0)

Provides functions for operating the Text-To-Speech engine.
Voice control

(since 3.0)

Provides functions for registering commands and getting notifications when a registered command is recognized.
Voice control elementary

(since 3.0)

Provides functions to control UI components through voice commands.
Web Json-Glib Allows reading and parsing of JavaScript Object Notation (JSON) documents. The Web API module contains submodule APIs for browsing the Internet, tracking browsing history, downloading Web content, and manipulating JavaScript Object Notation (JSON) documents.

Guides:

WebView Displays and controls Web pages. This submodule API contains interfaces for browsing, tracking browsing history, and downloading Web content.