The Android Management API

The Android Management API is designed for developers who want to integrate Android device and app management capabilities into their customer solution. Enterprises can also use the API directly to manage their devices and apps. To try the Android Management API and set up a device in minutes, see the Quickstart guide.

Supported solutions

This API can be used to develop management solutions for dedicated devices. For example, devices that only need to run a single app or set of apps to support functions such as inventory management, digital signage, and ticket printing.

You can use the Android Management API to fulfill the mandatory requirements of the COSU solution set. After a successful product review, you can launch your solution in a production environment. For more information, see Enterprise solution sets for Android management.

Conceptual overview

Android Management overview.

Enterprise mobility management (EMM) providers should provide an EMM console or similar application that includes a user-friendly interface for IT administrators to deploy and configure devices, create and apply policies, and administer other device and app-level settings. In the backend, policies and other management resources are created using the Android Management API, which in turn communicates and applies settings to managed devices through Android Device Policy.

Enterprises, policies, and devices

An enterprise resource usually represents a single organization. You can create an enterprise using the Android Management API. Both policies and devices belong to an enterprise.

Relationship between enterprise, policies, and devices.

A policy is a group of device and app management settings that can be applied to managed devices. The settings enforce a range of features, such as disabling screenshot or camera functions, enforcing password security, automatically installing apps, and applying managed configurations to specific sets of apps. A complete list of policy settings is available in the reference section. You can use the API to perform the following tasks:

  • Create and update policies.
  • Apply a policy to a device or group of devices.
  • Set an enterprise-wide default policy.

An enterprise can maintain different policies based on role, department, or even create a different policy for each managed device.

Devices refer to devices that are managed using Android Management API and Android Device Policy. The Android Device Policy app is Google's device policy conroller (DPC). All managed devices must install the app during device provisioning. Once installed on a device, Android Device Policy applies policies set in the API to the device.

Enrolling and provisioning a device

Enrollment and provisioning is the process of setting up and configuring an Android device so that your enterprise customer can manage it. Before enrolling a device, you first need to obtain an enrollment token.

An enrollment token is a secret passphrase used to authorize the enrollment of a device to a specific enterprise. You can get a token using the API and use it to help IT admins enroll and provision devices using these methods:

QR Code NFC Manual setup
Android 7.0+ devices Android 5.1+ devices Android 6.0+ devices
The enrollment token, download location of Android Device Policy, and other provisioning settings are bundled into a QR code. You or the enterprise IT admin set up a device by scanning the QR code when prompted by the setup wizard. The enrollment token, download location of Android Device Policy, and other provisioning settings are transferred to devices via NFC from a "programmer device". This method requires that the device support NFC. A user can also manually enter "afw#setup" and their Wi-Fi details in the setup wizard to download Android Device Policy. Afterwards, they can either scan a QR code containing an enrollment token or input the token manually.

For detailed guidance on how to create enrollment tokens and support these provisioning methods, see the Developer’s Guide.


A command is an action that you can execute on a device. For example, you can issue a command to lock or reboot a device. Unlike a policy, which is persistently enforced, a command is executed only once. You can issue multiple commands to a device.

Send feedback about...

Android Management API (beta)
Android Management API (beta)