@maxim_mazurok/gapi.client.cloudidentity-v1 0.0.20220808

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.d.ts ADDED
@@ -0,0 +1,2570 @@
1
+ /* Type definitions for non-npm package Cloud Identity API v1 0.0 */
2
+ // Project: https://cloud.google.com/identity/
3
+ // Definitions by: Maxim Mazurok <https://github.com/Maxim-Mazurok>
4
+ // Nick Amoscato <https://github.com/namoscato>
5
+ // Declan Vong <https://github.com/declanvong>
6
+ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
7
+ // TypeScript Version: 2.8
8
+
9
+ // IMPORTANT
10
+ // This file was generated by https://github.com/Maxim-Mazurok/google-api-typings-generator. Please do not edit it manually.
11
+ // In case of any problems please post issue to https://github.com/Maxim-Mazurok/google-api-typings-generator
12
+ // Generated from: https://cloudidentity.googleapis.com/$discovery/rest?version=v1
13
+ // Revision: 20220808
14
+
15
+ /// <reference types="gapi.client" />
16
+
17
+ declare namespace gapi.client {
18
+ /** Load Cloud Identity API v1 */
19
+ function load(urlOrObject: "https://cloudidentity.googleapis.com/$discovery/rest?version=v1"): Promise<void>;
20
+ /** @deprecated Please load APIs with discovery documents. */
21
+ function load(name: "cloudidentity", version: "v1"): Promise<void>;
22
+ /** @deprecated Please load APIs with discovery documents. */
23
+ function load(name: "cloudidentity", version: "v1", callback: () => any): void;
24
+
25
+ namespace cloudidentity {
26
+ // tslint:disable-next-line:no-empty-interface
27
+ interface CancelUserInvitationRequest {
28
+ }
29
+ interface CheckTransitiveMembershipResponse {
30
+ /**
31
+ * Response does not include the possible roles of a member since the behavior of this rpc is not all-or-nothing unlike the other rpcs. So, it may not be possible to list all the roles
32
+ * definitively, due to possible lack of authorization in some of the paths.
33
+ */
34
+ hasMembership?: boolean;
35
+ }
36
+ // tslint:disable-next-line:no-empty-interface
37
+ interface CreateGroupMetadata {
38
+ }
39
+ // tslint:disable-next-line:no-empty-interface
40
+ interface CreateMembershipMetadata {
41
+ }
42
+ // tslint:disable-next-line:no-empty-interface
43
+ interface DeleteGroupMetadata {
44
+ }
45
+ // tslint:disable-next-line:no-empty-interface
46
+ interface DeleteMembershipMetadata {
47
+ }
48
+ interface DynamicGroupMetadata {
49
+ /** Memberships will be the union of all queries. Only one entry with USER resource is currently supported. Customers can create up to 100 dynamic groups. */
50
+ queries?: DynamicGroupQuery[];
51
+ /** Output only. Status of the dynamic group. */
52
+ status?: DynamicGroupStatus;
53
+ }
54
+ interface DynamicGroupQuery {
55
+ /**
56
+ * Query that determines the memberships of the dynamic group. Examples: All users with at least one `organizations.department` of engineering. `user.organizations.exists(org,
57
+ * org.department=='engineering')` All users with at least one location that has `area` of `foo` and `building_id` of `bar`. `user.locations.exists(loc, loc.area=='foo' &&
58
+ * loc.building_id=='bar')` All users with any variation of the name John Doe (case-insensitive queries add `equalsIgnoreCase()` to the value being queried).
59
+ * `user.name.value.equalsIgnoreCase('jOhn DoE')`
60
+ */
61
+ query?: string;
62
+ /** Resource type for the Dynamic Group Query */
63
+ resourceType?: string;
64
+ }
65
+ interface DynamicGroupStatus {
66
+ /** Status of the dynamic group. */
67
+ status?: string;
68
+ /**
69
+ * The latest time at which the dynamic group is guaranteed to be in the given status. If status is `UP_TO_DATE`, the latest time at which the dynamic group was confirmed to be
70
+ * up-to-date. If status is `UPDATING_MEMBERSHIPS`, the time at which dynamic group was created.
71
+ */
72
+ statusTime?: string;
73
+ }
74
+ interface EntityKey {
75
+ /**
76
+ * The ID of the entity. For Google-managed entities, the `id` should be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a
77
+ * string conforming to the Identity Source's requirements. Must be unique within a `namespace`.
78
+ */
79
+ id?: string;
80
+ /**
81
+ * The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the `EntityKey`
82
+ * represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of
83
+ * `identitysources/{identity_source}`.
84
+ */
85
+ namespace?: string;
86
+ }
87
+ interface ExpiryDetail {
88
+ /** The time at which the `MembershipRole` will expire. */
89
+ expireTime?: string;
90
+ }
91
+ // tslint:disable-next-line:no-empty-interface
92
+ interface GetMembershipGraphMetadata {
93
+ }
94
+ interface GetMembershipGraphResponse {
95
+ /** The membership graph's path information represented as an adjacency list. */
96
+ adjacencyList?: MembershipAdjacencyList[];
97
+ /**
98
+ * The resources representing each group in the adjacency list. Each group in this list can be correlated to a 'group' of the MembershipAdjacencyList using the 'name' of the Group
99
+ * resource.
100
+ */
101
+ groups?: Group[];
102
+ }
103
+ interface GoogleAppsCloudidentityDevicesV1AndroidAttributes {
104
+ /** Whether applications from unknown sources can be installed on device. */
105
+ enabledUnknownSources?: boolean;
106
+ /** Whether this account is on an owner/primary profile. For phones, only true for owner profiles. Android 4+ devices can have secondary or restricted user profiles. */
107
+ ownerProfileAccount?: boolean;
108
+ /** Ownership privileges on device. */
109
+ ownershipPrivilege?: string;
110
+ /** Whether device supports Android work profiles. If false, this service will not block access to corp data even if an administrator turns on the "Enforce Work Profile" policy. */
111
+ supportsWorkProfile?: boolean;
112
+ }
113
+ // tslint:disable-next-line:no-empty-interface
114
+ interface GoogleAppsCloudidentityDevicesV1ApproveDeviceUserMetadata {
115
+ }
116
+ interface GoogleAppsCloudidentityDevicesV1ApproveDeviceUserRequest {
117
+ /**
118
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If
119
+ * you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
120
+ */
121
+ customer?: string;
122
+ }
123
+ interface GoogleAppsCloudidentityDevicesV1ApproveDeviceUserResponse {
124
+ /** Resultant DeviceUser object for the action. */
125
+ deviceUser?: GoogleAppsCloudidentityDevicesV1DeviceUser;
126
+ }
127
+ // tslint:disable-next-line:no-empty-interface
128
+ interface GoogleAppsCloudidentityDevicesV1BlockDeviceUserMetadata {
129
+ }
130
+ interface GoogleAppsCloudidentityDevicesV1BlockDeviceUserRequest {
131
+ /**
132
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If
133
+ * you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
134
+ */
135
+ customer?: string;
136
+ }
137
+ interface GoogleAppsCloudidentityDevicesV1BlockDeviceUserResponse {
138
+ /** Resultant DeviceUser object for the action. */
139
+ deviceUser?: GoogleAppsCloudidentityDevicesV1DeviceUser;
140
+ }
141
+ // tslint:disable-next-line:no-empty-interface
142
+ interface GoogleAppsCloudidentityDevicesV1CancelWipeDeviceMetadata {
143
+ }
144
+ interface GoogleAppsCloudidentityDevicesV1CancelWipeDeviceRequest {
145
+ /**
146
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If
147
+ * you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
148
+ */
149
+ customer?: string;
150
+ }
151
+ interface GoogleAppsCloudidentityDevicesV1CancelWipeDeviceResponse {
152
+ /** Resultant Device object for the action. Note that asset tags will not be returned in the device object. */
153
+ device?: GoogleAppsCloudidentityDevicesV1Device;
154
+ }
155
+ // tslint:disable-next-line:no-empty-interface
156
+ interface GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserMetadata {
157
+ }
158
+ interface GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserRequest {
159
+ /**
160
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If
161
+ * you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
162
+ */
163
+ customer?: string;
164
+ }
165
+ interface GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserResponse {
166
+ /** Resultant DeviceUser object for the action. */
167
+ deviceUser?: GoogleAppsCloudidentityDevicesV1DeviceUser;
168
+ }
169
+ interface GoogleAppsCloudidentityDevicesV1ClientState {
170
+ /** The caller can specify asset tags for this resource */
171
+ assetTags?: string[];
172
+ /** The compliance state of the resource as specified by the API client. */
173
+ complianceState?: string;
174
+ /** Output only. The time the client state data was created. */
175
+ createTime?: string;
176
+ /** This field may be used to store a unique identifier for the API resource within which these CustomAttributes are a field. */
177
+ customId?: string;
178
+ /** The token that needs to be passed back for concurrency control in updates. Token needs to be passed back in UpdateRequest */
179
+ etag?: string;
180
+ /**
181
+ * The Health score of the resource. The Health score is the callers specification of the condition of the device from a usability point of view. For example, a third-party device
182
+ * management provider may specify a health score based on its compliance with organizational policies.
183
+ */
184
+ healthScore?: string;
185
+ /**
186
+ * The map of key-value attributes stored by callers specific to a device. The total serialized length of this map may not exceed 10KB. No limit is placed on the number of attributes
187
+ * in a map.
188
+ */
189
+ keyValuePairs?: { [P in string]: GoogleAppsCloudidentityDevicesV1CustomAttributeValue };
190
+ /** Output only. The time the client state data was last updated. */
191
+ lastUpdateTime?: string;
192
+ /** The management state of the resource as specified by the API client. */
193
+ managed?: string;
194
+ /**
195
+ * Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the ClientState in format: `devices/{device}/deviceUsers/{device_user}/clientState/{partner}`,
196
+ * where partner corresponds to the partner storing the data. For partners belonging to the "BeyondCorp Alliance", this is the partner ID specified to you by Google. For all other
197
+ * callers, this is a string of the form: `{customer}-suffix`, where `customer` is your customer ID. The *suffix* is any string the caller specifies. This string will be displayed
198
+ * verbatim in the administration console. This suffix is used in setting up Custom Access Levels in Context-Aware Access. Your organization's customer ID can be obtained from the URL:
199
+ * `GET https://www.googleapis.com/admin/directory/v1/customers/my_customer` The `id` field in the response contains the customer ID starting with the letter 'C'. The customer ID to be
200
+ * used in this API is the string after the letter 'C' (not including 'C')
201
+ */
202
+ name?: string;
203
+ /** Output only. The owner of the ClientState */
204
+ ownerType?: string;
205
+ /** A descriptive cause of the health score. */
206
+ scoreReason?: string;
207
+ }
208
+ // tslint:disable-next-line:no-empty-interface
209
+ interface GoogleAppsCloudidentityDevicesV1CreateDeviceMetadata {
210
+ }
211
+ interface GoogleAppsCloudidentityDevicesV1CustomAttributeValue {
212
+ /** Represents a boolean value. */
213
+ boolValue?: boolean;
214
+ /** Represents a double value. */
215
+ numberValue?: number;
216
+ /** Represents a string value. */
217
+ stringValue?: string;
218
+ }
219
+ // tslint:disable-next-line:no-empty-interface
220
+ interface GoogleAppsCloudidentityDevicesV1DeleteDeviceMetadata {
221
+ }
222
+ // tslint:disable-next-line:no-empty-interface
223
+ interface GoogleAppsCloudidentityDevicesV1DeleteDeviceUserMetadata {
224
+ }
225
+ interface GoogleAppsCloudidentityDevicesV1Device {
226
+ /** Output only. Attributes specific to Android devices. */
227
+ androidSpecificAttributes?: GoogleAppsCloudidentityDevicesV1AndroidAttributes;
228
+ /** Asset tag of the device. */
229
+ assetTag?: string;
230
+ /** Output only. Baseband version of the device. */
231
+ basebandVersion?: string;
232
+ /** Output only. Device bootloader version. Example: 0.6.7. */
233
+ bootloaderVersion?: string;
234
+ /** Output only. Device brand. Example: Samsung. */
235
+ brand?: string;
236
+ /** Output only. Build number of the device. */
237
+ buildNumber?: string;
238
+ /** Output only. Represents whether the Device is compromised. */
239
+ compromisedState?: string;
240
+ /** Output only. When the Company-Owned device was imported. This field is empty for BYOD devices. */
241
+ createTime?: string;
242
+ /** Unique identifier for the device. */
243
+ deviceId?: string;
244
+ /** Output only. Type of device. */
245
+ deviceType?: string;
246
+ /** Output only. Whether developer options is enabled on device. */
247
+ enabledDeveloperOptions?: boolean;
248
+ /** Output only. Whether USB debugging is enabled on device. */
249
+ enabledUsbDebugging?: boolean;
250
+ /** Output only. Device encryption state. */
251
+ encryptionState?: string;
252
+ /** Output only. IMEI number of device if GSM device; empty otherwise. */
253
+ imei?: string;
254
+ /** Output only. Kernel version of the device. */
255
+ kernelVersion?: string;
256
+ /** Most recent time when device synced with this service. */
257
+ lastSyncTime?: string;
258
+ /** Output only. Management state of the device */
259
+ managementState?: string;
260
+ /** Output only. Device manufacturer. Example: Motorola. */
261
+ manufacturer?: string;
262
+ /** Output only. MEID number of device if CDMA device; empty otherwise. */
263
+ meid?: string;
264
+ /** Output only. Model name of device. Example: Pixel 3. */
265
+ model?: string;
266
+ /** Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}`, where device is the unique id assigned to the Device. */
267
+ name?: string;
268
+ /** Output only. Mobile or network operator of device, if available. */
269
+ networkOperator?: string;
270
+ /** Output only. OS version of the device. Example: Android 8.1.0. */
271
+ osVersion?: string;
272
+ /**
273
+ * Output only. Domain name for Google accounts on device. Type for other accounts on device. On Android, will only be populated if |ownership_privilege| is |PROFILE_OWNER| or
274
+ * |DEVICE_OWNER|. Does not include the account signed in to the device policy app if that account's domain has only one account. Examples: "com.example", "xyz.com".
275
+ */
276
+ otherAccounts?: string[];
277
+ /** Output only. Whether the device is owned by the company or an individual */
278
+ ownerType?: string;
279
+ /** Output only. OS release version. Example: 6.0. */
280
+ releaseVersion?: string;
281
+ /** Output only. OS security patch update time on device. */
282
+ securityPatchTime?: string;
283
+ /** Serial Number of device. Example: HT82V1A01076. */
284
+ serialNumber?: string;
285
+ /** WiFi MAC addresses of device. */
286
+ wifiMacAddresses?: string[];
287
+ }
288
+ interface GoogleAppsCloudidentityDevicesV1DeviceUser {
289
+ /** Compromised State of the DeviceUser object */
290
+ compromisedState?: string;
291
+ /** When the user first signed in to the device */
292
+ createTime?: string;
293
+ /** Output only. Most recent time when user registered with this service. */
294
+ firstSyncTime?: string;
295
+ /** Output only. Default locale used on device, in IETF BCP-47 format. */
296
+ languageCode?: string;
297
+ /** Output only. Last time when user synced with policies. */
298
+ lastSyncTime?: string;
299
+ /** Output only. Management state of the user on the device. */
300
+ managementState?: string;
301
+ /**
302
+ * Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the DeviceUser in format: `devices/{device}/deviceUsers/{device_user}`, where `device_user`
303
+ * uniquely identifies a user's use of a device.
304
+ */
305
+ name?: string;
306
+ /** Password state of the DeviceUser object */
307
+ passwordState?: string;
308
+ /** Output only. User agent on the device for this specific user */
309
+ userAgent?: string;
310
+ /** Email address of the user registered on the device. */
311
+ userEmail?: string;
312
+ }
313
+ interface GoogleAppsCloudidentityDevicesV1ListClientStatesResponse {
314
+ /** Client states meeting the list restrictions. */
315
+ clientStates?: GoogleAppsCloudidentityDevicesV1ClientState[];
316
+ /** Token to retrieve the next page of results. Empty if there are no more results. */
317
+ nextPageToken?: string;
318
+ }
319
+ interface GoogleAppsCloudidentityDevicesV1ListDevicesResponse {
320
+ /** Devices meeting the list restrictions. */
321
+ devices?: GoogleAppsCloudidentityDevicesV1Device[];
322
+ /** Token to retrieve the next page of results. Empty if there are no more results. */
323
+ nextPageToken?: string;
324
+ }
325
+ interface GoogleAppsCloudidentityDevicesV1ListDeviceUsersResponse {
326
+ /** Devices meeting the list restrictions. */
327
+ deviceUsers?: GoogleAppsCloudidentityDevicesV1DeviceUser[];
328
+ /** Token to retrieve the next page of results. Empty if there are no more results. */
329
+ nextPageToken?: string;
330
+ }
331
+ // tslint:disable-next-line:no-empty-interface
332
+ interface GoogleAppsCloudidentityDevicesV1ListEndpointAppsMetadata {
333
+ }
334
+ interface GoogleAppsCloudidentityDevicesV1LookupSelfDeviceUsersResponse {
335
+ /** The obfuscated customer Id that may be passed back to other Devices API methods such as List, Get, etc. */
336
+ customer?: string;
337
+ /**
338
+ * [Resource names](https://cloud.google.com/apis/design/resource_names) of the DeviceUsers in the format: `devices/{device}/deviceUsers/{user_resource}`, where device is the unique ID
339
+ * assigned to a Device and user_resource is the unique user ID
340
+ */
341
+ names?: string[];
342
+ /** Token to retrieve the next page of results. Empty if there are no more results. */
343
+ nextPageToken?: string;
344
+ }
345
+ // tslint:disable-next-line:no-empty-interface
346
+ interface GoogleAppsCloudidentityDevicesV1SignoutDeviceUserMetadata {
347
+ }
348
+ // tslint:disable-next-line:no-empty-interface
349
+ interface GoogleAppsCloudidentityDevicesV1UpdateClientStateMetadata {
350
+ }
351
+ // tslint:disable-next-line:no-empty-interface
352
+ interface GoogleAppsCloudidentityDevicesV1UpdateDeviceMetadata {
353
+ }
354
+ // tslint:disable-next-line:no-empty-interface
355
+ interface GoogleAppsCloudidentityDevicesV1WipeDeviceMetadata {
356
+ }
357
+ interface GoogleAppsCloudidentityDevicesV1WipeDeviceRequest {
358
+ /**
359
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If
360
+ * you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
361
+ */
362
+ customer?: string;
363
+ /**
364
+ * Optional. Specifies if a user is able to factory reset a device after a Device Wipe. On iOS, this is called "Activation Lock", while on Android, this is known as "Factory Reset
365
+ * Protection". If true, this protection will be removed from the device, so that a user can successfully factory reset. If false, the setting is untouched on the device.
366
+ */
367
+ removeResetLock?: boolean;
368
+ }
369
+ interface GoogleAppsCloudidentityDevicesV1WipeDeviceResponse {
370
+ /** Resultant Device object for the action. Note that asset tags will not be returned in the device object. */
371
+ device?: GoogleAppsCloudidentityDevicesV1Device;
372
+ }
373
+ // tslint:disable-next-line:no-empty-interface
374
+ interface GoogleAppsCloudidentityDevicesV1WipeDeviceUserMetadata {
375
+ }
376
+ interface GoogleAppsCloudidentityDevicesV1WipeDeviceUserRequest {
377
+ /**
378
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If
379
+ * you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
380
+ */
381
+ customer?: string;
382
+ }
383
+ interface GoogleAppsCloudidentityDevicesV1WipeDeviceUserResponse {
384
+ /** Resultant DeviceUser object for the action. */
385
+ deviceUser?: GoogleAppsCloudidentityDevicesV1DeviceUser;
386
+ }
387
+ interface Group {
388
+ /** Output only. The time when the `Group` was created. */
389
+ createTime?: string;
390
+ /** An extended description to help users determine the purpose of a `Group`. Must not be longer than 4,096 characters. */
391
+ description?: string;
392
+ /** The display name of the `Group`. */
393
+ displayName?: string;
394
+ /** Optional. Dynamic group metadata like queries and status. */
395
+ dynamicGroupMetadata?: DynamicGroupMetadata;
396
+ /** Required. The `EntityKey` of the `Group`. */
397
+ groupKey?: EntityKey;
398
+ /**
399
+ * Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a
400
+ * label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of
401
+ * `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups
402
+ * have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty
403
+ * value.
404
+ */
405
+ labels?: { [P in string]: string };
406
+ /** Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group}`. */
407
+ name?: string;
408
+ /**
409
+ * Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form
410
+ * `identitysources/{identity_source}` for external- identity-mapped groups or `customers/{customer}` for Google Groups. The `customer` must begin with "C" (for example, 'C046psxkn').
411
+ */
412
+ parent?: string;
413
+ /** Output only. The time when the `Group` was last updated. */
414
+ updateTime?: string;
415
+ }
416
+ interface GroupRelation {
417
+ /** Display name for this group. */
418
+ displayName?: string;
419
+ /** Resource name for this group. */
420
+ group?: string;
421
+ /** Entity key has an id and a namespace. In case of discussion forums, the id will be an email address without a namespace. */
422
+ groupKey?: EntityKey;
423
+ /** Labels for Group resource. */
424
+ labels?: { [P in string]: string };
425
+ /** The relation between the member and the transitive group. */
426
+ relationType?: string;
427
+ /** Membership roles of the member for the group. */
428
+ roles?: TransitiveMembershipRole[];
429
+ }
430
+ interface IsInvitableUserResponse {
431
+ /** Returns true if the email address is invitable. */
432
+ isInvitableUser?: boolean;
433
+ }
434
+ interface ListGroupsResponse {
435
+ /** Groups returned in response to list request. The results are not sorted. */
436
+ groups?: Group[];
437
+ /** Token to retrieve the next page of results, or empty if there are no more results available for listing. */
438
+ nextPageToken?: string;
439
+ }
440
+ interface ListMembershipsResponse {
441
+ /** The `Membership`s under the specified `parent`. */
442
+ memberships?: Membership[];
443
+ /** A continuation token to retrieve the next page of results, or empty if there are no more results available. */
444
+ nextPageToken?: string;
445
+ }
446
+ interface ListUserInvitationsResponse {
447
+ /**
448
+ * The token for the next page. If not empty, indicates that there may be more `UserInvitation` resources that match the listing request; this value can be used in a subsequent
449
+ * ListUserInvitationsRequest to get continued results with the current list call.
450
+ */
451
+ nextPageToken?: string;
452
+ /** The list of UserInvitation resources. */
453
+ userInvitations?: UserInvitation[];
454
+ }
455
+ interface LookupGroupNameResponse {
456
+ /** The [resource name](https://cloud.google.com/apis/design/resource_names) of the looked-up `Group`. */
457
+ name?: string;
458
+ }
459
+ interface LookupMembershipNameResponse {
460
+ /** The [resource name](https://cloud.google.com/apis/design/resource_names) of the looked-up `Membership`. Must be of the form `groups/{group}/memberships/{membership}`. */
461
+ name?: string;
462
+ }
463
+ interface MemberRelation {
464
+ /** Resource name for this member. */
465
+ member?: string;
466
+ /** Entity key has an id and a namespace. In case of discussion forums, the id will be an email address without a namespace. */
467
+ preferredMemberKey?: EntityKey[];
468
+ /** The relation between the group and the transitive member. */
469
+ relationType?: string;
470
+ /** The membership role details (i.e name of role and expiry time). */
471
+ roles?: TransitiveMembershipRole[];
472
+ }
473
+ interface MemberRestriction {
474
+ /** The evaluated state of this restriction on a group. */
475
+ evaluation?: RestrictionEvaluation;
476
+ /**
477
+ * Member Restriction as defined by CEL expression. Supported restrictions are: `member.customer_id` and `member.type`. Valid values for `member.type` are `1`, `2` and `3`. They
478
+ * correspond to USER, SERVICE_ACCOUNT, and GROUP respectively. The value for `member.customer_id` only supports `groupCustomerId()` currently which means the customer id of the group
479
+ * will be used for restriction. Supported operators are `&&`, `||` and `==`, corresponding to AND, OR, and EQUAL. Examples: Allow only service accounts of given customer to be
480
+ * members. `member.type == 2 && member.customer_id == groupCustomerId()` Allow only users or groups to be members. `member.type == 1 || member.type == 3`
481
+ */
482
+ query?: string;
483
+ }
484
+ interface Membership {
485
+ /** Output only. The time when the `Membership` was created. */
486
+ createTime?: string;
487
+ /** Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Membership`. Shall be of the form `groups/{group}/memberships/{membership}`. */
488
+ name?: string;
489
+ /** Required. Immutable. The `EntityKey` of the member. */
490
+ preferredMemberKey?: EntityKey;
491
+ /**
492
+ * The `MembershipRole`s that apply to the `Membership`. If unspecified, defaults to a single `MembershipRole` with `name` `MEMBER`. Must not contain duplicate `MembershipRole`s with
493
+ * the same `name`.
494
+ */
495
+ roles?: MembershipRole[];
496
+ /** Output only. The type of the membership. */
497
+ type?: string;
498
+ /** Output only. The time when the `Membership` was last updated. */
499
+ updateTime?: string;
500
+ }
501
+ interface MembershipAdjacencyList {
502
+ /**
503
+ * Each edge contains information about the member that belongs to this group. Note: Fields returned here will help identify the specific Membership resource (e.g name,
504
+ * preferred_member_key and role), but may not be a comprehensive list of all fields.
505
+ */
506
+ edges?: Membership[];
507
+ /** Resource name of the group that the members belong to. */
508
+ group?: string;
509
+ }
510
+ interface MembershipRole {
511
+ /**
512
+ * The expiry details of the `MembershipRole`. Expiry details are only supported for `MEMBER` `MembershipRoles`. May be set if `name` is `MEMBER`. Must not be set if `name` is any
513
+ * other value.
514
+ */
515
+ expiryDetail?: ExpiryDetail;
516
+ /** The name of the `MembershipRole`. Must be one of `OWNER`, `MANAGER`, `MEMBER`. */
517
+ name?: string;
518
+ /** Evaluations of restrictions applied to parent group on this membership. */
519
+ restrictionEvaluations?: RestrictionEvaluations;
520
+ }
521
+ interface MembershipRoleRestrictionEvaluation {
522
+ /** Output only. The current state of the restriction */
523
+ state?: string;
524
+ }
525
+ interface ModifyMembershipRolesRequest {
526
+ /** The `MembershipRole`s to be added. Adding or removing roles in the same request as updating roles is not supported. Must not be set if `update_roles_params` is set. */
527
+ addRoles?: MembershipRole[];
528
+ /**
529
+ * The `name`s of the `MembershipRole`s to be removed. Adding or removing roles in the same request as updating roles is not supported. It is not possible to remove the `MEMBER`
530
+ * `MembershipRole`. If you wish to delete a `Membership`, call MembershipsService.DeleteMembership instead. Must not contain `MEMBER`. Must not be set if `update_roles_params` is set.
531
+ */
532
+ removeRoles?: string[];
533
+ /** The `MembershipRole`s to be updated. Updating roles in the same request as adding or removing roles is not supported. Must not be set if either `add_roles` or `remove_roles` is set. */
534
+ updateRolesParams?: UpdateMembershipRolesParams[];
535
+ }
536
+ interface ModifyMembershipRolesResponse {
537
+ /** The `Membership` resource after modifying its `MembershipRole`s. */
538
+ membership?: Membership;
539
+ }
540
+ interface Operation {
541
+ /** If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available. */
542
+ done?: boolean;
543
+ /** The error result of the operation in case of failure or cancellation. */
544
+ error?: Status;
545
+ /**
546
+ * Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such
547
+ * metadata. Any method that returns a long-running operation should document the metadata type, if any.
548
+ */
549
+ metadata?: { [P in string]: any };
550
+ /**
551
+ * The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending
552
+ * with `operations/{unique_id}`.
553
+ */
554
+ name?: string;
555
+ /**
556
+ * The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the
557
+ * original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the
558
+ * original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
559
+ */
560
+ response?: { [P in string]: any };
561
+ }
562
+ interface RestrictionEvaluation {
563
+ /** Output only. The current state of the restriction */
564
+ state?: string;
565
+ }
566
+ interface RestrictionEvaluations {
567
+ /** Evaluation of the member restriction applied to this membership. Empty if the user lacks permission to view the restriction evaluation. */
568
+ memberRestrictionEvaluation?: MembershipRoleRestrictionEvaluation;
569
+ }
570
+ interface SearchGroupsResponse {
571
+ /** The `Group` resources that match the search query. */
572
+ groups?: Group[];
573
+ /** A continuation token to retrieve the next page of results, or empty if there are no more results available. */
574
+ nextPageToken?: string;
575
+ }
576
+ interface SearchTransitiveGroupsResponse {
577
+ /** List of transitive groups satisfying the query. */
578
+ memberships?: GroupRelation[];
579
+ /** Token to retrieve the next page of results, or empty if there are no more results available for listing. */
580
+ nextPageToken?: string;
581
+ }
582
+ interface SearchTransitiveMembershipsResponse {
583
+ /** List of transitive members satisfying the query. */
584
+ memberships?: MemberRelation[];
585
+ /** Token to retrieve the next page of results, or empty if there are no more results. */
586
+ nextPageToken?: string;
587
+ }
588
+ interface SecuritySettings {
589
+ /** The Member Restriction value */
590
+ memberRestriction?: MemberRestriction;
591
+ /** Output only. The resource name of the security settings. Shall be of the form `groups/{group_id}/securitySettings`. */
592
+ name?: string;
593
+ }
594
+ // tslint:disable-next-line:no-empty-interface
595
+ interface SendUserInvitationRequest {
596
+ }
597
+ interface Status {
598
+ /** The status code, which should be an enum value of google.rpc.Code. */
599
+ code?: number;
600
+ /** A list of messages that carry the error details. There is a common set of message types for APIs to use. */
601
+ details?: Array<{ [P in string]: any }>;
602
+ /**
603
+ * A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the
604
+ * client.
605
+ */
606
+ message?: string;
607
+ }
608
+ interface TransitiveMembershipRole {
609
+ /** TransitiveMembershipRole in string format. Currently supported TransitiveMembershipRoles: `"MEMBER"`, `"OWNER"`, and `"MANAGER"`. */
610
+ role?: string;
611
+ }
612
+ // tslint:disable-next-line:no-empty-interface
613
+ interface UpdateGroupMetadata {
614
+ }
615
+ // tslint:disable-next-line:no-empty-interface
616
+ interface UpdateMembershipMetadata {
617
+ }
618
+ interface UpdateMembershipRolesParams {
619
+ /** The fully-qualified names of fields to update. May only contain the field `expiry_detail.expire_time`. */
620
+ fieldMask?: string;
621
+ /** The `MembershipRole`s to be updated. Only `MEMBER` `MembershipRole` can currently be updated. */
622
+ membershipRole?: MembershipRole;
623
+ }
624
+ interface UserInvitation {
625
+ /** Number of invitation emails sent to the user. */
626
+ mailsSentCount?: string;
627
+ /** Shall be of the form `customers/{customer}/userinvitations/{user_email_address}`. */
628
+ name?: string;
629
+ /** State of the `UserInvitation`. */
630
+ state?: string;
631
+ /** Time when the `UserInvitation` was last updated. */
632
+ updateTime?: string;
633
+ }
634
+ interface UserinvitationsResource {
635
+ /** Cancels a UserInvitation that was already sent. */
636
+ cancel(request: {
637
+ /** V1 error format. */
638
+ "$.xgafv"?: string;
639
+ /** OAuth access token. */
640
+ access_token?: string;
641
+ /** Data format for response. */
642
+ alt?: string;
643
+ /** JSONP */
644
+ callback?: string;
645
+ /** Selector specifying which fields to include in a partial response. */
646
+ fields?: string;
647
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
648
+ key?: string;
649
+ /** Required. `UserInvitation` name in the format `customers/{customer}/userinvitations/{user_email_address}` */
650
+ name: string;
651
+ /** OAuth 2.0 token for the current user. */
652
+ oauth_token?: string;
653
+ /** Returns response with indentations and line breaks. */
654
+ prettyPrint?: boolean;
655
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
656
+ quotaUser?: string;
657
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
658
+ upload_protocol?: string;
659
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
660
+ uploadType?: string;
661
+ /** Request body */
662
+ resource: CancelUserInvitationRequest;
663
+ }): Request<Operation>;
664
+ cancel(request: {
665
+ /** V1 error format. */
666
+ "$.xgafv"?: string;
667
+ /** OAuth access token. */
668
+ access_token?: string;
669
+ /** Data format for response. */
670
+ alt?: string;
671
+ /** JSONP */
672
+ callback?: string;
673
+ /** Selector specifying which fields to include in a partial response. */
674
+ fields?: string;
675
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
676
+ key?: string;
677
+ /** Required. `UserInvitation` name in the format `customers/{customer}/userinvitations/{user_email_address}` */
678
+ name: string;
679
+ /** OAuth 2.0 token for the current user. */
680
+ oauth_token?: string;
681
+ /** Returns response with indentations and line breaks. */
682
+ prettyPrint?: boolean;
683
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
684
+ quotaUser?: string;
685
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
686
+ upload_protocol?: string;
687
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
688
+ uploadType?: string;
689
+ },
690
+ body: CancelUserInvitationRequest): Request<Operation>;
691
+ /**
692
+ * Retrieves a UserInvitation resource. **Note:** New consumer accounts with the customer's verified domain created within the previous 48 hours will not appear in the result. This
693
+ * delay also applies to newly-verified domains.
694
+ */
695
+ get(request?: {
696
+ /** V1 error format. */
697
+ "$.xgafv"?: string;
698
+ /** OAuth access token. */
699
+ access_token?: string;
700
+ /** Data format for response. */
701
+ alt?: string;
702
+ /** JSONP */
703
+ callback?: string;
704
+ /** Selector specifying which fields to include in a partial response. */
705
+ fields?: string;
706
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
707
+ key?: string;
708
+ /** Required. `UserInvitation` name in the format `customers/{customer}/userinvitations/{user_email_address}` */
709
+ name: string;
710
+ /** OAuth 2.0 token for the current user. */
711
+ oauth_token?: string;
712
+ /** Returns response with indentations and line breaks. */
713
+ prettyPrint?: boolean;
714
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
715
+ quotaUser?: string;
716
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
717
+ upload_protocol?: string;
718
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
719
+ uploadType?: string;
720
+ }): Request<UserInvitation>;
721
+ /**
722
+ * Verifies whether a user account is eligible to receive a UserInvitation (is an unmanaged account). Eligibility is based on the following criteria: * the email address is a consumer
723
+ * account and it's the primary email address of the account, and * the domain of the email address matches an existing verified Google Workspace or Cloud Identity domain If both
724
+ * conditions are met, the user is eligible. **Note:** This method is not supported for Workspace Essentials customers.
725
+ */
726
+ isInvitableUser(request?: {
727
+ /** V1 error format. */
728
+ "$.xgafv"?: string;
729
+ /** OAuth access token. */
730
+ access_token?: string;
731
+ /** Data format for response. */
732
+ alt?: string;
733
+ /** JSONP */
734
+ callback?: string;
735
+ /** Selector specifying which fields to include in a partial response. */
736
+ fields?: string;
737
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
738
+ key?: string;
739
+ /** Required. `UserInvitation` name in the format `customers/{customer}/userinvitations/{user_email_address}` */
740
+ name: string;
741
+ /** OAuth 2.0 token for the current user. */
742
+ oauth_token?: string;
743
+ /** Returns response with indentations and line breaks. */
744
+ prettyPrint?: boolean;
745
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
746
+ quotaUser?: string;
747
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
748
+ upload_protocol?: string;
749
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
750
+ uploadType?: string;
751
+ }): Request<IsInvitableUserResponse>;
752
+ /**
753
+ * Retrieves a list of UserInvitation resources. **Note:** New consumer accounts with the customer's verified domain created within the previous 48 hours will not appear in the result.
754
+ * This delay also applies to newly-verified domains.
755
+ */
756
+ list(request?: {
757
+ /** V1 error format. */
758
+ "$.xgafv"?: string;
759
+ /** OAuth access token. */
760
+ access_token?: string;
761
+ /** Data format for response. */
762
+ alt?: string;
763
+ /** JSONP */
764
+ callback?: string;
765
+ /** Selector specifying which fields to include in a partial response. */
766
+ fields?: string;
767
+ /** Optional. A query string for filtering `UserInvitation` results by their current state, in the format: `"state=='invited'"`. */
768
+ filter?: string;
769
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
770
+ key?: string;
771
+ /** OAuth 2.0 token for the current user. */
772
+ oauth_token?: string;
773
+ /**
774
+ * Optional. The sort order of the list results. You can sort the results in descending order based on either email or last update timestamp but not both, using `order_by="email
775
+ * desc"`. Currently, sorting is supported for `update_time asc`, `update_time desc`, `email asc`, and `email desc`. If not specified, results will be returned based on `email asc`
776
+ * order.
777
+ */
778
+ orderBy?: string;
779
+ /**
780
+ * Optional. The maximum number of UserInvitation resources to return. If unspecified, at most 100 resources will be returned. The maximum value is 200; values above 200 will be
781
+ * set to 200.
782
+ */
783
+ pageSize?: number;
784
+ /**
785
+ * Optional. A page token, received from a previous `ListUserInvitations` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to
786
+ * `ListBooks` must match the call that provided the page token.
787
+ */
788
+ pageToken?: string;
789
+ /** Required. The customer ID of the Google Workspace or Cloud Identity account the UserInvitation resources are associated with. */
790
+ parent: string;
791
+ /** Returns response with indentations and line breaks. */
792
+ prettyPrint?: boolean;
793
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
794
+ quotaUser?: string;
795
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
796
+ upload_protocol?: string;
797
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
798
+ uploadType?: string;
799
+ }): Request<ListUserInvitationsResponse>;
800
+ /**
801
+ * Sends a UserInvitation to email. If the `UserInvitation` does not exist for this request and it is a valid request, the request creates a `UserInvitation`. **Note:** The `get` and
802
+ * `list` methods have a 48-hour delay where newly-created consumer accounts will not appear in the results. You can still send a `UserInvitation` to those accounts if you know the
803
+ * unmanaged email address and IsInvitableUser==True.
804
+ */
805
+ send(request: {
806
+ /** V1 error format. */
807
+ "$.xgafv"?: string;
808
+ /** OAuth access token. */
809
+ access_token?: string;
810
+ /** Data format for response. */
811
+ alt?: string;
812
+ /** JSONP */
813
+ callback?: string;
814
+ /** Selector specifying which fields to include in a partial response. */
815
+ fields?: string;
816
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
817
+ key?: string;
818
+ /** Required. `UserInvitation` name in the format `customers/{customer}/userinvitations/{user_email_address}` */
819
+ name: string;
820
+ /** OAuth 2.0 token for the current user. */
821
+ oauth_token?: string;
822
+ /** Returns response with indentations and line breaks. */
823
+ prettyPrint?: boolean;
824
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
825
+ quotaUser?: string;
826
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
827
+ upload_protocol?: string;
828
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
829
+ uploadType?: string;
830
+ /** Request body */
831
+ resource: SendUserInvitationRequest;
832
+ }): Request<Operation>;
833
+ send(request: {
834
+ /** V1 error format. */
835
+ "$.xgafv"?: string;
836
+ /** OAuth access token. */
837
+ access_token?: string;
838
+ /** Data format for response. */
839
+ alt?: string;
840
+ /** JSONP */
841
+ callback?: string;
842
+ /** Selector specifying which fields to include in a partial response. */
843
+ fields?: string;
844
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
845
+ key?: string;
846
+ /** Required. `UserInvitation` name in the format `customers/{customer}/userinvitations/{user_email_address}` */
847
+ name: string;
848
+ /** OAuth 2.0 token for the current user. */
849
+ oauth_token?: string;
850
+ /** Returns response with indentations and line breaks. */
851
+ prettyPrint?: boolean;
852
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
853
+ quotaUser?: string;
854
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
855
+ upload_protocol?: string;
856
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
857
+ uploadType?: string;
858
+ },
859
+ body: SendUserInvitationRequest): Request<Operation>;
860
+ }
861
+ interface CustomersResource {
862
+ userinvitations: UserinvitationsResource;
863
+ }
864
+ interface ClientStatesResource {
865
+ /** Gets the client state for the device user */
866
+ get(request?: {
867
+ /** V1 error format. */
868
+ "$.xgafv"?: string;
869
+ /** OAuth access token. */
870
+ access_token?: string;
871
+ /** Data format for response. */
872
+ alt?: string;
873
+ /** JSONP */
874
+ callback?: string;
875
+ /**
876
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer`
877
+ * If you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
878
+ */
879
+ customer?: string;
880
+ /** Selector specifying which fields to include in a partial response. */
881
+ fields?: string;
882
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
883
+ key?: string;
884
+ /**
885
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the ClientState in format: `devices/{device}/deviceUsers/{device_user}/clientStates/{partner}`,
886
+ * where `device` is the unique ID assigned to the Device, `device_user` is the unique ID assigned to the User and `partner` identifies the partner storing the data. To get the
887
+ * client state for devices belonging to your own organization, the `partnerId` is in the format: `customerId-*anystring*`. Where the `customerId` is your organization's customer
888
+ * ID and `anystring` is any suffix. This suffix is used in setting up Custom Access Levels in Context-Aware Access. You may use `my_customer` instead of the customer ID for
889
+ * devices managed by your own organization. You may specify `-` in place of the `{device}`, so the ClientState resource name can be:
890
+ * `devices/-/deviceUsers/{device_user_resource}/clientStates/{partner}`.
891
+ */
892
+ name: string;
893
+ /** OAuth 2.0 token for the current user. */
894
+ oauth_token?: string;
895
+ /** Returns response with indentations and line breaks. */
896
+ prettyPrint?: boolean;
897
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
898
+ quotaUser?: string;
899
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
900
+ upload_protocol?: string;
901
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
902
+ uploadType?: string;
903
+ }): Request<GoogleAppsCloudidentityDevicesV1ClientState>;
904
+ /** Lists the client states for the given search query. */
905
+ list(request?: {
906
+ /** V1 error format. */
907
+ "$.xgafv"?: string;
908
+ /** OAuth access token. */
909
+ access_token?: string;
910
+ /** Data format for response. */
911
+ alt?: string;
912
+ /** JSONP */
913
+ callback?: string;
914
+ /**
915
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer`
916
+ * If you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
917
+ */
918
+ customer?: string;
919
+ /** Selector specifying which fields to include in a partial response. */
920
+ fields?: string;
921
+ /** Optional. Additional restrictions when fetching list of client states. */
922
+ filter?: string;
923
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
924
+ key?: string;
925
+ /** OAuth 2.0 token for the current user. */
926
+ oauth_token?: string;
927
+ /** Optional. Order specification for client states in the response. */
928
+ orderBy?: string;
929
+ /**
930
+ * Optional. A page token, received from a previous `ListClientStates` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to
931
+ * `ListClientStates` must match the call that provided the page token.
932
+ */
933
+ pageToken?: string;
934
+ /**
935
+ * Required. To list all ClientStates, set this to "devices/-/deviceUsers/-". To list all ClientStates owned by a DeviceUser, set this to the resource name of the DeviceUser.
936
+ * Format: devices/{device}/deviceUsers/{deviceUser}
937
+ */
938
+ parent: string;
939
+ /** Returns response with indentations and line breaks. */
940
+ prettyPrint?: boolean;
941
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
942
+ quotaUser?: string;
943
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
944
+ upload_protocol?: string;
945
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
946
+ uploadType?: string;
947
+ }): Request<GoogleAppsCloudidentityDevicesV1ListClientStatesResponse>;
948
+ /**
949
+ * Updates the client state for the device user **Note**: This method is available only to customers who have one of the following SKUs: Enterprise Standard, Enterprise Plus,
950
+ * Enterprise for Education, and Cloud Identity Premium
951
+ */
952
+ patch(request: {
953
+ /** V1 error format. */
954
+ "$.xgafv"?: string;
955
+ /** OAuth access token. */
956
+ access_token?: string;
957
+ /** Data format for response. */
958
+ alt?: string;
959
+ /** JSONP */
960
+ callback?: string;
961
+ /**
962
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer`
963
+ * If you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
964
+ */
965
+ customer?: string;
966
+ /** Selector specifying which fields to include in a partial response. */
967
+ fields?: string;
968
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
969
+ key?: string;
970
+ /**
971
+ * Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the ClientState in format:
972
+ * `devices/{device}/deviceUsers/{device_user}/clientState/{partner}`, where partner corresponds to the partner storing the data. For partners belonging to the "BeyondCorp
973
+ * Alliance", this is the partner ID specified to you by Google. For all other callers, this is a string of the form: `{customer}-suffix`, where `customer` is your customer ID. The
974
+ * *suffix* is any string the caller specifies. This string will be displayed verbatim in the administration console. This suffix is used in setting up Custom Access Levels in
975
+ * Context-Aware Access. Your organization's customer ID can be obtained from the URL: `GET https://www.googleapis.com/admin/directory/v1/customers/my_customer` The `id` field in
976
+ * the response contains the customer ID starting with the letter 'C'. The customer ID to be used in this API is the string after the letter 'C' (not including 'C')
977
+ */
978
+ name: string;
979
+ /** OAuth 2.0 token for the current user. */
980
+ oauth_token?: string;
981
+ /** Returns response with indentations and line breaks. */
982
+ prettyPrint?: boolean;
983
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
984
+ quotaUser?: string;
985
+ /** Optional. Comma-separated list of fully qualified names of fields to be updated. If not specified, all updatable fields in ClientState are updated. */
986
+ updateMask?: string;
987
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
988
+ upload_protocol?: string;
989
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
990
+ uploadType?: string;
991
+ /** Request body */
992
+ resource: GoogleAppsCloudidentityDevicesV1ClientState;
993
+ }): Request<Operation>;
994
+ patch(request: {
995
+ /** V1 error format. */
996
+ "$.xgafv"?: string;
997
+ /** OAuth access token. */
998
+ access_token?: string;
999
+ /** Data format for response. */
1000
+ alt?: string;
1001
+ /** JSONP */
1002
+ callback?: string;
1003
+ /**
1004
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer`
1005
+ * If you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
1006
+ */
1007
+ customer?: string;
1008
+ /** Selector specifying which fields to include in a partial response. */
1009
+ fields?: string;
1010
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1011
+ key?: string;
1012
+ /**
1013
+ * Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the ClientState in format:
1014
+ * `devices/{device}/deviceUsers/{device_user}/clientState/{partner}`, where partner corresponds to the partner storing the data. For partners belonging to the "BeyondCorp
1015
+ * Alliance", this is the partner ID specified to you by Google. For all other callers, this is a string of the form: `{customer}-suffix`, where `customer` is your customer ID. The
1016
+ * *suffix* is any string the caller specifies. This string will be displayed verbatim in the administration console. This suffix is used in setting up Custom Access Levels in
1017
+ * Context-Aware Access. Your organization's customer ID can be obtained from the URL: `GET https://www.googleapis.com/admin/directory/v1/customers/my_customer` The `id` field in
1018
+ * the response contains the customer ID starting with the letter 'C'. The customer ID to be used in this API is the string after the letter 'C' (not including 'C')
1019
+ */
1020
+ name: string;
1021
+ /** OAuth 2.0 token for the current user. */
1022
+ oauth_token?: string;
1023
+ /** Returns response with indentations and line breaks. */
1024
+ prettyPrint?: boolean;
1025
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1026
+ quotaUser?: string;
1027
+ /** Optional. Comma-separated list of fully qualified names of fields to be updated. If not specified, all updatable fields in ClientState are updated. */
1028
+ updateMask?: string;
1029
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1030
+ upload_protocol?: string;
1031
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1032
+ uploadType?: string;
1033
+ },
1034
+ body: GoogleAppsCloudidentityDevicesV1ClientState): Request<Operation>;
1035
+ }
1036
+ interface DeviceUsersResource {
1037
+ /** Approves device to access user data. */
1038
+ approve(request: {
1039
+ /** V1 error format. */
1040
+ "$.xgafv"?: string;
1041
+ /** OAuth access token. */
1042
+ access_token?: string;
1043
+ /** Data format for response. */
1044
+ alt?: string;
1045
+ /** JSONP */
1046
+ callback?: string;
1047
+ /** Selector specifying which fields to include in a partial response. */
1048
+ fields?: string;
1049
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1050
+ key?: string;
1051
+ /**
1052
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}/deviceUsers/{device_user}`, where device is the unique
1053
+ * ID assigned to the Device, and device_user is the unique ID assigned to the User.
1054
+ */
1055
+ name: string;
1056
+ /** OAuth 2.0 token for the current user. */
1057
+ oauth_token?: string;
1058
+ /** Returns response with indentations and line breaks. */
1059
+ prettyPrint?: boolean;
1060
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1061
+ quotaUser?: string;
1062
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1063
+ upload_protocol?: string;
1064
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1065
+ uploadType?: string;
1066
+ /** Request body */
1067
+ resource: GoogleAppsCloudidentityDevicesV1ApproveDeviceUserRequest;
1068
+ }): Request<Operation>;
1069
+ approve(request: {
1070
+ /** V1 error format. */
1071
+ "$.xgafv"?: string;
1072
+ /** OAuth access token. */
1073
+ access_token?: string;
1074
+ /** Data format for response. */
1075
+ alt?: string;
1076
+ /** JSONP */
1077
+ callback?: string;
1078
+ /** Selector specifying which fields to include in a partial response. */
1079
+ fields?: string;
1080
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1081
+ key?: string;
1082
+ /**
1083
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}/deviceUsers/{device_user}`, where device is the unique
1084
+ * ID assigned to the Device, and device_user is the unique ID assigned to the User.
1085
+ */
1086
+ name: string;
1087
+ /** OAuth 2.0 token for the current user. */
1088
+ oauth_token?: string;
1089
+ /** Returns response with indentations and line breaks. */
1090
+ prettyPrint?: boolean;
1091
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1092
+ quotaUser?: string;
1093
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1094
+ upload_protocol?: string;
1095
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1096
+ uploadType?: string;
1097
+ },
1098
+ body: GoogleAppsCloudidentityDevicesV1ApproveDeviceUserRequest): Request<Operation>;
1099
+ /** Blocks device from accessing user data */
1100
+ block(request: {
1101
+ /** V1 error format. */
1102
+ "$.xgafv"?: string;
1103
+ /** OAuth access token. */
1104
+ access_token?: string;
1105
+ /** Data format for response. */
1106
+ alt?: string;
1107
+ /** JSONP */
1108
+ callback?: string;
1109
+ /** Selector specifying which fields to include in a partial response. */
1110
+ fields?: string;
1111
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1112
+ key?: string;
1113
+ /**
1114
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}/deviceUsers/{device_user}`, where device is the unique
1115
+ * ID assigned to the Device, and device_user is the unique ID assigned to the User.
1116
+ */
1117
+ name: string;
1118
+ /** OAuth 2.0 token for the current user. */
1119
+ oauth_token?: string;
1120
+ /** Returns response with indentations and line breaks. */
1121
+ prettyPrint?: boolean;
1122
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1123
+ quotaUser?: string;
1124
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1125
+ upload_protocol?: string;
1126
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1127
+ uploadType?: string;
1128
+ /** Request body */
1129
+ resource: GoogleAppsCloudidentityDevicesV1BlockDeviceUserRequest;
1130
+ }): Request<Operation>;
1131
+ block(request: {
1132
+ /** V1 error format. */
1133
+ "$.xgafv"?: string;
1134
+ /** OAuth access token. */
1135
+ access_token?: string;
1136
+ /** Data format for response. */
1137
+ alt?: string;
1138
+ /** JSONP */
1139
+ callback?: string;
1140
+ /** Selector specifying which fields to include in a partial response. */
1141
+ fields?: string;
1142
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1143
+ key?: string;
1144
+ /**
1145
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}/deviceUsers/{device_user}`, where device is the unique
1146
+ * ID assigned to the Device, and device_user is the unique ID assigned to the User.
1147
+ */
1148
+ name: string;
1149
+ /** OAuth 2.0 token for the current user. */
1150
+ oauth_token?: string;
1151
+ /** Returns response with indentations and line breaks. */
1152
+ prettyPrint?: boolean;
1153
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1154
+ quotaUser?: string;
1155
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1156
+ upload_protocol?: string;
1157
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1158
+ uploadType?: string;
1159
+ },
1160
+ body: GoogleAppsCloudidentityDevicesV1BlockDeviceUserRequest): Request<Operation>;
1161
+ /** Cancels an unfinished user account wipe. This operation can be used to cancel device wipe in the gap between the wipe operation returning success and the device being wiped. */
1162
+ cancelWipe(request: {
1163
+ /** V1 error format. */
1164
+ "$.xgafv"?: string;
1165
+ /** OAuth access token. */
1166
+ access_token?: string;
1167
+ /** Data format for response. */
1168
+ alt?: string;
1169
+ /** JSONP */
1170
+ callback?: string;
1171
+ /** Selector specifying which fields to include in a partial response. */
1172
+ fields?: string;
1173
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1174
+ key?: string;
1175
+ /**
1176
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}/deviceUsers/{device_user}`, where device is the unique
1177
+ * ID assigned to the Device, and device_user is the unique ID assigned to the User.
1178
+ */
1179
+ name: string;
1180
+ /** OAuth 2.0 token for the current user. */
1181
+ oauth_token?: string;
1182
+ /** Returns response with indentations and line breaks. */
1183
+ prettyPrint?: boolean;
1184
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1185
+ quotaUser?: string;
1186
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1187
+ upload_protocol?: string;
1188
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1189
+ uploadType?: string;
1190
+ /** Request body */
1191
+ resource: GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserRequest;
1192
+ }): Request<Operation>;
1193
+ cancelWipe(request: {
1194
+ /** V1 error format. */
1195
+ "$.xgafv"?: string;
1196
+ /** OAuth access token. */
1197
+ access_token?: string;
1198
+ /** Data format for response. */
1199
+ alt?: string;
1200
+ /** JSONP */
1201
+ callback?: string;
1202
+ /** Selector specifying which fields to include in a partial response. */
1203
+ fields?: string;
1204
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1205
+ key?: string;
1206
+ /**
1207
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}/deviceUsers/{device_user}`, where device is the unique
1208
+ * ID assigned to the Device, and device_user is the unique ID assigned to the User.
1209
+ */
1210
+ name: string;
1211
+ /** OAuth 2.0 token for the current user. */
1212
+ oauth_token?: string;
1213
+ /** Returns response with indentations and line breaks. */
1214
+ prettyPrint?: boolean;
1215
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1216
+ quotaUser?: string;
1217
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1218
+ upload_protocol?: string;
1219
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1220
+ uploadType?: string;
1221
+ },
1222
+ body: GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserRequest): Request<Operation>;
1223
+ /** Deletes the specified DeviceUser. This also revokes the user's access to device data. */
1224
+ delete(request?: {
1225
+ /** V1 error format. */
1226
+ "$.xgafv"?: string;
1227
+ /** OAuth access token. */
1228
+ access_token?: string;
1229
+ /** Data format for response. */
1230
+ alt?: string;
1231
+ /** JSONP */
1232
+ callback?: string;
1233
+ /**
1234
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer`
1235
+ * If you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
1236
+ */
1237
+ customer?: string;
1238
+ /** Selector specifying which fields to include in a partial response. */
1239
+ fields?: string;
1240
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1241
+ key?: string;
1242
+ /**
1243
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}/deviceUsers/{device_user}`, where device is the unique
1244
+ * ID assigned to the Device, and device_user is the unique ID assigned to the User.
1245
+ */
1246
+ name: string;
1247
+ /** OAuth 2.0 token for the current user. */
1248
+ oauth_token?: string;
1249
+ /** Returns response with indentations and line breaks. */
1250
+ prettyPrint?: boolean;
1251
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1252
+ quotaUser?: string;
1253
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1254
+ upload_protocol?: string;
1255
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1256
+ uploadType?: string;
1257
+ }): Request<Operation>;
1258
+ /** Retrieves the specified DeviceUser */
1259
+ get(request?: {
1260
+ /** V1 error format. */
1261
+ "$.xgafv"?: string;
1262
+ /** OAuth access token. */
1263
+ access_token?: string;
1264
+ /** Data format for response. */
1265
+ alt?: string;
1266
+ /** JSONP */
1267
+ callback?: string;
1268
+ /**
1269
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer`
1270
+ * If you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
1271
+ */
1272
+ customer?: string;
1273
+ /** Selector specifying which fields to include in a partial response. */
1274
+ fields?: string;
1275
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1276
+ key?: string;
1277
+ /**
1278
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}/deviceUsers/{device_user}`, where device is the unique
1279
+ * ID assigned to the Device, and device_user is the unique ID assigned to the User.
1280
+ */
1281
+ name: string;
1282
+ /** OAuth 2.0 token for the current user. */
1283
+ oauth_token?: string;
1284
+ /** Returns response with indentations and line breaks. */
1285
+ prettyPrint?: boolean;
1286
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1287
+ quotaUser?: string;
1288
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1289
+ upload_protocol?: string;
1290
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1291
+ uploadType?: string;
1292
+ }): Request<GoogleAppsCloudidentityDevicesV1DeviceUser>;
1293
+ /** Lists/Searches DeviceUsers. */
1294
+ list(request?: {
1295
+ /** V1 error format. */
1296
+ "$.xgafv"?: string;
1297
+ /** OAuth access token. */
1298
+ access_token?: string;
1299
+ /** Data format for response. */
1300
+ alt?: string;
1301
+ /** JSONP */
1302
+ callback?: string;
1303
+ /**
1304
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer`
1305
+ * If you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
1306
+ */
1307
+ customer?: string;
1308
+ /** Selector specifying which fields to include in a partial response. */
1309
+ fields?: string;
1310
+ /**
1311
+ * Optional. Additional restrictions when fetching list of devices. For a list of search fields, refer to [Mobile device search
1312
+ * fields](https://developers.google.com/admin-sdk/directory/v1/search-operators). Multiple search fields are separated by the space character.
1313
+ */
1314
+ filter?: string;
1315
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1316
+ key?: string;
1317
+ /** OAuth 2.0 token for the current user. */
1318
+ oauth_token?: string;
1319
+ /** Optional. Order specification for devices in the response. */
1320
+ orderBy?: string;
1321
+ /** Optional. The maximum number of DeviceUsers to return. If unspecified, at most 5 DeviceUsers will be returned. The maximum value is 20; values above 20 will be coerced to 20. */
1322
+ pageSize?: number;
1323
+ /**
1324
+ * Optional. A page token, received from a previous `ListDeviceUsers` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to
1325
+ * `ListBooks` must match the call that provided the page token.
1326
+ */
1327
+ pageToken?: string;
1328
+ /** Required. To list all DeviceUsers, set this to "devices/-". To list all DeviceUsers owned by a device, set this to the resource name of the device. Format: devices/{device} */
1329
+ parent: string;
1330
+ /** Returns response with indentations and line breaks. */
1331
+ prettyPrint?: boolean;
1332
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1333
+ quotaUser?: string;
1334
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1335
+ upload_protocol?: string;
1336
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1337
+ uploadType?: string;
1338
+ }): Request<GoogleAppsCloudidentityDevicesV1ListDeviceUsersResponse>;
1339
+ /**
1340
+ * Looks up resource names of the DeviceUsers associated with the caller's credentials, as well as the properties provided in the request. This method must be called with end-user
1341
+ * credentials with the scope: https://www.googleapis.com/auth/cloud-identity.devices.lookup If multiple properties are provided, only DeviceUsers having all of these properties are
1342
+ * considered as matches - i.e. the query behaves like an AND. Different platforms require different amounts of information from the caller to ensure that the DeviceUser is uniquely
1343
+ * identified. - iOS: No properties need to be passed, the caller's credentials are sufficient to identify the corresponding DeviceUser. - Android: Specifying the 'android_id' field is
1344
+ * required. - Desktop: Specifying the 'raw_resource_id' field is required.
1345
+ */
1346
+ lookup(request?: {
1347
+ /** V1 error format. */
1348
+ "$.xgafv"?: string;
1349
+ /** OAuth access token. */
1350
+ access_token?: string;
1351
+ /** Data format for response. */
1352
+ alt?: string;
1353
+ /** Android Id returned by [Settings.Secure#ANDROID_ID](https://developer.android.com/reference/android/provider/Settings.Secure.html#ANDROID_ID). */
1354
+ androidId?: string;
1355
+ /** JSONP */
1356
+ callback?: string;
1357
+ /** Selector specifying which fields to include in a partial response. */
1358
+ fields?: string;
1359
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1360
+ key?: string;
1361
+ /** OAuth 2.0 token for the current user. */
1362
+ oauth_token?: string;
1363
+ /** The maximum number of DeviceUsers to return. If unspecified, at most 20 DeviceUsers will be returned. The maximum value is 20; values above 20 will be coerced to 20. */
1364
+ pageSize?: number;
1365
+ /**
1366
+ * A page token, received from a previous `LookupDeviceUsers` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to
1367
+ * `LookupDeviceUsers` must match the call that provided the page token.
1368
+ */
1369
+ pageToken?: string;
1370
+ /** Must be set to "devices/-/deviceUsers" to search across all DeviceUser belonging to the user. */
1371
+ parent: string;
1372
+ /** Returns response with indentations and line breaks. */
1373
+ prettyPrint?: boolean;
1374
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1375
+ quotaUser?: string;
1376
+ /**
1377
+ * Raw Resource Id used by Google Endpoint Verification. If the user is enrolled into Google Endpoint Verification, this id will be saved as the 'device_resource_id' field in the
1378
+ * following platform dependent files. Mac: ~/.secureConnect/context_aware_config.json Windows: C:\Users\%USERPROFILE%\.secureConnect\context_aware_config.json Linux:
1379
+ * ~/.secureConnect/context_aware_config.json
1380
+ */
1381
+ rawResourceId?: string;
1382
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1383
+ upload_protocol?: string;
1384
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1385
+ uploadType?: string;
1386
+ /** The user whose DeviceUser's resource name will be fetched. Must be set to 'me' to fetch the DeviceUser's resource name for the calling user. */
1387
+ userId?: string;
1388
+ }): Request<GoogleAppsCloudidentityDevicesV1LookupSelfDeviceUsersResponse>;
1389
+ /**
1390
+ * Wipes the user's account on a device. Other data on the device that is not associated with the user's work account is not affected. For example, if a Gmail app is installed on a
1391
+ * device that is used for personal and work purposes, and the user is logged in to the Gmail app with their personal account as well as their work account, wiping the "deviceUser" by
1392
+ * their work administrator will not affect their personal account within Gmail or other apps such as Photos.
1393
+ */
1394
+ wipe(request: {
1395
+ /** V1 error format. */
1396
+ "$.xgafv"?: string;
1397
+ /** OAuth access token. */
1398
+ access_token?: string;
1399
+ /** Data format for response. */
1400
+ alt?: string;
1401
+ /** JSONP */
1402
+ callback?: string;
1403
+ /** Selector specifying which fields to include in a partial response. */
1404
+ fields?: string;
1405
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1406
+ key?: string;
1407
+ /**
1408
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}/deviceUsers/{device_user}`, where device is the unique
1409
+ * ID assigned to the Device, and device_user is the unique ID assigned to the User.
1410
+ */
1411
+ name: string;
1412
+ /** OAuth 2.0 token for the current user. */
1413
+ oauth_token?: string;
1414
+ /** Returns response with indentations and line breaks. */
1415
+ prettyPrint?: boolean;
1416
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1417
+ quotaUser?: string;
1418
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1419
+ upload_protocol?: string;
1420
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1421
+ uploadType?: string;
1422
+ /** Request body */
1423
+ resource: GoogleAppsCloudidentityDevicesV1WipeDeviceUserRequest;
1424
+ }): Request<Operation>;
1425
+ wipe(request: {
1426
+ /** V1 error format. */
1427
+ "$.xgafv"?: string;
1428
+ /** OAuth access token. */
1429
+ access_token?: string;
1430
+ /** Data format for response. */
1431
+ alt?: string;
1432
+ /** JSONP */
1433
+ callback?: string;
1434
+ /** Selector specifying which fields to include in a partial response. */
1435
+ fields?: string;
1436
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1437
+ key?: string;
1438
+ /**
1439
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}/deviceUsers/{device_user}`, where device is the unique
1440
+ * ID assigned to the Device, and device_user is the unique ID assigned to the User.
1441
+ */
1442
+ name: string;
1443
+ /** OAuth 2.0 token for the current user. */
1444
+ oauth_token?: string;
1445
+ /** Returns response with indentations and line breaks. */
1446
+ prettyPrint?: boolean;
1447
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1448
+ quotaUser?: string;
1449
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1450
+ upload_protocol?: string;
1451
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1452
+ uploadType?: string;
1453
+ },
1454
+ body: GoogleAppsCloudidentityDevicesV1WipeDeviceUserRequest): Request<Operation>;
1455
+ clientStates: ClientStatesResource;
1456
+ }
1457
+ interface DevicesResource {
1458
+ /**
1459
+ * Cancels an unfinished device wipe. This operation can be used to cancel device wipe in the gap between the wipe operation returning success and the device being wiped. This
1460
+ * operation is possible when the device is in a "pending wipe" state. The device enters the "pending wipe" state when a wipe device command is issued, but has not yet been sent to the
1461
+ * device. The cancel wipe will fail if the wipe command has already been issued to the device.
1462
+ */
1463
+ cancelWipe(request: {
1464
+ /** V1 error format. */
1465
+ "$.xgafv"?: string;
1466
+ /** OAuth access token. */
1467
+ access_token?: string;
1468
+ /** Data format for response. */
1469
+ alt?: string;
1470
+ /** JSONP */
1471
+ callback?: string;
1472
+ /** Selector specifying which fields to include in a partial response. */
1473
+ fields?: string;
1474
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1475
+ key?: string;
1476
+ /** Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}`, where device is the unique ID assigned to the Device. */
1477
+ name: string;
1478
+ /** OAuth 2.0 token for the current user. */
1479
+ oauth_token?: string;
1480
+ /** Returns response with indentations and line breaks. */
1481
+ prettyPrint?: boolean;
1482
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1483
+ quotaUser?: string;
1484
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1485
+ upload_protocol?: string;
1486
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1487
+ uploadType?: string;
1488
+ /** Request body */
1489
+ resource: GoogleAppsCloudidentityDevicesV1CancelWipeDeviceRequest;
1490
+ }): Request<Operation>;
1491
+ cancelWipe(request: {
1492
+ /** V1 error format. */
1493
+ "$.xgafv"?: string;
1494
+ /** OAuth access token. */
1495
+ access_token?: string;
1496
+ /** Data format for response. */
1497
+ alt?: string;
1498
+ /** JSONP */
1499
+ callback?: string;
1500
+ /** Selector specifying which fields to include in a partial response. */
1501
+ fields?: string;
1502
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1503
+ key?: string;
1504
+ /** Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}`, where device is the unique ID assigned to the Device. */
1505
+ name: string;
1506
+ /** OAuth 2.0 token for the current user. */
1507
+ oauth_token?: string;
1508
+ /** Returns response with indentations and line breaks. */
1509
+ prettyPrint?: boolean;
1510
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1511
+ quotaUser?: string;
1512
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1513
+ upload_protocol?: string;
1514
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1515
+ uploadType?: string;
1516
+ },
1517
+ body: GoogleAppsCloudidentityDevicesV1CancelWipeDeviceRequest): Request<Operation>;
1518
+ /**
1519
+ * Creates a device. Only company-owned device may be created. **Note**: This method is available only to customers who have one of the following SKUs: Enterprise Standard, Enterprise
1520
+ * Plus, Enterprise for Education, and Cloud Identity Premium
1521
+ */
1522
+ create(request: {
1523
+ /** V1 error format. */
1524
+ "$.xgafv"?: string;
1525
+ /** OAuth access token. */
1526
+ access_token?: string;
1527
+ /** Data format for response. */
1528
+ alt?: string;
1529
+ /** JSONP */
1530
+ callback?: string;
1531
+ /**
1532
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer`
1533
+ * If you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
1534
+ */
1535
+ customer?: string;
1536
+ /** Selector specifying which fields to include in a partial response. */
1537
+ fields?: string;
1538
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1539
+ key?: string;
1540
+ /** OAuth 2.0 token for the current user. */
1541
+ oauth_token?: string;
1542
+ /** Returns response with indentations and line breaks. */
1543
+ prettyPrint?: boolean;
1544
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1545
+ quotaUser?: string;
1546
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1547
+ upload_protocol?: string;
1548
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1549
+ uploadType?: string;
1550
+ /** Request body */
1551
+ resource: GoogleAppsCloudidentityDevicesV1Device;
1552
+ }): Request<Operation>;
1553
+ create(request: {
1554
+ /** V1 error format. */
1555
+ "$.xgafv"?: string;
1556
+ /** OAuth access token. */
1557
+ access_token?: string;
1558
+ /** Data format for response. */
1559
+ alt?: string;
1560
+ /** JSONP */
1561
+ callback?: string;
1562
+ /**
1563
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer`
1564
+ * If you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
1565
+ */
1566
+ customer?: string;
1567
+ /** Selector specifying which fields to include in a partial response. */
1568
+ fields?: string;
1569
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1570
+ key?: string;
1571
+ /** OAuth 2.0 token for the current user. */
1572
+ oauth_token?: string;
1573
+ /** Returns response with indentations and line breaks. */
1574
+ prettyPrint?: boolean;
1575
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1576
+ quotaUser?: string;
1577
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1578
+ upload_protocol?: string;
1579
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1580
+ uploadType?: string;
1581
+ },
1582
+ body: GoogleAppsCloudidentityDevicesV1Device): Request<Operation>;
1583
+ /** Deletes the specified device. */
1584
+ delete(request?: {
1585
+ /** V1 error format. */
1586
+ "$.xgafv"?: string;
1587
+ /** OAuth access token. */
1588
+ access_token?: string;
1589
+ /** Data format for response. */
1590
+ alt?: string;
1591
+ /** JSONP */
1592
+ callback?: string;
1593
+ /**
1594
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer`
1595
+ * If you're using this API to manage another organization, use `customers/{customer}`, where customer is the customer to whom the device belongs.
1596
+ */
1597
+ customer?: string;
1598
+ /** Selector specifying which fields to include in a partial response. */
1599
+ fields?: string;
1600
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1601
+ key?: string;
1602
+ /** Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}`, where device is the unique ID assigned to the Device. */
1603
+ name: string;
1604
+ /** OAuth 2.0 token for the current user. */
1605
+ oauth_token?: string;
1606
+ /** Returns response with indentations and line breaks. */
1607
+ prettyPrint?: boolean;
1608
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1609
+ quotaUser?: string;
1610
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1611
+ upload_protocol?: string;
1612
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1613
+ uploadType?: string;
1614
+ }): Request<Operation>;
1615
+ /** Retrieves the specified device. */
1616
+ get(request?: {
1617
+ /** V1 error format. */
1618
+ "$.xgafv"?: string;
1619
+ /** OAuth access token. */
1620
+ access_token?: string;
1621
+ /** Data format for response. */
1622
+ alt?: string;
1623
+ /** JSONP */
1624
+ callback?: string;
1625
+ /**
1626
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Customer in the format: `customers/{customer}`, where customer is the customer to whom the
1627
+ * device belongs. If you're using this API for your own organization, use `customers/my_customer`. If you're using this API to manage another organization, use
1628
+ * `customers/{customer}`, where customer is the customer to whom the device belongs.
1629
+ */
1630
+ customer?: string;
1631
+ /** Selector specifying which fields to include in a partial response. */
1632
+ fields?: string;
1633
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1634
+ key?: string;
1635
+ /**
1636
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in the format: `devices/{device}`, where device is the unique ID assigned to the
1637
+ * Device.
1638
+ */
1639
+ name: string;
1640
+ /** OAuth 2.0 token for the current user. */
1641
+ oauth_token?: string;
1642
+ /** Returns response with indentations and line breaks. */
1643
+ prettyPrint?: boolean;
1644
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1645
+ quotaUser?: string;
1646
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1647
+ upload_protocol?: string;
1648
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1649
+ uploadType?: string;
1650
+ }): Request<GoogleAppsCloudidentityDevicesV1Device>;
1651
+ /** Lists/Searches devices. */
1652
+ list(request?: {
1653
+ /** V1 error format. */
1654
+ "$.xgafv"?: string;
1655
+ /** OAuth access token. */
1656
+ access_token?: string;
1657
+ /** Data format for response. */
1658
+ alt?: string;
1659
+ /** JSONP */
1660
+ callback?: string;
1661
+ /**
1662
+ * Optional. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer in the format: `customers/{customer}`, where customer is the customer to whom the
1663
+ * device belongs. If you're using this API for your own organization, use `customers/my_customer`. If you're using this API to manage another organization, use
1664
+ * `customers/{customer}`, where customer is the customer to whom the device belongs.
1665
+ */
1666
+ customer?: string;
1667
+ /** Selector specifying which fields to include in a partial response. */
1668
+ fields?: string;
1669
+ /**
1670
+ * Optional. Additional restrictions when fetching list of devices. For a list of search fields, refer to [Mobile device search
1671
+ * fields](https://developers.google.com/admin-sdk/directory/v1/search-operators). Multiple search fields are separated by the space character.
1672
+ */
1673
+ filter?: string;
1674
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1675
+ key?: string;
1676
+ /** OAuth 2.0 token for the current user. */
1677
+ oauth_token?: string;
1678
+ /**
1679
+ * Optional. Order specification for devices in the response. Only one of the following field names may be used to specify the order: `create_time`, `last_sync_time`, `model`,
1680
+ * `os_version`, `device_type` and `serial_number`. `desc` may be specified optionally at the end to specify results to be sorted in descending order. Default order is ascending.
1681
+ */
1682
+ orderBy?: string;
1683
+ /** Optional. The maximum number of Devices to return. If unspecified, at most 20 Devices will be returned. The maximum value is 100; values above 100 will be coerced to 100. */
1684
+ pageSize?: number;
1685
+ /**
1686
+ * Optional. A page token, received from a previous `ListDevices` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to
1687
+ * `ListDevices` must match the call that provided the page token.
1688
+ */
1689
+ pageToken?: string;
1690
+ /** Returns response with indentations and line breaks. */
1691
+ prettyPrint?: boolean;
1692
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1693
+ quotaUser?: string;
1694
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1695
+ upload_protocol?: string;
1696
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1697
+ uploadType?: string;
1698
+ /** Optional. The view to use for the List request. */
1699
+ view?: string;
1700
+ }): Request<GoogleAppsCloudidentityDevicesV1ListDevicesResponse>;
1701
+ /** Wipes all data on the specified device. */
1702
+ wipe(request: {
1703
+ /** V1 error format. */
1704
+ "$.xgafv"?: string;
1705
+ /** OAuth access token. */
1706
+ access_token?: string;
1707
+ /** Data format for response. */
1708
+ alt?: string;
1709
+ /** JSONP */
1710
+ callback?: string;
1711
+ /** Selector specifying which fields to include in a partial response. */
1712
+ fields?: string;
1713
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1714
+ key?: string;
1715
+ /**
1716
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}/deviceUsers/{device_user}`, where device is the unique
1717
+ * ID assigned to the Device, and device_user is the unique ID assigned to the User.
1718
+ */
1719
+ name: string;
1720
+ /** OAuth 2.0 token for the current user. */
1721
+ oauth_token?: string;
1722
+ /** Returns response with indentations and line breaks. */
1723
+ prettyPrint?: boolean;
1724
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1725
+ quotaUser?: string;
1726
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1727
+ upload_protocol?: string;
1728
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1729
+ uploadType?: string;
1730
+ /** Request body */
1731
+ resource: GoogleAppsCloudidentityDevicesV1WipeDeviceRequest;
1732
+ }): Request<Operation>;
1733
+ wipe(request: {
1734
+ /** V1 error format. */
1735
+ "$.xgafv"?: string;
1736
+ /** OAuth access token. */
1737
+ access_token?: string;
1738
+ /** Data format for response. */
1739
+ alt?: string;
1740
+ /** JSONP */
1741
+ callback?: string;
1742
+ /** Selector specifying which fields to include in a partial response. */
1743
+ fields?: string;
1744
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1745
+ key?: string;
1746
+ /**
1747
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device}/deviceUsers/{device_user}`, where device is the unique
1748
+ * ID assigned to the Device, and device_user is the unique ID assigned to the User.
1749
+ */
1750
+ name: string;
1751
+ /** OAuth 2.0 token for the current user. */
1752
+ oauth_token?: string;
1753
+ /** Returns response with indentations and line breaks. */
1754
+ prettyPrint?: boolean;
1755
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1756
+ quotaUser?: string;
1757
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1758
+ upload_protocol?: string;
1759
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1760
+ uploadType?: string;
1761
+ },
1762
+ body: GoogleAppsCloudidentityDevicesV1WipeDeviceRequest): Request<Operation>;
1763
+ deviceUsers: DeviceUsersResource;
1764
+ }
1765
+ interface MembershipsResource {
1766
+ /**
1767
+ * Check a potential member for membership in a group. **Note:** This feature is only available to Google Workspace Enterprise Standard, Enterprise Plus, and Enterprise for Education;
1768
+ * and Cloud Identity Premium accounts. If the account of the member is not one of these, a 403 (PERMISSION_DENIED) HTTP status code will be returned. A member has membership to a
1769
+ * group as long as there is a single viewable transitive membership between the group and the member. The actor must have view permissions to at least one transitive membership
1770
+ * between the member and group.
1771
+ */
1772
+ checkTransitiveMembership(request?: {
1773
+ /** V1 error format. */
1774
+ "$.xgafv"?: string;
1775
+ /** OAuth access token. */
1776
+ access_token?: string;
1777
+ /** Data format for response. */
1778
+ alt?: string;
1779
+ /** JSONP */
1780
+ callback?: string;
1781
+ /** Selector specifying which fields to include in a partial response. */
1782
+ fields?: string;
1783
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1784
+ key?: string;
1785
+ /** OAuth 2.0 token for the current user. */
1786
+ oauth_token?: string;
1787
+ /**
1788
+ * [Resource name](https://cloud.google.com/apis/design/resource_names) of the group to check the transitive membership in. Format: `groups/{group}`, where `group` is the unique id
1789
+ * assigned to the Group to which the Membership belongs to.
1790
+ */
1791
+ parent: string;
1792
+ /** Returns response with indentations and line breaks. */
1793
+ prettyPrint?: boolean;
1794
+ /**
1795
+ * Required. A CEL expression that MUST include member specification. This is a `required` field. Certain groups are uniquely identified by both a 'member_key_id' and a
1796
+ * 'member_key_namespace', which requires an additional query input: 'member_key_namespace'. Example query: `member_key_id == 'member_key_id_value'`
1797
+ */
1798
+ query?: string;
1799
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1800
+ quotaUser?: string;
1801
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1802
+ upload_protocol?: string;
1803
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1804
+ uploadType?: string;
1805
+ }): Request<CheckTransitiveMembershipResponse>;
1806
+ /** Creates a `Membership`. */
1807
+ create(request: {
1808
+ /** V1 error format. */
1809
+ "$.xgafv"?: string;
1810
+ /** OAuth access token. */
1811
+ access_token?: string;
1812
+ /** Data format for response. */
1813
+ alt?: string;
1814
+ /** JSONP */
1815
+ callback?: string;
1816
+ /** Selector specifying which fields to include in a partial response. */
1817
+ fields?: string;
1818
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1819
+ key?: string;
1820
+ /** OAuth 2.0 token for the current user. */
1821
+ oauth_token?: string;
1822
+ /** Required. The parent `Group` resource under which to create the `Membership`. Must be of the form `groups/{group}`. */
1823
+ parent: string;
1824
+ /** Returns response with indentations and line breaks. */
1825
+ prettyPrint?: boolean;
1826
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1827
+ quotaUser?: string;
1828
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1829
+ upload_protocol?: string;
1830
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1831
+ uploadType?: string;
1832
+ /** Request body */
1833
+ resource: Membership;
1834
+ }): Request<Operation>;
1835
+ create(request: {
1836
+ /** V1 error format. */
1837
+ "$.xgafv"?: string;
1838
+ /** OAuth access token. */
1839
+ access_token?: string;
1840
+ /** Data format for response. */
1841
+ alt?: string;
1842
+ /** JSONP */
1843
+ callback?: string;
1844
+ /** Selector specifying which fields to include in a partial response. */
1845
+ fields?: string;
1846
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1847
+ key?: string;
1848
+ /** OAuth 2.0 token for the current user. */
1849
+ oauth_token?: string;
1850
+ /** Required. The parent `Group` resource under which to create the `Membership`. Must be of the form `groups/{group}`. */
1851
+ parent: string;
1852
+ /** Returns response with indentations and line breaks. */
1853
+ prettyPrint?: boolean;
1854
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1855
+ quotaUser?: string;
1856
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1857
+ upload_protocol?: string;
1858
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1859
+ uploadType?: string;
1860
+ },
1861
+ body: Membership): Request<Operation>;
1862
+ /** Deletes a `Membership`. */
1863
+ delete(request?: {
1864
+ /** V1 error format. */
1865
+ "$.xgafv"?: string;
1866
+ /** OAuth access token. */
1867
+ access_token?: string;
1868
+ /** Data format for response. */
1869
+ alt?: string;
1870
+ /** JSONP */
1871
+ callback?: string;
1872
+ /** Selector specifying which fields to include in a partial response. */
1873
+ fields?: string;
1874
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1875
+ key?: string;
1876
+ /** Required. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Membership` to delete. Must be of the form `groups/{group}/memberships/{membership}` */
1877
+ name: string;
1878
+ /** OAuth 2.0 token for the current user. */
1879
+ oauth_token?: string;
1880
+ /** Returns response with indentations and line breaks. */
1881
+ prettyPrint?: boolean;
1882
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1883
+ quotaUser?: string;
1884
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1885
+ upload_protocol?: string;
1886
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1887
+ uploadType?: string;
1888
+ }): Request<Operation>;
1889
+ /** Retrieves a `Membership`. */
1890
+ get(request?: {
1891
+ /** V1 error format. */
1892
+ "$.xgafv"?: string;
1893
+ /** OAuth access token. */
1894
+ access_token?: string;
1895
+ /** Data format for response. */
1896
+ alt?: string;
1897
+ /** JSONP */
1898
+ callback?: string;
1899
+ /** Selector specifying which fields to include in a partial response. */
1900
+ fields?: string;
1901
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1902
+ key?: string;
1903
+ /**
1904
+ * Required. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Membership` to retrieve. Must be of the form
1905
+ * `groups/{group}/memberships/{membership}`.
1906
+ */
1907
+ name: string;
1908
+ /** OAuth 2.0 token for the current user. */
1909
+ oauth_token?: string;
1910
+ /** Returns response with indentations and line breaks. */
1911
+ prettyPrint?: boolean;
1912
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1913
+ quotaUser?: string;
1914
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1915
+ upload_protocol?: string;
1916
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1917
+ uploadType?: string;
1918
+ }): Request<Membership>;
1919
+ /**
1920
+ * Get a membership graph of just a member or both a member and a group. **Note:** This feature is only available to Google Workspace Enterprise Standard, Enterprise Plus, and
1921
+ * Enterprise for Education; and Cloud Identity Premium accounts. If the account of the member is not one of these, a 403 (PERMISSION_DENIED) HTTP status code will be returned. Given a
1922
+ * member, the response will contain all membership paths from the member. Given both a group and a member, the response will contain all membership paths between the group and the
1923
+ * member.
1924
+ */
1925
+ getMembershipGraph(request?: {
1926
+ /** V1 error format. */
1927
+ "$.xgafv"?: string;
1928
+ /** OAuth access token. */
1929
+ access_token?: string;
1930
+ /** Data format for response. */
1931
+ alt?: string;
1932
+ /** JSONP */
1933
+ callback?: string;
1934
+ /** Selector specifying which fields to include in a partial response. */
1935
+ fields?: string;
1936
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1937
+ key?: string;
1938
+ /** OAuth 2.0 token for the current user. */
1939
+ oauth_token?: string;
1940
+ /**
1941
+ * Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the group to search transitive memberships in. Format: `groups/{group}`, where `group` is the
1942
+ * unique ID assigned to the Group to which the Membership belongs to. group can be a wildcard collection id "-". When a group is specified, the membership graph will be
1943
+ * constrained to paths between the member (defined in the query) and the parent. If a wildcard collection is provided, all membership paths connected to the member will be
1944
+ * returned.
1945
+ */
1946
+ parent: string;
1947
+ /** Returns response with indentations and line breaks. */
1948
+ prettyPrint?: boolean;
1949
+ /**
1950
+ * Required. A CEL expression that MUST include member specification AND label(s). Certain groups are uniquely identified by both a 'member_key_id' and a 'member_key_namespace',
1951
+ * which requires an additional query input: 'member_key_namespace'. Example query: `member_key_id == 'member_key_id_value' && in labels`
1952
+ */
1953
+ query?: string;
1954
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1955
+ quotaUser?: string;
1956
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1957
+ upload_protocol?: string;
1958
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1959
+ uploadType?: string;
1960
+ }): Request<Operation>;
1961
+ /** Lists the `Membership`s within a `Group`. */
1962
+ list(request?: {
1963
+ /** V1 error format. */
1964
+ "$.xgafv"?: string;
1965
+ /** OAuth access token. */
1966
+ access_token?: string;
1967
+ /** Data format for response. */
1968
+ alt?: string;
1969
+ /** JSONP */
1970
+ callback?: string;
1971
+ /** Selector specifying which fields to include in a partial response. */
1972
+ fields?: string;
1973
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
1974
+ key?: string;
1975
+ /** OAuth 2.0 token for the current user. */
1976
+ oauth_token?: string;
1977
+ /**
1978
+ * The maximum number of results to return. Note that the number of results returned may be less than this value even if there are more available results. To fetch all results,
1979
+ * clients must continue calling this method repeatedly until the response no longer contains a `next_page_token`. If unspecified, defaults to 200 for `GroupView.BASIC` and to 50
1980
+ * for `GroupView.FULL`. Must not be greater than 1000 for `GroupView.BASIC` or 500 for `GroupView.FULL`.
1981
+ */
1982
+ pageSize?: number;
1983
+ /** The `next_page_token` value returned from a previous search request, if any. */
1984
+ pageToken?: string;
1985
+ /** Required. The parent `Group` resource under which to lookup the `Membership` name. Must be of the form `groups/{group}`. */
1986
+ parent: string;
1987
+ /** Returns response with indentations and line breaks. */
1988
+ prettyPrint?: boolean;
1989
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
1990
+ quotaUser?: string;
1991
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
1992
+ upload_protocol?: string;
1993
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
1994
+ uploadType?: string;
1995
+ /** The level of detail to be returned. If unspecified, defaults to `View.BASIC`. */
1996
+ view?: string;
1997
+ }): Request<ListMembershipsResponse>;
1998
+ /** Looks up the [resource name](https://cloud.google.com/apis/design/resource_names) of a `Membership` by its `EntityKey`. */
1999
+ lookup(request?: {
2000
+ /** V1 error format. */
2001
+ "$.xgafv"?: string;
2002
+ /** OAuth access token. */
2003
+ access_token?: string;
2004
+ /** Data format for response. */
2005
+ alt?: string;
2006
+ /** JSONP */
2007
+ callback?: string;
2008
+ /** Selector specifying which fields to include in a partial response. */
2009
+ fields?: string;
2010
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2011
+ key?: string;
2012
+ /**
2013
+ * The ID of the entity. For Google-managed entities, the `id` should be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a
2014
+ * string conforming to the Identity Source's requirements. Must be unique within a `namespace`.
2015
+ */
2016
+ "memberKey.id"?: string;
2017
+ /**
2018
+ * The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the
2019
+ * `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of
2020
+ * `identitysources/{identity_source}`.
2021
+ */
2022
+ "memberKey.namespace"?: string;
2023
+ /** OAuth 2.0 token for the current user. */
2024
+ oauth_token?: string;
2025
+ /** Required. The parent `Group` resource under which to lookup the `Membership` name. Must be of the form `groups/{group}`. */
2026
+ parent: string;
2027
+ /** Returns response with indentations and line breaks. */
2028
+ prettyPrint?: boolean;
2029
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2030
+ quotaUser?: string;
2031
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2032
+ upload_protocol?: string;
2033
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2034
+ uploadType?: string;
2035
+ }): Request<LookupMembershipNameResponse>;
2036
+ /** Modifies the `MembershipRole`s of a `Membership`. */
2037
+ modifyMembershipRoles(request: {
2038
+ /** V1 error format. */
2039
+ "$.xgafv"?: string;
2040
+ /** OAuth access token. */
2041
+ access_token?: string;
2042
+ /** Data format for response. */
2043
+ alt?: string;
2044
+ /** JSONP */
2045
+ callback?: string;
2046
+ /** Selector specifying which fields to include in a partial response. */
2047
+ fields?: string;
2048
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2049
+ key?: string;
2050
+ /**
2051
+ * Required. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Membership` whose roles are to be modified. Must be of the form
2052
+ * `groups/{group}/memberships/{membership}`.
2053
+ */
2054
+ name: string;
2055
+ /** OAuth 2.0 token for the current user. */
2056
+ oauth_token?: string;
2057
+ /** Returns response with indentations and line breaks. */
2058
+ prettyPrint?: boolean;
2059
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2060
+ quotaUser?: string;
2061
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2062
+ upload_protocol?: string;
2063
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2064
+ uploadType?: string;
2065
+ /** Request body */
2066
+ resource: ModifyMembershipRolesRequest;
2067
+ }): Request<ModifyMembershipRolesResponse>;
2068
+ modifyMembershipRoles(request: {
2069
+ /** V1 error format. */
2070
+ "$.xgafv"?: string;
2071
+ /** OAuth access token. */
2072
+ access_token?: string;
2073
+ /** Data format for response. */
2074
+ alt?: string;
2075
+ /** JSONP */
2076
+ callback?: string;
2077
+ /** Selector specifying which fields to include in a partial response. */
2078
+ fields?: string;
2079
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2080
+ key?: string;
2081
+ /**
2082
+ * Required. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Membership` whose roles are to be modified. Must be of the form
2083
+ * `groups/{group}/memberships/{membership}`.
2084
+ */
2085
+ name: string;
2086
+ /** OAuth 2.0 token for the current user. */
2087
+ oauth_token?: string;
2088
+ /** Returns response with indentations and line breaks. */
2089
+ prettyPrint?: boolean;
2090
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2091
+ quotaUser?: string;
2092
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2093
+ upload_protocol?: string;
2094
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2095
+ uploadType?: string;
2096
+ },
2097
+ body: ModifyMembershipRolesRequest): Request<ModifyMembershipRolesResponse>;
2098
+ /**
2099
+ * Search transitive groups of a member. **Note:** This feature is only available to Google Workspace Enterprise Standard, Enterprise Plus, and Enterprise for Education; and Cloud
2100
+ * Identity Premium accounts. If the account of the member is not one of these, a 403 (PERMISSION_DENIED) HTTP status code will be returned. A transitive group is any group that has a
2101
+ * direct or indirect membership to the member. Actor must have view permissions all transitive groups.
2102
+ */
2103
+ searchTransitiveGroups(request?: {
2104
+ /** V1 error format. */
2105
+ "$.xgafv"?: string;
2106
+ /** OAuth access token. */
2107
+ access_token?: string;
2108
+ /** Data format for response. */
2109
+ alt?: string;
2110
+ /** JSONP */
2111
+ callback?: string;
2112
+ /** Selector specifying which fields to include in a partial response. */
2113
+ fields?: string;
2114
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2115
+ key?: string;
2116
+ /** OAuth 2.0 token for the current user. */
2117
+ oauth_token?: string;
2118
+ /** The default page size is 200 (max 1000). */
2119
+ pageSize?: number;
2120
+ /** The next_page_token value returned from a previous list request, if any. */
2121
+ pageToken?: string;
2122
+ /**
2123
+ * [Resource name](https://cloud.google.com/apis/design/resource_names) of the group to search transitive memberships in. Format: `groups/{group}`, where `group` is always '-' as
2124
+ * this API will search across all groups for a given member.
2125
+ */
2126
+ parent: string;
2127
+ /** Returns response with indentations and line breaks. */
2128
+ prettyPrint?: boolean;
2129
+ /**
2130
+ * Required. A CEL expression that MUST include member specification AND label(s). This is a `required` field. Users can search on label attributes of groups. CONTAINS match ('in')
2131
+ * is supported on labels. Identity-mapped groups are uniquely identified by both a `member_key_id` and a `member_key_namespace`, which requires an additional query input:
2132
+ * `member_key_namespace`. Example query: `member_key_id == 'member_key_id_value' && in labels`
2133
+ */
2134
+ query?: string;
2135
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2136
+ quotaUser?: string;
2137
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2138
+ upload_protocol?: string;
2139
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2140
+ uploadType?: string;
2141
+ }): Request<SearchTransitiveGroupsResponse>;
2142
+ /**
2143
+ * Search transitive memberships of a group. **Note:** This feature is only available to Google Workspace Enterprise Standard, Enterprise Plus, and Enterprise for Education; and Cloud
2144
+ * Identity Premium accounts. If the account of the group is not one of these, a 403 (PERMISSION_DENIED) HTTP status code will be returned. A transitive membership is any direct or
2145
+ * indirect membership of a group. Actor must have view permissions to all transitive memberships.
2146
+ */
2147
+ searchTransitiveMemberships(request?: {
2148
+ /** V1 error format. */
2149
+ "$.xgafv"?: string;
2150
+ /** OAuth access token. */
2151
+ access_token?: string;
2152
+ /** Data format for response. */
2153
+ alt?: string;
2154
+ /** JSONP */
2155
+ callback?: string;
2156
+ /** Selector specifying which fields to include in a partial response. */
2157
+ fields?: string;
2158
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2159
+ key?: string;
2160
+ /** OAuth 2.0 token for the current user. */
2161
+ oauth_token?: string;
2162
+ /** The default page size is 200 (max 1000). */
2163
+ pageSize?: number;
2164
+ /** The next_page_token value returned from a previous list request, if any. */
2165
+ pageToken?: string;
2166
+ /**
2167
+ * [Resource name](https://cloud.google.com/apis/design/resource_names) of the group to search transitive memberships in. Format: `groups/{group}`, where `group` is the unique ID
2168
+ * assigned to the Group.
2169
+ */
2170
+ parent: string;
2171
+ /** Returns response with indentations and line breaks. */
2172
+ prettyPrint?: boolean;
2173
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2174
+ quotaUser?: string;
2175
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2176
+ upload_protocol?: string;
2177
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2178
+ uploadType?: string;
2179
+ }): Request<SearchTransitiveMembershipsResponse>;
2180
+ }
2181
+ interface GroupsResource {
2182
+ /** Creates a Group. */
2183
+ create(request: {
2184
+ /** V1 error format. */
2185
+ "$.xgafv"?: string;
2186
+ /** OAuth access token. */
2187
+ access_token?: string;
2188
+ /** Data format for response. */
2189
+ alt?: string;
2190
+ /** JSONP */
2191
+ callback?: string;
2192
+ /** Selector specifying which fields to include in a partial response. */
2193
+ fields?: string;
2194
+ /** Optional. The initial configuration option for the `Group`. */
2195
+ initialGroupConfig?: string;
2196
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2197
+ key?: string;
2198
+ /** OAuth 2.0 token for the current user. */
2199
+ oauth_token?: string;
2200
+ /** Returns response with indentations and line breaks. */
2201
+ prettyPrint?: boolean;
2202
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2203
+ quotaUser?: string;
2204
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2205
+ upload_protocol?: string;
2206
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2207
+ uploadType?: string;
2208
+ /** Request body */
2209
+ resource: Group;
2210
+ }): Request<Operation>;
2211
+ create(request: {
2212
+ /** V1 error format. */
2213
+ "$.xgafv"?: string;
2214
+ /** OAuth access token. */
2215
+ access_token?: string;
2216
+ /** Data format for response. */
2217
+ alt?: string;
2218
+ /** JSONP */
2219
+ callback?: string;
2220
+ /** Selector specifying which fields to include in a partial response. */
2221
+ fields?: string;
2222
+ /** Optional. The initial configuration option for the `Group`. */
2223
+ initialGroupConfig?: string;
2224
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2225
+ key?: string;
2226
+ /** OAuth 2.0 token for the current user. */
2227
+ oauth_token?: string;
2228
+ /** Returns response with indentations and line breaks. */
2229
+ prettyPrint?: boolean;
2230
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2231
+ quotaUser?: string;
2232
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2233
+ upload_protocol?: string;
2234
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2235
+ uploadType?: string;
2236
+ },
2237
+ body: Group): Request<Operation>;
2238
+ /** Deletes a `Group`. */
2239
+ delete(request?: {
2240
+ /** V1 error format. */
2241
+ "$.xgafv"?: string;
2242
+ /** OAuth access token. */
2243
+ access_token?: string;
2244
+ /** Data format for response. */
2245
+ alt?: string;
2246
+ /** JSONP */
2247
+ callback?: string;
2248
+ /** Selector specifying which fields to include in a partial response. */
2249
+ fields?: string;
2250
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2251
+ key?: string;
2252
+ /** Required. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group` to retrieve. Must be of the form `groups/{group}`. */
2253
+ name: string;
2254
+ /** OAuth 2.0 token for the current user. */
2255
+ oauth_token?: string;
2256
+ /** Returns response with indentations and line breaks. */
2257
+ prettyPrint?: boolean;
2258
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2259
+ quotaUser?: string;
2260
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2261
+ upload_protocol?: string;
2262
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2263
+ uploadType?: string;
2264
+ }): Request<Operation>;
2265
+ /** Retrieves a `Group`. */
2266
+ get(request?: {
2267
+ /** V1 error format. */
2268
+ "$.xgafv"?: string;
2269
+ /** OAuth access token. */
2270
+ access_token?: string;
2271
+ /** Data format for response. */
2272
+ alt?: string;
2273
+ /** JSONP */
2274
+ callback?: string;
2275
+ /** Selector specifying which fields to include in a partial response. */
2276
+ fields?: string;
2277
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2278
+ key?: string;
2279
+ /** Required. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group` to retrieve. Must be of the form `groups/{group}`. */
2280
+ name: string;
2281
+ /** OAuth 2.0 token for the current user. */
2282
+ oauth_token?: string;
2283
+ /** Returns response with indentations and line breaks. */
2284
+ prettyPrint?: boolean;
2285
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2286
+ quotaUser?: string;
2287
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2288
+ upload_protocol?: string;
2289
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2290
+ uploadType?: string;
2291
+ }): Request<Group>;
2292
+ /** Get Security Settings */
2293
+ getSecuritySettings(request?: {
2294
+ /** V1 error format. */
2295
+ "$.xgafv"?: string;
2296
+ /** OAuth access token. */
2297
+ access_token?: string;
2298
+ /** Data format for response. */
2299
+ alt?: string;
2300
+ /** JSONP */
2301
+ callback?: string;
2302
+ /** Selector specifying which fields to include in a partial response. */
2303
+ fields?: string;
2304
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2305
+ key?: string;
2306
+ /** Required. The security settings to retrieve. Format: `groups/{group_id}/securitySettings` */
2307
+ name: string;
2308
+ /** OAuth 2.0 token for the current user. */
2309
+ oauth_token?: string;
2310
+ /** Returns response with indentations and line breaks. */
2311
+ prettyPrint?: boolean;
2312
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2313
+ quotaUser?: string;
2314
+ /**
2315
+ * Field-level read mask of which fields to return. "*" returns all fields. If not specified, all fields will be returned. May only contain the following field:
2316
+ * `member_restriction`.
2317
+ */
2318
+ readMask?: string;
2319
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2320
+ upload_protocol?: string;
2321
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2322
+ uploadType?: string;
2323
+ }): Request<SecuritySettings>;
2324
+ /** Lists the `Group` resources under a customer or namespace. */
2325
+ list(request?: {
2326
+ /** V1 error format. */
2327
+ "$.xgafv"?: string;
2328
+ /** OAuth access token. */
2329
+ access_token?: string;
2330
+ /** Data format for response. */
2331
+ alt?: string;
2332
+ /** JSONP */
2333
+ callback?: string;
2334
+ /** Selector specifying which fields to include in a partial response. */
2335
+ fields?: string;
2336
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2337
+ key?: string;
2338
+ /** OAuth 2.0 token for the current user. */
2339
+ oauth_token?: string;
2340
+ /**
2341
+ * The maximum number of results to return. Note that the number of results returned may be less than this value even if there are more available results. To fetch all results,
2342
+ * clients must continue calling this method repeatedly until the response no longer contains a `next_page_token`. If unspecified, defaults to 200 for `View.BASIC` and to 50 for
2343
+ * `View.FULL`. Must not be greater than 1000 for `View.BASIC` or 500 for `View.FULL`.
2344
+ */
2345
+ pageSize?: number;
2346
+ /** The `next_page_token` value returned from a previous list request, if any. */
2347
+ pageToken?: string;
2348
+ /**
2349
+ * Required. The parent resource under which to list all `Group` resources. Must be of the form `identitysources/{identity_source}` for external- identity-mapped groups or
2350
+ * `customers/{customer}` for Google Groups. The `customer` must begin with "C" (for example, 'C046psxkn').
2351
+ */
2352
+ parent?: string;
2353
+ /** Returns response with indentations and line breaks. */
2354
+ prettyPrint?: boolean;
2355
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2356
+ quotaUser?: string;
2357
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2358
+ upload_protocol?: string;
2359
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2360
+ uploadType?: string;
2361
+ /** The level of detail to be returned. If unspecified, defaults to `View.BASIC`. */
2362
+ view?: string;
2363
+ }): Request<ListGroupsResponse>;
2364
+ /** Looks up the [resource name](https://cloud.google.com/apis/design/resource_names) of a `Group` by its `EntityKey`. */
2365
+ lookup(request?: {
2366
+ /** V1 error format. */
2367
+ "$.xgafv"?: string;
2368
+ /** OAuth access token. */
2369
+ access_token?: string;
2370
+ /** Data format for response. */
2371
+ alt?: string;
2372
+ /** JSONP */
2373
+ callback?: string;
2374
+ /** Selector specifying which fields to include in a partial response. */
2375
+ fields?: string;
2376
+ /**
2377
+ * The ID of the entity. For Google-managed entities, the `id` should be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a
2378
+ * string conforming to the Identity Source's requirements. Must be unique within a `namespace`.
2379
+ */
2380
+ "groupKey.id"?: string;
2381
+ /**
2382
+ * The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the
2383
+ * `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of
2384
+ * `identitysources/{identity_source}`.
2385
+ */
2386
+ "groupKey.namespace"?: string;
2387
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2388
+ key?: string;
2389
+ /** OAuth 2.0 token for the current user. */
2390
+ oauth_token?: string;
2391
+ /** Returns response with indentations and line breaks. */
2392
+ prettyPrint?: boolean;
2393
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2394
+ quotaUser?: string;
2395
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2396
+ upload_protocol?: string;
2397
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2398
+ uploadType?: string;
2399
+ }): Request<LookupGroupNameResponse>;
2400
+ /** Updates a `Group`. */
2401
+ patch(request: {
2402
+ /** V1 error format. */
2403
+ "$.xgafv"?: string;
2404
+ /** OAuth access token. */
2405
+ access_token?: string;
2406
+ /** Data format for response. */
2407
+ alt?: string;
2408
+ /** JSONP */
2409
+ callback?: string;
2410
+ /** Selector specifying which fields to include in a partial response. */
2411
+ fields?: string;
2412
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2413
+ key?: string;
2414
+ /** Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group}`. */
2415
+ name: string;
2416
+ /** OAuth 2.0 token for the current user. */
2417
+ oauth_token?: string;
2418
+ /** Returns response with indentations and line breaks. */
2419
+ prettyPrint?: boolean;
2420
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2421
+ quotaUser?: string;
2422
+ /** Required. The names of fields to update. May only contain the following field names: `display_name`, `description`, `labels`. */
2423
+ updateMask?: string;
2424
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2425
+ upload_protocol?: string;
2426
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2427
+ uploadType?: string;
2428
+ /** Request body */
2429
+ resource: Group;
2430
+ }): Request<Operation>;
2431
+ patch(request: {
2432
+ /** V1 error format. */
2433
+ "$.xgafv"?: string;
2434
+ /** OAuth access token. */
2435
+ access_token?: string;
2436
+ /** Data format for response. */
2437
+ alt?: string;
2438
+ /** JSONP */
2439
+ callback?: string;
2440
+ /** Selector specifying which fields to include in a partial response. */
2441
+ fields?: string;
2442
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2443
+ key?: string;
2444
+ /** Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group}`. */
2445
+ name: string;
2446
+ /** OAuth 2.0 token for the current user. */
2447
+ oauth_token?: string;
2448
+ /** Returns response with indentations and line breaks. */
2449
+ prettyPrint?: boolean;
2450
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2451
+ quotaUser?: string;
2452
+ /** Required. The names of fields to update. May only contain the following field names: `display_name`, `description`, `labels`. */
2453
+ updateMask?: string;
2454
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2455
+ upload_protocol?: string;
2456
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2457
+ uploadType?: string;
2458
+ },
2459
+ body: Group): Request<Operation>;
2460
+ /** Searches for `Group` resources matching a specified query. */
2461
+ search(request?: {
2462
+ /** V1 error format. */
2463
+ "$.xgafv"?: string;
2464
+ /** OAuth access token. */
2465
+ access_token?: string;
2466
+ /** Data format for response. */
2467
+ alt?: string;
2468
+ /** JSONP */
2469
+ callback?: string;
2470
+ /** Selector specifying which fields to include in a partial response. */
2471
+ fields?: string;
2472
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2473
+ key?: string;
2474
+ /** OAuth 2.0 token for the current user. */
2475
+ oauth_token?: string;
2476
+ /**
2477
+ * The maximum number of results to return. Note that the number of results returned may be less than this value even if there are more available results. To fetch all results,
2478
+ * clients must continue calling this method repeatedly until the response no longer contains a `next_page_token`. If unspecified, defaults to 200 for `GroupView.BASIC` and 50 for
2479
+ * `GroupView.FULL`. Must not be greater than 1000 for `GroupView.BASIC` or 500 for `GroupView.FULL`.
2480
+ */
2481
+ pageSize?: number;
2482
+ /** The `next_page_token` value returned from a previous search request, if any. */
2483
+ pageToken?: string;
2484
+ /** Returns response with indentations and line breaks. */
2485
+ prettyPrint?: boolean;
2486
+ /**
2487
+ * Required. The search query. Must be specified in [Common Expression Language](https://opensource.google/projects/cel). May only contain equality operators on the parent and
2488
+ * inclusion operators on labels (e.g., `parent == 'customers/{customer}' && 'cloudidentity.googleapis.com/groups.discussion_forum' in labels`). The `customer` must begin with "C"
2489
+ * (for example, 'C046psxkn').
2490
+ */
2491
+ query?: string;
2492
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2493
+ quotaUser?: string;
2494
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2495
+ upload_protocol?: string;
2496
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2497
+ uploadType?: string;
2498
+ /** The level of detail to be returned. If unspecified, defaults to `View.BASIC`. */
2499
+ view?: string;
2500
+ }): Request<SearchGroupsResponse>;
2501
+ /** Update Security Settings */
2502
+ updateSecuritySettings(request: {
2503
+ /** V1 error format. */
2504
+ "$.xgafv"?: string;
2505
+ /** OAuth access token. */
2506
+ access_token?: string;
2507
+ /** Data format for response. */
2508
+ alt?: string;
2509
+ /** JSONP */
2510
+ callback?: string;
2511
+ /** Selector specifying which fields to include in a partial response. */
2512
+ fields?: string;
2513
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2514
+ key?: string;
2515
+ /** Output only. The resource name of the security settings. Shall be of the form `groups/{group_id}/securitySettings`. */
2516
+ name: string;
2517
+ /** OAuth 2.0 token for the current user. */
2518
+ oauth_token?: string;
2519
+ /** Returns response with indentations and line breaks. */
2520
+ prettyPrint?: boolean;
2521
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2522
+ quotaUser?: string;
2523
+ /** Required. The fully-qualified names of fields to update. May only contain the following field: `member_restriction.query`. */
2524
+ updateMask?: string;
2525
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2526
+ upload_protocol?: string;
2527
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2528
+ uploadType?: string;
2529
+ /** Request body */
2530
+ resource: SecuritySettings;
2531
+ }): Request<Operation>;
2532
+ updateSecuritySettings(request: {
2533
+ /** V1 error format. */
2534
+ "$.xgafv"?: string;
2535
+ /** OAuth access token. */
2536
+ access_token?: string;
2537
+ /** Data format for response. */
2538
+ alt?: string;
2539
+ /** JSONP */
2540
+ callback?: string;
2541
+ /** Selector specifying which fields to include in a partial response. */
2542
+ fields?: string;
2543
+ /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */
2544
+ key?: string;
2545
+ /** Output only. The resource name of the security settings. Shall be of the form `groups/{group_id}/securitySettings`. */
2546
+ name: string;
2547
+ /** OAuth 2.0 token for the current user. */
2548
+ oauth_token?: string;
2549
+ /** Returns response with indentations and line breaks. */
2550
+ prettyPrint?: boolean;
2551
+ /** Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */
2552
+ quotaUser?: string;
2553
+ /** Required. The fully-qualified names of fields to update. May only contain the following field: `member_restriction.query`. */
2554
+ updateMask?: string;
2555
+ /** Upload protocol for media (e.g. "raw", "multipart"). */
2556
+ upload_protocol?: string;
2557
+ /** Legacy upload protocol for media (e.g. "media", "multipart"). */
2558
+ uploadType?: string;
2559
+ },
2560
+ body: SecuritySettings): Request<Operation>;
2561
+ memberships: MembershipsResource;
2562
+ }
2563
+
2564
+ const customers: CustomersResource;
2565
+
2566
+ const devices: DevicesResource;
2567
+
2568
+ const groups: GroupsResource;
2569
+ }
2570
+ }