File: androidenterprise_v1.enterprises.html

package info (click to toggle)
python-googleapi 1.5.5-1
  • links: PTS
  • area: main
  • in suites: buster, stretch
  • size: 39,832 kB
  • ctags: 5,921
  • sloc: python: 7,176; makefile: 64; sh: 53; xml: 5
file content (552 lines) | stat: -rw-r--r-- 37,319 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="androidenterprise_v1.html">Google Play EMM API</a> . <a href="androidenterprise_v1.enterprises.html">enterprises</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#acknowledgeNotificationSet">acknowledgeNotificationSet(notificationSetId=None)</a></code></p>
<p class="firstline">Acknowledges notifications that were received from Enterprises.PullNotificationSet to prevent subsequent calls from returning the same notifications.</p>
<p class="toc_element">
  <code><a href="#completeSignup">completeSignup(completionToken=None, enterpriseToken=None)</a></code></p>
<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>
<p class="toc_element">
  <code><a href="#createWebToken">createWebToken(enterpriseId, body)</a></code></p>
<p class="firstline">Returns a unique token to access an embeddable UI. To generate a web UI, pass the generated token into the Play for Work javascript API. Each token may only be used to start one UI session. See the javascript API documentation for further information.</p>
<p class="toc_element">
  <code><a href="#delete">delete(enterpriseId)</a></code></p>
<p class="firstline">Deletes the binding between the EMM and enterprise. This is now deprecated; use this to unenroll customers that were previously enrolled with the 'insert' call, then enroll them again with the 'enroll' call.</p>
<p class="toc_element">
  <code><a href="#enroll">enroll(token, body)</a></code></p>
<p class="firstline">Enrolls an enterprise with the calling EMM.</p>
<p class="toc_element">
  <code><a href="#generateSignupUrl">generateSignupUrl(callbackUrl=None)</a></code></p>
<p class="firstline">Generates a sign-up URL.</p>
<p class="toc_element">
  <code><a href="#get">get(enterpriseId)</a></code></p>
<p class="firstline">Retrieves the name and domain of an enterprise.</p>
<p class="toc_element">
  <code><a href="#getServiceAccount">getServiceAccount(enterpriseId, keyType=None)</a></code></p>
<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>
<p class="toc_element">
  <code><a href="#getStoreLayout">getStoreLayout(enterpriseId)</a></code></p>
<p class="firstline">Returns the store layout for the enterprise. If the store layout has not been set, or if the store layout has no homepageId set, returns a NOT_FOUND error.</p>
<p class="toc_element">
  <code><a href="#insert">insert(token, body)</a></code></p>
<p class="firstline">Establishes the binding between the EMM and an enterprise. This is now deprecated; use enroll instead.</p>
<p class="toc_element">
  <code><a href="#list">list(domain)</a></code></p>
<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>
<p class="toc_element">
  <code><a href="#pullNotificationSet">pullNotificationSet(requestMode=None)</a></code></p>
<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>
<p class="toc_element">
  <code><a href="#sendTestPushNotification">sendTestPushNotification(enterpriseId)</a></code></p>
<p class="firstline">Sends a test push notification to validate the EMM integration with the Google Cloud Pub/Sub service for this enterprise.</p>
<p class="toc_element">
  <code><a href="#setAccount">setAccount(enterpriseId, body)</a></code></p>
<p class="firstline">Set the account that will be used to authenticate to the API as the enterprise.</p>
<p class="toc_element">
  <code><a href="#setStoreLayout">setStoreLayout(enterpriseId, body)</a></code></p>
<p class="firstline">Sets the store layout for the enterprise.</p>
<p class="toc_element">
  <code><a href="#unenroll">unenroll(enterpriseId)</a></code></p>
<p class="firstline">Unenrolls an enterprise from the calling EMM.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="acknowledgeNotificationSet">acknowledgeNotificationSet(notificationSetId=None)</code>
  <pre>Acknowledges notifications that were received from Enterprises.PullNotificationSet to prevent subsequent calls from returning the same notifications.

Args:
  notificationSetId: string, The notification set ID as returned by Enterprises.PullNotificationSet. This must be provided.
</pre>
</div>

