The Android Management API provides remote enterprise management of Android devices and apps. For detailed description please check documentation.
Install typings for Android Management API:
npm install @types/gapi.client.androidmanagement-v1 --save-dev
You need to initialize Google API client in your code:
gapi.load('client', () => {
// now we can use gapi.client
// ...
});
Then load api client wrapper:
gapi.client.load(
'https://androidmanagement.googleapis.com/$discovery/rest?version=v1',
() => {
// now we can use:
// gapi.client.androidmanagement
},
);
// Deprecated, use discovery document URL, see https://github.com/google/google-api-javascript-client/blob/master/docs/reference.md#----gapiclientloadname----version----callback--
gapi.client.load('androidmanagement', 'v1', () => {
// now we can use:
// gapi.client.androidmanagement
});
Don't forget to authenticate your client before sending any request to resources:
// declare client_id registered in Google Developers Console
var client_id = '',
scope = [
// Manage Android devices and apps for your customers
'https://www.googleapis.com/auth/androidmanagement',
],
immediate = true;
// ...
gapi.auth.authorize(
{client_id: client_id, scope: scope, immediate: immediate},
authResult => {
if (authResult && !authResult.error) {
/* handle successful authorization */
} else {
/* handle authorization error */
}
},
);
After that you can use Android Management API resources:
/*
Creates an enterprise. This is the last step in the enterprise signup flow. See also: SigninDetail
*/
await gapi.client.androidmanagement.enterprises.create({});
/*
Permanently deletes an enterprise and all accounts and data associated with it. Warning: this will result in a cascaded deletion of all AM API devices associated with the deleted enterprise. Only available for EMM-managed enterprises.
*/
await gapi.client.androidmanagement.enterprises.delete({name: 'name'});
/*
Generates an enterprise upgrade URL to upgrade an existing managed Google Play Accounts enterprise to a managed Google domain.Note: This feature is not generally available.
*/
await gapi.client.androidmanagement.enterprises.generateEnterpriseUpgradeUrl({
name: 'name',
});
/*
Gets an enterprise.
*/
await gapi.client.androidmanagement.enterprises.get({name: 'name'});
/*
Lists EMM-managed enterprises. Only BASIC fields are returned.
*/
await gapi.client.androidmanagement.enterprises.list({});
/*
Updates an enterprise. See also: SigninDetail
*/
await gapi.client.androidmanagement.enterprises.patch({name: 'name'});
/*
Get the device provisioning information by the identifier provided in the sign-in url.
*/
await gapi.client.androidmanagement.provisioningInfo.get({name: 'name'});
/*
Creates an enterprise signup URL.
*/
await gapi.client.androidmanagement.signupUrls.create({});