Home | History | Annotate | Download | only in dyn
      1 <html><body>
      2 <style>
      3 
      4 body, 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 
     15 body {
     16   font-size: 13px;
     17   padding: 1em;
     18 }
     19 
     20 h1 {
     21   font-size: 26px;
     22   margin-bottom: 1em;
     23 }
     24 
     25 h2 {
     26   font-size: 24px;
     27   margin-bottom: 1em;
     28 }
     29 
     30 h3 {
     31   font-size: 20px;
     32   margin-bottom: 1em;
     33   margin-top: 1em;
     34 }
     35 
     36 pre, code {
     37   line-height: 1.5;
     38   font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
     39 }
     40 
     41 pre {
     42   margin-top: 0.5em;
     43 }
     44 
     45 h1, h2, h3, p {
     46   font-family: Arial, sans serif;
     47 }
     48 
     49 h1, 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 
    130 Args:
    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 
    139 Args:
    140   completionToken: string, The Completion token initially returned by GenerateSignupUrl.
    141   enterpriseToken: string, The Enterprise token appended to the Callback URL.
    142 
    143 Returns:
    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 
    165 Args:
    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 
    179 Returns:
    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 
    192 Args:
    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 
    201 Args:
    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 
    221 Returns:
    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 
    243 Args:
    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.
    245 Beware 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 
    247 Returns:
    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 
    261 Args:
    262   enterpriseId: string, The ID of the enterprise. (required)
    263 
    264 Returns:
    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 
    286 This 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 
    288 Subsequent calls after the first will generate a new, unique set of credentials, and invalidate the previously generated credentials.
    289 
    290 Once the service account is bound to the enterprise, it can be managed using the serviceAccountKeys resource.
    291 
    292 Args:
    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 
    299 Returns:
    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 
    319 Args:
    320   enterpriseId: string, The ID of the enterprise. (required)
    321 
    322 Returns:
    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 
    338 Args:
    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 
    358 Returns:
    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 
    380 Args:
    381   domain: string, The exact primary domain name of the enterprise to look up. (required)
    382 
    383 Returns:
    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.
    409 A notification set returned needs to be acknowledged within 20 seconds by calling Enterprises.AcknowledgeNotificationSet, unless the notification set is empty.
    410 Notifications 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.
    411 Multiple 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.
    412 If no notifications are present, an empty notification list is returned. Subsequent requests may return more notifications once they become available.
    413 
    414 Args:
    415   requestMode: string, The request mode for pulling notifications.
    416 Specifying 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.
    417 Speciying returnImmediately will cause the request to immediately return the pending notifications, or an empty list if no notifications are present.
    418 If omitted, defaults to waitForNotifications.
    419     Allowed values
    420       returnImmediately - 
    421       waitForNotifications - 
    422 
    423 Returns:
    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 
    482 Args:
    483   enterpriseId: string, The ID of the enterprise. (required)
    484 
    485 Returns:
    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 
    498 Args:
    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 
    509 Returns:
    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 
    522 Args:
    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 
    536 Returns:
    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 
    552 Args:
    553   enterpriseId: string, The ID of the enterprise. (required)
    554 </pre>
    555 </div>
    556 
    557 </body></html>