<div class="method">
    <code class="details" id="completeSignup">completeSignup(completionToken=None, enterpriseToken=None)</code>
  <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.

Args:
  completionToken: string, The Completion token initially returned by GenerateSignupUrl.
  enterpriseToken: string, The Enterprise token appended to the Callback URL.

Returns:
  An object of the form:

    { # 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:
        # - 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.
        # - For Android for Work Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the Android for Work 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.
      "administrator": [ # Administrators of the enterprise. This is only supported for enterprises created via the EMM-initiated flow.
        { # This represents an enterprise administrator who can manage the enterprise in the Google Play for Work Store.
          "email": "A String", # The administrator's email address.
        },
      ],
      "primaryDomain": "A String", # The enterprise's primary domain, such as "example.com".
      "id": "A String", # The unique ID for the enterprise.
      "kind": "androidenterprise#enterprise", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprise".
      "name": "A String", # The name of the enterprise, for example, "Example, Inc".
    }</pre>
</div>

<div class="method">
    <code class="details" id="createWebToken">createWebToken(enterpriseId, body)</code>
  <pre>Returns a unique token to access an embeddable UI. To generate a web UI, pass the generated token into the Play for Work javascript API. Each token may only be used to start one UI session. See the javascript API documentation for further information.

Args:
  enterpriseId: string, The ID of the enterprise. (required)
  body: object, The request body. (required)
    The object takes the form of:

{ # 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.
    "kind": "androidenterprise#administratorWebTokenSpec", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#administratorWebTokenSpec".
    "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.
    "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.
      "A String",
    ],
  }


Returns:
  An object of the form:

    { # A token authorizing an administrator to access an iframe.
    "kind": "androidenterprise#administratorWebToken", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#administratorWebToken".
    "token": "A String", # An opaque token to be passed to the Play front-end to generate an iframe.
  }</pre>
</div>

<div class="method">
    <code class="details" id="delete">delete(enterpriseId)</code>
  <pre>Deletes the binding between the EMM and enterprise. This is now deprecated; use this to unenroll customers that were previously enrolled with the 'insert' call, then enroll them again with the 'enroll' call.

Args:
  enterpriseId: string, The ID of the enterprise. (required)
</pre>
</div>

<div class="method">
    <code class="details" id="enroll">enroll(token, body)</code>
  <pre>Enrolls an enterprise with the calling EMM.

Args:
  token: string, The token provided by the enterprise to register the EMM. (required)
  body: object, The request body. (required)
    The object takes the form of:

{ # 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:
      # - 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.
      # - For Android for Work Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the Android for Work 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.
    "administrator": [ # Administrators of the enterprise. This is only supported for enterprises created via the EMM-initiated flow.
      { # This represents an enterprise administrator who can manage the enterprise in the Google Play for Work Store.
        "email": "A String", # The administrator's email address.
      },
    ],
    "primaryDomain": "A String", # The enterprise's primary domain, such as "example.com".
    "id": "A String", # The unique ID for the enterprise.
    "kind": "androidenterprise#enterprise", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprise".
    "name": "A String", # The name of the enterprise, for example, "Example, Inc".
  }


Returns:
  An object of the form:

    { # 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:
        # - 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.
        # - For Android for Work Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the Android for Work 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.
      "administrator": [ # Administrators of the enterprise. This is only supported for enterprises created via the EMM-initiated flow.
        { # This represents an enterprise administrator who can manage the enterprise in the Google Play for Work Store.
          "email": "A String", # The administrator's email address.
        },
      ],
      "primaryDomain": "A String", # The enterprise's primary domain, such as "example.com".
      "id": "A String", # The unique ID for the enterprise.
      "kind": "androidenterprise#enterprise", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprise".
      "name": "A String", # The name of the enterprise, for example, "Example, Inc".
    }</pre>
</div>

<div class="method">
    <code class="details" id="generateSignupUrl">generateSignupUrl(callbackUrl=None)</code>
  <pre>Generates a sign-up URL.

Args:
  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.
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.

Returns:
  An object of the form:

    { # A resource returned by the GenerateSignupUrl API, which contains the Signup URL and Completion Token.
    "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.
    "kind": "androidenterprise#signupInfo", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#signupInfo".
    "completionToken": "A String", # An opaque token that will be required, along with the Enterprise Token, for obtaining the enterprise resource from CompleteSignup.
  }</pre>
