1<html><body> 2<style> 3 4body, h1, h2, h3, div, span, p, pre, a { 5 margin: 0; 6 padding: 0; 7 border: 0; 8 font-weight: inherit; 9 font-style: inherit; 10 font-size: 100%; 11 font-family: inherit; 12 vertical-align: baseline; 13} 14 15body { 16 font-size: 13px; 17 padding: 1em; 18} 19 20h1 { 21 font-size: 26px; 22 margin-bottom: 1em; 23} 24 25h2 { 26 font-size: 24px; 27 margin-bottom: 1em; 28} 29 30h3 { 31 font-size: 20px; 32 margin-bottom: 1em; 33 margin-top: 1em; 34} 35 36pre, code { 37 line-height: 1.5; 38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; 39} 40 41pre { 42 margin-top: 0.5em; 43} 44 45h1, h2, h3, p { 46 font-family: Arial, sans serif; 47} 48 49h1, h2, h3 { 50 border-bottom: solid #CCC 1px; 51} 52 53.toc_element { 54 margin-top: 0.5em; 55} 56 57.firstline { 58 margin-left: 2 em; 59} 60 61.method { 62 margin-top: 1em; 63 border: solid 1px #CCC; 64 padding: 1em; 65 background: #EEE; 66} 67 68.details { 69 font-weight: bold; 70 font-size: 14px; 71} 72 73</style> 74 75<h1><a href="androidenterprise_v1.html">Google Play EMM API</a> . <a href="androidenterprise_v1.enterprises.html">enterprises</a></h1> 76<h2>Instance Methods</h2> 77<p class="toc_element"> 78 <code><a href="#acknowledgeNotificationSet">acknowledgeNotificationSet(notificationSetId=None)</a></code></p> 79<p class="firstline">Acknowledges notifications that were received from Enterprises.PullNotificationSet to prevent subsequent calls from returning the same notifications.</p> 80<p class="toc_element"> 81 <code><a href="#completeSignup">completeSignup(completionToken=None, enterpriseToken=None)</a></code></p> 82<p class="firstline">Completes the signup flow, by specifying the Completion token and Enterprise token. This request must not be called multiple times for a given Enterprise Token.</p> 83<p class="toc_element"> 84 <code><a href="#createWebToken">createWebToken(enterpriseId, body)</a></code></p> 85<p class="firstline">Returns a unique token to access an embeddable UI. To generate a web UI, pass the generated token into the managed Google Play javascript API. Each token may only be used to start one UI session. See the javascript API documentation for further information.</p> 86<p class="toc_element"> 87 <code><a href="#delete">delete(enterpriseId)</a></code></p> 88<p class="firstline">Deletes the binding between the EMM and enterprise. This is now deprecated. Use this method only to unenroll customers that were previously enrolled with the insert call, then enroll them again with the enroll call.</p> 89<p class="toc_element"> 90 <code><a href="#enroll">enroll(token, body)</a></code></p> 91<p class="firstline">Enrolls an enterprise with the calling EMM.</p> 92<p class="toc_element"> 93 <code><a href="#generateSignupUrl">generateSignupUrl(callbackUrl=None)</a></code></p> 94<p class="firstline">Generates a sign-up URL.</p> 95<p class="toc_element"> 96 <code><a href="#get">get(enterpriseId)</a></code></p> 97<p class="firstline">Retrieves the name and domain of an enterprise.</p> 98<p class="toc_element"> 99 <code><a href="#getServiceAccount">getServiceAccount(enterpriseId, keyType=None)</a></code></p> 100<p class="firstline">Returns a service account and credentials. The service account can be bound to the enterprise by calling setAccount. The service account is unique to this enterprise and EMM, and will be deleted if the enterprise is unbound. The credentials contain private key data and are not stored server-side.</p> 101<p class="toc_element"> 102 <code><a href="#getStoreLayout">getStoreLayout(enterpriseId)</a></code></p> 103<p class="firstline">Returns the store layout for the enterprise. If the store layout has not been set, returns "basic" as the store layout type and no homepage.</p> 104<p class="toc_element"> 105 <code><a href="#insert">insert(token, body)</a></code></p> 106<p class="firstline">Establishes the binding between the EMM and an enterprise. This is now deprecated; use enroll instead.</p> 107<p class="toc_element"> 108 <code><a href="#list">list(domain)</a></code></p> 109<p class="firstline">Looks up an enterprise by domain name. This is only supported for enterprises created via the Google-initiated creation flow. Lookup of the id is not needed for enterprises created via the EMM-initiated flow since the EMM learns the enterprise ID in the callback specified in the Enterprises.generateSignupUrl call.</p> 110<p class="toc_element"> 111 <code><a href="#pullNotificationSet">pullNotificationSet(requestMode=None)</a></code></p> 112<p class="firstline">Pulls and returns a notification set for the enterprises associated with the service account authenticated for the request. The notification set may be empty if no notification are pending.</p> 113<p class="toc_element"> 114 <code><a href="#sendTestPushNotification">sendTestPushNotification(enterpriseId)</a></code></p> 115<p class="firstline">Sends a test push notification to validate the EMM integration with the Google Cloud Pub/Sub service for this enterprise.</p> 116<p class="toc_element"> 117 <code><a href="#setAccount">setAccount(enterpriseId, body)</a></code></p> 118<p class="firstline">Sets the account that will be used to authenticate to the API as the enterprise.</p> 119<p class="toc_element"> 120 <code><a href="#setStoreLayout">setStoreLayout(enterpriseId, body)</a></code></p> 121<p class="firstline">Sets the store layout for the enterprise. By default, storeLayoutType is set to "basic" and the basic store layout is enabled. The basic layout only contains apps approved by the admin, and that have been added to the available product set for a user (using the setAvailableProductSet call). Apps on the page are sorted in order of their product ID value. If you create a custom store layout (by setting storeLayoutType = "custom" and setting a homepage), the basic store layout is disabled.</p> 122<p class="toc_element"> 123 <code><a href="#unenroll">unenroll(enterpriseId)</a></code></p> 124<p class="firstline">Unenrolls an enterprise from the calling EMM.</p> 125<h3>Method Details</h3> 126<div class="method"> 127 <code class="details" id="acknowledgeNotificationSet">acknowledgeNotificationSet(notificationSetId=None)</code> 128 <pre>Acknowledges notifications that were received from Enterprises.PullNotificationSet to prevent subsequent calls from returning the same notifications. 129 130Args: 131 notificationSetId: string, The notification set ID as returned by Enterprises.PullNotificationSet. This must be provided. 132</pre> 133</div> 134 135<div class="method"> 136 <code class="details" id="completeSignup">completeSignup(completionToken=None, enterpriseToken=None)</code> 137 <pre>Completes the signup flow, by specifying the Completion token and Enterprise token. This request must not be called multiple times for a given Enterprise Token. 138 139Args: 140 completionToken: string, The Completion token initially returned by GenerateSignupUrl. 141 enterpriseToken: string, The Enterprise token appended to the Callback URL. 142 143Returns: 144 An object of the form: 145 146 { # An Enterprises resource represents the binding between an EMM and a specific organization. That binding can be instantiated in one of two different ways using this API as follows: 147 # - For Google managed domain customers, the process involves using Enterprises.enroll and Enterprises.setAccount (in conjunction with artifacts obtained from the Admin console and the Google API Console) and submitted to the EMM through a more-or-less manual process. 148 # - For managed Google Play Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the managed Google Play sign-up UI (Google-provided mechanism) to create the binding without manual steps. As an EMM, you can support either or both approaches in your EMM console. See Create an Enterprise for details. 149 "administrator": [ # Admins of the enterprise. This is only supported for enterprises created via the EMM-initiated flow. 150 { # This represents an enterprise admin who can manage the enterprise in the managed Google Play store. 151 "email": "A String", # The admin's email address. 152 }, 153 ], 154 "primaryDomain": "A String", # The enterprise's primary domain, such as "example.com". 155 "id": "A String", # The unique ID for the enterprise. 156 "kind": "androidenterprise#enterprise", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprise". 157 "name": "A String", # The name of the enterprise, for example, "Example, Inc". 158 }</pre> 159</div> 160 161<div class="method"> 162 <code class="details" id="createWebToken">createWebToken(enterpriseId, body)</code> 163 <pre>Returns a unique token to access an embeddable UI. To generate a web UI, pass the generated token into the managed Google Play javascript API. Each token may only be used to start one UI session. See the javascript API documentation for further information. 164 165Args: 166 enterpriseId: string, The ID of the enterprise. (required) 167 body: object, The request body. (required) 168 The object takes the form of: 169 170{ # Specification for a token used to generate iframes. The token specifies what data the admin is allowed to modify and the URI the iframe is allowed to communiate with. 171 "kind": "androidenterprise#administratorWebTokenSpec", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#administratorWebTokenSpec". 172 "parent": "A String", # The URI of the parent frame hosting the iframe. To prevent XSS, the iframe may not be hosted at other URIs. This URI must be https. 173 "permission": [ # The list of permissions the admin is granted within the iframe. The admin will only be allowed to view an iframe if they have all of the permissions associated with it. The only valid value is "approveApps" that will allow the admin to access the iframe in "approve" mode. 174 "A String", 175 ], 176 } 177 178 179Returns: 180 An object of the form: 181 182 { # A token authorizing an admin to access an iframe. 183 "kind": "androidenterprise#administratorWebToken", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#administratorWebToken". 184 "token": "A String", # An opaque token to be passed to the Play front-end to generate an iframe. 185 }</pre> 186</div> 187 188<div class="method"> 189 <code class="details" id="delete">delete(enterpriseId)</code> 190 <pre>Deletes the binding between the EMM and enterprise. This is now deprecated. Use this method only to unenroll customers that were previously enrolled with the insert call, then enroll them again with the enroll call. 191 192Args: 193 enterpriseId: string, The ID of the enterprise. (required) 194</pre> 195</div> 196 197<div class="method"> 198 <code class="details" id="enroll">enroll(token, body)</code> 199 <pre>Enrolls an enterprise with the calling EMM. 200 201Args: 202 token: string, The token provided by the enterprise to register the EMM. (required) 203 body: object, The request body. (required) 204 The object takes the form of: 205 206{ # An Enterprises resource represents the binding between an EMM and a specific organization. That binding can be instantiated in one of two different ways using this API as follows: 207 # - For Google managed domain customers, the process involves using Enterprises.enroll and Enterprises.setAccount (in conjunction with artifacts obtained from the Admin console and the Google API Console) and submitted to the EMM through a more-or-less manual process. 208 # - For managed Google Play Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the managed Google Play sign-up UI (Google-provided mechanism) to create the binding without manual steps. As an EMM, you can support either or both approaches in your EMM console. See Create an Enterprise for details. 209 "administrator": [ # Admins of the enterprise. This is only supported for enterprises created via the EMM-initiated flow. 210 { # This represents an enterprise admin who can manage the enterprise in the managed Google Play store. 211 "email": "A String", # The admin's email address. 212 }, 213 ], 214 "primaryDomain": "A String", # The enterprise's primary domain, such as "example.com". 215 "id": "A String", # The unique ID for the enterprise. 216 "kind": "androidenterprise#enterprise", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprise". 217 "name": "A String", # The name of the enterprise, for example, "Example, Inc". 218 } 219 220 221Returns: 222 An object of the form: 223 224 { # An Enterprises resource represents the binding between an EMM and a specific organization. That binding can be instantiated in one of two different ways using this API as follows: 225 # - For Google managed domain customers, the process involves using Enterprises.enroll and Enterprises.setAccount (in conjunction with artifacts obtained from the Admin console and the Google API Console) and submitted to the EMM through a more-or-less manual process. 226 # - For managed Google Play Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the managed Google Play sign-up UI (Google-provided mechanism) to create the binding without manual steps. As an EMM, you can support either or both approaches in your EMM console. See Create an Enterprise for details. 227 "administrator": [ # Admins of the enterprise. This is only supported for enterprises created via the EMM-initiated flow. 228 { # This represents an enterprise admin who can manage the enterprise in the managed Google Play store. 229 "email": "A String", # The admin's email address. 230 }, 231 ], 232 "primaryDomain": "A String", # The enterprise's primary domain, such as "example.com". 233 "id": "A String", # The unique ID for the enterprise. 234 "kind": "androidenterprise#enterprise", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprise". 235 "name": "A String", # The name of the enterprise, for example, "Example, Inc". 236 }</pre> 237</div> 238 239<div class="method"> 240 <code class="details" id="generateSignupUrl">generateSignupUrl(callbackUrl=None)</code> 241 <pre>Generates a sign-up URL. 242 243Args: 244 callbackUrl: string, The callback URL to which the Admin will be redirected after successfully creating an enterprise. Before redirecting there the system will add a single query parameter to this URL named "enterpriseToken" which will contain an opaque token to be used for the CompleteSignup request. 245Beware that this means that the URL will be parsed, the parameter added and then a new URL formatted, i.e. there may be some minor formatting changes and, more importantly, the URL must be well-formed so that it can be parsed. 246 247Returns: 248 An object of the form: 249 250 { # A resource returned by the GenerateSignupUrl API, which contains the Signup URL and Completion Token. 251 "url": "A String", # A URL under which the Admin can sign up for an enterprise. The page pointed to cannot be rendered in an iframe. 252 "kind": "androidenterprise#signupInfo", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#signupInfo". 253 "completionToken": "A String", # An opaque token that will be required, along with the Enterprise Token, for obtaining the enterprise resource from CompleteSignup. 254 }</pre> 255</div> 256 257<div class="method"> 258 <code class="details" id="get">get(enterpriseId)</code> 259 <pre>Retrieves the name and domain of an enterprise. 260 261Args: 262 enterpriseId: string, The ID of the enterprise. (required) 263 264Returns: 265 An object of the form: 266 267 { # An Enterprises resource represents the binding between an EMM and a specific organization. That binding can be instantiated in one of two different ways using this API as follows: 268 # - For Google managed domain customers, the process involves using Enterprises.enroll and Enterprises.setAccount (in conjunction with artifacts obtained from the Admin console and the Google API Console) and submitted to the EMM through a more-or-less manual process. 269 # - For managed Google Play Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the managed Google Play sign-up UI (Google-provided mechanism) to create the binding without manual steps. As an EMM, you can support either or both approaches in your EMM console. See Create an Enterprise for details. 270 "administrator": [ # Admins of the enterprise. This is only supported for enterprises created via the EMM-initiated flow. 271 { # This represents an enterprise admin who can manage the enterprise in the managed Google Play store. 272 "email": "A String", # The admin's email address. 273 }, 274 ], 275 "primaryDomain": "A String", # The enterprise's primary domain, such as "example.com". 276 "id": "A String", # The unique ID for the enterprise. 277 "kind": "androidenterprise#enterprise", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprise". 278 "name": "A String", # The name of the enterprise, for example, "Example, Inc". 279 }</pre> 280</div> 281 282<div class="method"> 283 <code class="details" id="getServiceAccount">getServiceAccount(enterpriseId, keyType=None)</code> 284 <pre>Returns a service account and credentials. The service account can be bound to the enterprise by calling setAccount. The service account is unique to this enterprise and EMM, and will be deleted if the enterprise is unbound. The credentials contain private key data and are not stored server-side. 285 286This method can only be called after calling Enterprises.Enroll or Enterprises.CompleteSignup, and before Enterprises.SetAccount; at other times it will return an error. 287 288Subsequent calls after the first will generate a new, unique set of credentials, and invalidate the previously generated credentials. 289 290Once the service account is bound to the enterprise, it can be managed using the serviceAccountKeys resource. 291 292Args: 293 enterpriseId: string, The ID of the enterprise. (required) 294 keyType: string, The type of credential to return with the service account. Required. 295 Allowed values 296 googleCredentials - 297 pkcs12 - 298 299Returns: 300 An object of the form: 301 302 { # A service account identity, including the name and credentials that can be used to authenticate as the service account. 303 "kind": "androidenterprise#serviceAccount", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#serviceAccount". 304 "name": "A String", # The account name of the service account, in the form of an email address. Assigned by the server. 305 "key": { # Credentials that can be used to authenticate as a service account. # Credentials that can be used to authenticate as this ServiceAccount. 306 "publicData": "A String", # Public key data for the credentials file. This is an X.509 cert. If you are using the googleCredentials key type, this is identical to the cert that can be retrieved by using the X.509 cert url inside of the credentials file. 307 "kind": "androidenterprise#serviceAccountKey", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#serviceAccountKey". 308 "data": "A String", # The body of the private key credentials file, in string format. This is only populated when the ServiceAccountKey is created, and is not stored by Google. 309 "id": "A String", # An opaque, unique identifier for this ServiceAccountKey. Assigned by the server. 310 "type": "A String", # The file format of the generated key data. 311 }, 312 }</pre> 313</div> 314 315<div class="method"> 316 <code class="details" id="getStoreLayout">getStoreLayout(enterpriseId)</code> 317 <pre>Returns the store layout for the enterprise. If the store layout has not been set, returns "basic" as the store layout type and no homepage. 318 319Args: 320 enterpriseId: string, The ID of the enterprise. (required) 321 322Returns: 323 An object of the form: 324 325 { # General setting for the managed Google Play store layout, currently only specifying the page to display the first time the store is opened. 326 "homepageId": "A String", # The ID of the store page to be used as the homepage. The homepage is the first page shown in the managed Google Play Store. 327 # 328 # Not specifying a homepage is equivalent to setting the store layout type to "basic". 329 "kind": "androidenterprise#storeLayout", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#storeLayout". 330 "storeLayoutType": "A String", # The store layout type. By default, this value is set to "basic" if the homepageId field is not set, and to "custom" otherwise. If set to "basic", the layout will consist of all approved apps that have been whitelisted for the user. 331 }</pre> 332</div> 333 334<div class="method"> 335 <code class="details" id="insert">insert(token, body)</code> 336 <pre>Establishes the binding between the EMM and an enterprise. This is now deprecated; use enroll instead. 337 338Args: 339 token: string, The token provided by the enterprise to register the EMM. (required) 340 body: object, The request body. (required) 341 The object takes the form of: 342 343{ # An Enterprises resource represents the binding between an EMM and a specific organization. That binding can be instantiated in one of two different ways using this API as follows: 344 # - For Google managed domain customers, the process involves using Enterprises.enroll and Enterprises.setAccount (in conjunction with artifacts obtained from the Admin console and the Google API Console) and submitted to the EMM through a more-or-less manual process. 345 # - For managed Google Play Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the managed Google Play sign-up UI (Google-provided mechanism) to create the binding without manual steps. As an EMM, you can support either or both approaches in your EMM console. See Create an Enterprise for details. 346 "administrator": [ # Admins of the enterprise. This is only supported for enterprises created via the EMM-initiated flow. 347 { # This represents an enterprise admin who can manage the enterprise in the managed Google Play store. 348 "email": "A String", # The admin's email address. 349 }, 350 ], 351 "primaryDomain": "A String", # The enterprise's primary domain, such as "example.com". 352 "id": "A String", # The unique ID for the enterprise. 353 "kind": "androidenterprise#enterprise", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprise". 354 "name": "A String", # The name of the enterprise, for example, "Example, Inc". 355 } 356 357 358Returns: 359 An object of the form: 360 361 { # An Enterprises resource represents the binding between an EMM and a specific organization. That binding can be instantiated in one of two different ways using this API as follows: 362 # - For Google managed domain customers, the process involves using Enterprises.enroll and Enterprises.setAccount (in conjunction with artifacts obtained from the Admin console and the Google API Console) and submitted to the EMM through a more-or-less manual process. 363 # - For managed Google Play Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the managed Google Play sign-up UI (Google-provided mechanism) to create the binding without manual steps. As an EMM, you can support either or both approaches in your EMM console. See Create an Enterprise for details. 364 "administrator": [ # Admins of the enterprise. This is only supported for enterprises created via the EMM-initiated flow. 365 { # This represents an enterprise admin who can manage the enterprise in the managed Google Play store. 366 "email": "A String", # The admin's email address. 367 }, 368 ], 369 "primaryDomain": "A String", # The enterprise's primary domain, such as "example.com". 370 "id": "A String", # The unique ID for the enterprise. 371 "kind": "androidenterprise#enterprise", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprise". 372 "name": "A String", # The name of the enterprise, for example, "Example, Inc". 373 }</pre> 374</div> 375 376<div class="method"> 377 <code class="details" id="list">list(domain)</code> 378 <pre>Looks up an enterprise by domain name. This is only supported for enterprises created via the Google-initiated creation flow. Lookup of the id is not needed for enterprises created via the EMM-initiated flow since the EMM learns the enterprise ID in the callback specified in the Enterprises.generateSignupUrl call. 379 380Args: 381 domain: string, The exact primary domain name of the enterprise to look up. (required) 382 383Returns: 384 An object of the form: 385 386 { # The matching enterprise resources. 387 "kind": "androidenterprise#enterprisesListResponse", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprisesListResponse". 388 "enterprise": [ # An enterprise. 389 { # An Enterprises resource represents the binding between an EMM and a specific organization. That binding can be instantiated in one of two different ways using this API as follows: 390 # - For Google managed domain customers, the process involves using Enterprises.enroll and Enterprises.setAccount (in conjunction with artifacts obtained from the Admin console and the Google API Console) and submitted to the EMM through a more-or-less manual process. 391 # - For managed Google Play Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the managed Google Play sign-up UI (Google-provided mechanism) to create the binding without manual steps. As an EMM, you can support either or both approaches in your EMM console. See Create an Enterprise for details. 392 "administrator": [ # Admins of the enterprise. This is only supported for enterprises created via the EMM-initiated flow. 393 { # This represents an enterprise admin who can manage the enterprise in the managed Google Play store. 394 "email": "A String", # The admin's email address. 395 }, 396 ], 397 "primaryDomain": "A String", # The enterprise's primary domain, such as "example.com". 398 "id": "A String", # The unique ID for the enterprise. 399 "kind": "androidenterprise#enterprise", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprise". 400 "name": "A String", # The name of the enterprise, for example, "Example, Inc". 401 }, 402 ], 403 }</pre> 404</div> 405 406<div class="method"> 407 <code class="details" id="pullNotificationSet">pullNotificationSet(requestMode=None)</code> 408 <pre>Pulls and returns a notification set for the enterprises associated with the service account authenticated for the request. The notification set may be empty if no notification are pending. 409A notification set returned needs to be acknowledged within 20 seconds by calling Enterprises.AcknowledgeNotificationSet, unless the notification set is empty. 410Notifications that are not acknowledged within the 20 seconds will eventually be included again in the response to another PullNotificationSet request, and those that are never acknowledged will ultimately be deleted according to the Google Cloud Platform Pub/Sub system policy. 411Multiple requests might be performed concurrently to retrieve notifications, in which case the pending notifications (if any) will be split among each caller, if any are pending. 412If no notifications are present, an empty notification list is returned. Subsequent requests may return more notifications once they become available. 413 414Args: 415 requestMode: string, The request mode for pulling notifications. 416Specifying waitForNotifications will cause the request to block and wait until one or more notifications are present, or return an empty notification list if no notifications are present after some time. 417Speciying returnImmediately will cause the request to immediately return the pending notifications, or an empty list if no notifications are present. 418If omitted, defaults to waitForNotifications. 419 Allowed values 420 returnImmediately - 421 waitForNotifications - 422 423Returns: 424 An object of the form: 425 426 { # A resource returned by the PullNotificationSet API, which contains a collection of notifications for enterprises associated with the service account authenticated for the request. 427 "notification": [ # The notifications received, or empty if no notifications are present. 428 { # A notification of one event relating to an enterprise. 429 "appRestrictionsSchemaChangeEvent": { # An event generated when a new app version is uploaded to Google Play and its app restrictions schema changed. To fetch the app restrictions schema for an app, use Products.getAppRestrictionsSchema on the EMM API. # Notifications about new app restrictions schema changes. 430 "productId": "A String", # The id of the product (e.g. "app:com.google.android.gm") for which the app restriction schema changed. This field will always be present. 431 }, 432 "newPermissionsEvent": { # An event generated when new permissions are added to an app. # Notifications about new app permissions. 433 "approvedPermissions": [ # The set of permissions that the enterprise admin has already approved for this application. Use Permissions.Get on the EMM API to retrieve details about these permissions. 434 "A String", 435 ], 436 "requestedPermissions": [ # The set of permissions that the app is currently requesting. Use Permissions.Get on the EMM API to retrieve details about these permissions. 437 "A String", 438 ], 439 "productId": "A String", # The id of the product (e.g. "app:com.google.android.gm") for which new permissions were added. This field will always be present. 440 }, 441 "notificationType": "A String", # Type of the notification. 442 "productAvailabilityChangeEvent": { # An event generated whenever a product's availability changes. # Notifications about product availability changes. 443 "availabilityStatus": "A String", # The new state of the product. This field will always be present. 444 "productId": "A String", # The id of the product (e.g. "app:com.google.android.gm") for which the product availability changed. This field will always be present. 445 }, 446 "productApprovalEvent": { # An event generated when a product's approval status is changed. # Notifications about changes to a product's approval status. 447 "approved": "A String", # Whether the product was approved or unapproved. This field will always be present. 448 "productId": "A String", # The id of the product (e.g. "app:com.google.android.gm") for which the approval status has changed. This field will always be present. 449 }, 450 "enterpriseId": "A String", # The ID of the enterprise for which the notification is sent. This will always be present. 451 "newDeviceEvent": { # An event generated when a new device is ready to be managed. # Notifications about new devices. 452 "userId": "A String", # The ID of the user. This field will always be present. 453 "deviceId": "A String", # The Android ID of the device. This field will always be present. 454 "managementType": "A String", # Identifies the extent to which the device is controlled by an Android EMM in various deployment configurations. 455 # 456 # Possible values include: 457 # - "managedDevice", a device where the DPC is set as device owner, 458 # - "managedProfile", a device where the DPC is set as profile owner. 459 }, 460 "installFailureEvent": { # An event generated when an app installation failed on a device # Notifications about an app installation failure. 461 "productId": "A String", # The id of the product (e.g. "app:com.google.android.gm") for which the install failure event occured. This field will always be present. 462 "userId": "A String", # The ID of the user. This field will always be present. 463 "deviceId": "A String", # The Android ID of the device. This field will always be present. 464 "failureDetails": "A String", # Additional details on the failure if applicable. 465 "failureReason": "A String", # The reason for the installation failure. This field will always be present. 466 }, 467 "appUpdateEvent": { # An event generated when a new version of an app is uploaded to Google Play. Notifications are sent for new public versions only: alpha, beta, or canary versions do not generate this event. To fetch up-to-date version history for an app, use Products.Get on the EMM API. # Notifications about app updates. 468 "productId": "A String", # The id of the product (e.g. "app:com.google.android.gm") that was updated. This field will always be present. 469 }, 470 "timestampMillis": "A String", # The time when the notification was published in milliseconds since 1970-01-01T00:00:00Z. This will always be present. 471 }, 472 ], 473 "kind": "androidenterprise#notificationSet", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#notificationSet". 474 "notificationSetId": "A String", # The notification set ID, required to mark the notification as received with the Enterprises.AcknowledgeNotification API. This will be omitted if no notifications are present. 475 }</pre> 476</div> 477 478<div class="method"> 479 <code class="details" id="sendTestPushNotification">sendTestPushNotification(enterpriseId)</code> 480 <pre>Sends a test push notification to validate the EMM integration with the Google Cloud Pub/Sub service for this enterprise. 481 482Args: 483 enterpriseId: string, The ID of the enterprise. (required) 484 485Returns: 486 An object of the form: 487 488 { 489 "topicName": "A String", # The name of the Cloud Pub/Sub topic to which notifications for this enterprise's enrolled account will be sent. 490 "messageId": "A String", # The message ID of the test push notification that was sent. 491 }</pre> 492</div> 493 494<div class="method"> 495 <code class="details" id="setAccount">setAccount(enterpriseId, body)</code> 496 <pre>Sets the account that will be used to authenticate to the API as the enterprise. 497 498Args: 499 enterpriseId: string, The ID of the enterprise. (required) 500 body: object, The request body. (required) 501 The object takes the form of: 502 503{ # A service account that can be used to authenticate as the enterprise to API calls that require such authentication. 504 "kind": "androidenterprise#enterpriseAccount", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterpriseAccount". 505 "accountEmail": "A String", # The email address of the service account. 506 } 507 508 509Returns: 510 An object of the form: 511 512 { # A service account that can be used to authenticate as the enterprise to API calls that require such authentication. 513 "kind": "androidenterprise#enterpriseAccount", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterpriseAccount". 514 "accountEmail": "A String", # The email address of the service account. 515 }</pre> 516</div> 517 518<div class="method"> 519 <code class="details" id="setStoreLayout">setStoreLayout(enterpriseId, body)</code> 520 <pre>Sets the store layout for the enterprise. By default, storeLayoutType is set to "basic" and the basic store layout is enabled. The basic layout only contains apps approved by the admin, and that have been added to the available product set for a user (using the setAvailableProductSet call). Apps on the page are sorted in order of their product ID value. If you create a custom store layout (by setting storeLayoutType = "custom" and setting a homepage), the basic store layout is disabled. 521 522Args: 523 enterpriseId: string, The ID of the enterprise. (required) 524 body: object, The request body. (required) 525 The object takes the form of: 526 527{ # General setting for the managed Google Play store layout, currently only specifying the page to display the first time the store is opened. 528 "homepageId": "A String", # The ID of the store page to be used as the homepage. The homepage is the first page shown in the managed Google Play Store. 529 # 530 # Not specifying a homepage is equivalent to setting the store layout type to "basic". 531 "kind": "androidenterprise#storeLayout", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#storeLayout". 532 "storeLayoutType": "A String", # The store layout type. By default, this value is set to "basic" if the homepageId field is not set, and to "custom" otherwise. If set to "basic", the layout will consist of all approved apps that have been whitelisted for the user. 533} 534 535 536Returns: 537 An object of the form: 538 539 { # General setting for the managed Google Play store layout, currently only specifying the page to display the first time the store is opened. 540 "homepageId": "A String", # The ID of the store page to be used as the homepage. The homepage is the first page shown in the managed Google Play Store. 541 # 542 # Not specifying a homepage is equivalent to setting the store layout type to "basic". 543 "kind": "androidenterprise#storeLayout", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#storeLayout". 544 "storeLayoutType": "A String", # The store layout type. By default, this value is set to "basic" if the homepageId field is not set, and to "custom" otherwise. If set to "basic", the layout will consist of all approved apps that have been whitelisted for the user. 545 }</pre> 546</div> 547 548<div class="method"> 549 <code class="details" id="unenroll">unenroll(enterpriseId)</code> 550 <pre>Unenrolls an enterprise from the calling EMM. 551 552Args: 553 enterpriseId: string, The ID of the enterprise. (required) 554</pre> 555</div> 556 557</body></html>