</div>

<div class="method">
    <code class="details" id="get">get(enterpriseId)</code>
  <pre>Retrieves the name and domain of an enterprise.

Args:
  enterpriseId: string, The ID of the enterprise. (required)

Returns:
  An object of the form:

    { # 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:
        # - 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.
        # - For Android for Work Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the Android for Work 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.
      "administrator": [ # Administrators of the enterprise. This is only supported for enterprises created via the EMM-initiated flow.
        { # This represents an enterprise administrator who can manage the enterprise in the Google Play for Work Store.
          "email": "A String", # The administrator's email address.
        },
      ],
      "primaryDomain": "A String", # The enterprise's primary domain, such as "example.com".
      "id": "A String", # The unique ID for the enterprise.
      "kind": "androidenterprise#enterprise", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprise".
      "name": "A String", # The name of the enterprise, for example, "Example, Inc".
    }</pre>
</div>

<div class="method">
    <code class="details" id="getServiceAccount">getServiceAccount(enterpriseId, keyType=None)</code>
  <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.

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.

Subsequent calls after the first will generate a new, unique set of credentials, and invalidate the previously generated credentials.

Once the service account is bound to the enterprise, it can be managed using the serviceAccountKeys resource.

Args:
  enterpriseId: string, The ID of the enterprise. (required)
  keyType: string, The type of credential to return with the service account. Required.
    Allowed values
      googleCredentials - 
      pkcs12 - 

Returns:
  An object of the form:

    { # A service account identity, including the name and credentials that can be used to authenticate as the service account.
    "kind": "androidenterprise#serviceAccount", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#serviceAccount".
    "name": "A String", # The account name of the service account, in the form of an email address. Assigned by the server.
    "key": { # Credentials that can be used to authenticate as a service account. # Credentials that can be used to authenticate as this ServiceAccount.
      "type": "A String", # The file format of the generated key data.
      "kind": "androidenterprise#serviceAccountKey", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#serviceAccountKey".
      "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.
      "id": "A String", # An opaque, unique identifier for this ServiceAccountKey. Assigned by the server.
    },
  }</pre>
</div>

<div class="method">
    <code class="details" id="getStoreLayout">getStoreLayout(enterpriseId)</code>
  <pre>Returns the store layout for the enterprise. If the store layout has not been set, or if the store layout has no homepageId set, returns a NOT_FOUND error.

Args:
  enterpriseId: string, The ID of the enterprise. (required)

Returns:
  An object of the form:

    { # General setting for the Google Play for Work store layout, currently only specifying the page to display the first time the store is opened.
    "homepageId": "A String", # The ID of the store page to be used as the homepage. The homepage will be used as the first page shown in the Google Play for Work store.
        #
        # If a homepage has not been set, the Play store shown on devices will be empty. Not specifying a homepage on a store layout effectively empties the store.
        #
        # If there exists at least one page, this field must be set to the ID of a valid page.
    "kind": "androidenterprise#storeLayout", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#storeLayout".
    "storeLayoutType": "A String", # Sets a store layout type. If set to "custom", "homepageId" must be specified. If set to "basic", the layout will consist of all approved apps accessible by the user, split in pages of 100 each; in this case, "homepageId" must not be specified. The "basic" setting takes precedence over any existing collections setup for this enterprise (if any). Should the enterprise use collectionViewers for controlling access rights, these will still be respected.
  }</pre>
</div>

<div class="method">
    <code class="details" id="insert">insert(token, body)</code>
  <pre>Establishes the binding between the EMM and an enterprise. This is now deprecated; use enroll instead.

Args:
  token: string, The token provided by the enterprise to register the EMM. (required)
  body: object, The request body. (required)
    The object takes the form of:

{ # 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:
      # - 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.
      # - For Android for Work Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the Android for Work 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.
    "administrator": [ # Administrators of the enterprise. This is only supported for enterprises created via the EMM-initiated flow.
      { # This represents an enterprise administrator who can manage the enterprise in the Google Play for Work Store.
        "email": "A String", # The administrator's email address.
      },
    ],
    "primaryDomain": "A String", # The enterprise's primary domain, such as "example.com".
    "id": "A String", # The unique ID for the enterprise.
    "kind": "androidenterprise#enterprise", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprise".
    "name": "A String", # The name of the enterprise, for example, "Example, Inc".
  }


Returns:
  An object of the form:

    { # 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:
        # - 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.
        # - For Android for Work Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the Android for Work 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.
      "administrator": [ # Administrators of the enterprise. This is only supported for enterprises created via the EMM-initiated flow.
        { # This represents an enterprise administrator who can manage the enterprise in the Google Play for Work Store.
          "email": "A String", # The administrator's email address.
        },
      ],
      "primaryDomain": "A String", # The enterprise's primary domain, such as "example.com".
      "id": "A String", # The unique ID for the enterprise.
      "kind": "androidenterprise#enterprise", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprise".
      "name": "A String", # The name of the enterprise, for example, "Example, Inc".
    }</pre>
</div>

<div class="method">
    <code class="details" id="list">list(domain)</code>
  <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.

Args:
  domain: string, The exact primary domain name of the enterprise to look up. (required)

Returns:
  An object of the form:

    { # The matching enterprise resources.
    "kind": "androidenterprise#enterprisesListResponse", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprisesListResponse".
    "enterprise": [ # An enterprise.
      { # 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:
            # - 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.
            # - For Android for Work Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the Android for Work 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.
          "administrator": [ # Administrators of the enterprise. This is only supported for enterprises created via the EMM-initiated flow.
            { # This represents an enterprise administrator who can manage the enterprise in the Google Play for Work Store.
              "email": "A String", # The administrator's email address.
            },
          ],
          "primaryDomain": "A String", # The enterprise's primary domain, such as "example.com".
          "id": "A String", # The unique ID for the enterprise.
          "kind": "androidenterprise#enterprise", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterprise".
          "name": "A String", # The name of the enterprise, for example, "Example, Inc".
        },
    ],
  }</pre>
</div>

<div class="method">
    <code class="details" id="pullNotificationSet">pullNotificationSet(requestMode=None)</code>
  <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.
A notification set returned needs to be acknowledged within 20 seconds by calling Enterprises​.AcknowledgeNotificationSet, unless the notification set is empty.
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.
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.
If no notifications are present, an empty notification list is returned. Subsequent requests may return more notifications once they become available.

Args:
  requestMode: string, The request mode for pulling notifications.
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.
Speciying returnImmediately will cause the request to immediately return the pending notifications, or an empty list if no notifications are present.
If omitted, defaults to waitForNotifications.
    Allowed values
      returnImmediately - 
      waitForNotifications - 

Returns:
  An object of the form:

    { # A resource returned by the PullNotificationSet API, which contains a collection of notifications for enterprises associated with the service account authenticated for the request.
    "notification": [ # The notifications received, or empty if no notifications are present.
      { # A notification of one event relating to an enterprise.
        "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.
          "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.
        },
        "newPermissionsEvent": { # An event generated when new permissions are added to an app. # Notifications about new app permissions.
          "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.
            "A String",
          ],
          "requestedPermissions": [ # The set of permissions that the app is currently requesting. Use Permissions.Get on the EMM API to retrieve details about these permissions.
            "A String",
          ],
          "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.
        },
        "productAvailabilityChangeEvent": { # An event generated whenever a product's availability changes. # Notifications about product availability changes.
          "availabilityStatus": "A String", # The new state of the product. This field will always be present.
          "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.
        },
        "productApprovalEvent": { # An event generated when a product's approval status is changed. # Notifications about changes to a product's approval status.
          "approved": "A String", # Whether the product was approved or unapproved. This field will always be present.
          "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.
        },
        "enterpriseId": "A String", # The ID of the enterprise for which the notification is sent. This will always be present.
        "installFailureEvent": { # An event generated when an app installation failed on a device # Notifications about an app installation failure.
          "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.
          "userId": "A String", # The ID of the user. This field will always be present.
          "deviceId": "A String", # The Android ID of the device. This field will always be present.
          "failureDetails": "A String", # Additional details on the failure if applicable.
          "failureReason": "A String", # The reason for the installation failure. This field will always be present.
        },
        "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.
          "productId": "A String", # The id of the product (e.g. "app:com.google.android.gm") that was updated. This field will always be present.
        },
        "timestampMillis": "A String", # The time when the notification was published in milliseconds since 1970-01-01T00:00:00Z. This will always be present.
      },
    ],
    "kind": "androidenterprise#notificationSet", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#notificationSet".
    "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.
  }</pre>
</div>

<div class="method">
    <code class="details" id="sendTestPushNotification">sendTestPushNotification(enterpriseId)</code>
  <pre>Sends a test push notification to validate the EMM integration with the Google Cloud Pub/Sub service for this enterprise.

Args:
  enterpriseId: string, The ID of the enterprise. (required)

Returns:
  An object of the form:

    {
    "topicName": "A String", # The name of the Cloud Pub/Sub topic to which notifications for this enterprise's enrolled account will be sent.
    "messageId": "A String", # The message ID of the test push notification that was sent.
  }</pre>
</div>

<div class="method">
    <code class="details" id="setAccount">setAccount(enterpriseId, body)</code>
  <pre>Set the account that will be used to authenticate to the API as the enterprise.

Args:
  enterpriseId: string, The ID of the enterprise. (required)
  body: object, The request body. (required)
    The object takes the form of:

{ # A service account that can be used to authenticate as the enterprise to API calls that require such authentication.
    "kind": "androidenterprise#enterpriseAccount", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterpriseAccount".
    "accountEmail": "A String", # The email address of the service account.
  }


Returns:
  An object of the form:

    { # A service account that can be used to authenticate as the enterprise to API calls that require such authentication.
      "kind": "androidenterprise#enterpriseAccount", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#enterpriseAccount".
      "accountEmail": "A String", # The email address of the service account.
    }</pre>
</div>

<div class="method">
    <code class="details" id="setStoreLayout">setStoreLayout(enterpriseId, body)</code>
  <pre>Sets the store layout for the enterprise.

Args:
  enterpriseId: string, The ID of the enterprise. (required)
  body: object, The request body. (required)
    The object takes the form of:

{ # General setting for the Google Play for Work store layout, currently only specifying the page to display the first time the store is opened.
  "homepageId": "A String", # The ID of the store page to be used as the homepage. The homepage will be used as the first page shown in the Google Play for Work store.
      # 
      # If a homepage has not been set, the Play store shown on devices will be empty. Not specifying a homepage on a store layout effectively empties the store.
      # 
      # If there exists at least one page, this field must be set to the ID of a valid page.
  "kind": "androidenterprise#storeLayout", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#storeLayout".
  "storeLayoutType": "A String", # Sets a store layout type. If set to "custom", "homepageId" must be specified. If set to "basic", the layout will consist of all approved apps accessible by the user, split in pages of 100 each; in this case, "homepageId" must not be specified. The "basic" setting takes precedence over any existing collections setup for this enterprise (if any). Should the enterprise use collectionViewers for controlling access rights, these will still be respected.
}


Returns:
  An object of the form:

    { # General setting for the Google Play for Work store layout, currently only specifying the page to display the first time the store is opened.
    "homepageId": "A String", # The ID of the store page to be used as the homepage. The homepage will be used as the first page shown in the Google Play for Work store.
        #
        # If a homepage has not been set, the Play store shown on devices will be empty. Not specifying a homepage on a store layout effectively empties the store.
        #
        # If there exists at least one page, this field must be set to the ID of a valid page.
    "kind": "androidenterprise#storeLayout", # Identifies what kind of resource this is. Value: the fixed string "androidenterprise#storeLayout".
    "storeLayoutType": "A String", # Sets a store layout type. If set to "custom", "homepageId" must be specified. If set to "basic", the layout will consist of all approved apps accessible by the user, split in pages of 100 each; in this case, "homepageId" must not be specified. The "basic" setting takes precedence over any existing collections setup for this enterprise (if any). Should the enterprise use collectionViewers for controlling access rights, these will still be respected.
  }</pre>
</div>

<div class="method">
    <code class="details" id="unenroll">unenroll(enterpriseId)</code>
  <pre>Unenrolls an enterprise from the calling EMM.

Args:
  enterpriseId: string, The ID of the enterprise. (required)
</pre>
</div>

</body></html>