| // This is a generated file (see the discoveryapis_generator project). |
| |
| // ignore_for_file: camel_case_types |
| // ignore_for_file: comment_references |
| // ignore_for_file: file_names |
| // ignore_for_file: library_names |
| // ignore_for_file: lines_longer_than_80_chars |
| // ignore_for_file: non_constant_identifier_names |
| // ignore_for_file: prefer_expression_function_bodies |
| // ignore_for_file: prefer_interpolation_to_compose_strings |
| // ignore_for_file: unnecessary_brace_in_string_interps |
| // ignore_for_file: unnecessary_lambdas |
| // ignore_for_file: unnecessary_string_interpolations |
| |
| /// Cloud Identity API - v1 |
| /// |
| /// API for provisioning and managing identity resources. |
| /// |
| /// For more information, see <https://cloud.google.com/identity/> |
| /// |
| /// Create an instance of [CloudIdentityApi] to access these resources: |
| /// |
| /// - [DevicesResource] |
| /// - [DevicesDeviceUsersResource] |
| /// - [DevicesDeviceUsersClientStatesResource] |
| /// - [GroupsResource] |
| /// - [GroupsMembershipsResource] |
| library cloudidentity.v1; |
| |
| import 'dart:async' as async; |
| import 'dart:convert' as convert; |
| import 'dart:core' as core; |
| |
| import 'package:_discoveryapis_commons/_discoveryapis_commons.dart' as commons; |
| import 'package:http/http.dart' as http; |
| |
| import '../src/user_agent.dart'; |
| |
| export 'package:_discoveryapis_commons/_discoveryapis_commons.dart' |
| show ApiRequestError, DetailedApiRequestError; |
| |
| /// API for provisioning and managing identity resources. |
| class CloudIdentityApi { |
| /// See your device details |
| static const cloudIdentityDevicesLookupScope = |
| 'https://www.googleapis.com/auth/cloud-identity.devices.lookup'; |
| |
| /// See, change, create, and delete any of the Cloud Identity Groups that you |
| /// can access, including the members of each group |
| static const cloudIdentityGroupsScope = |
| 'https://www.googleapis.com/auth/cloud-identity.groups'; |
| |
| /// See any Cloud Identity Groups that you can access, including group members |
| /// and their emails |
| static const cloudIdentityGroupsReadonlyScope = |
| 'https://www.googleapis.com/auth/cloud-identity.groups.readonly'; |
| |
| /// View and manage your data across Google Cloud Platform services |
| static const cloudPlatformScope = |
| 'https://www.googleapis.com/auth/cloud-platform'; |
| |
| final commons.ApiRequester _requester; |
| |
| DevicesResource get devices => DevicesResource(_requester); |
| GroupsResource get groups => GroupsResource(_requester); |
| |
| CloudIdentityApi(http.Client client, |
| {core.String rootUrl = 'https://cloudidentity.googleapis.com/', |
| core.String servicePath = ''}) |
| : _requester = |
| commons.ApiRequester(client, rootUrl, servicePath, requestHeaders); |
| } |
| |
| class DevicesResource { |
| final commons.ApiRequester _requester; |
| |
| DevicesDeviceUsersResource get deviceUsers => |
| DevicesDeviceUsersResource(_requester); |
| |
| DevicesResource(commons.ApiRequester client) : _requester = client; |
| |
| /// 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 |
| /// 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 device. The cancel wipe will fail |
| /// if the wipe command has already been issued to the device. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the Device in format: `devices/{device_id}`, where device_id is the unique |
| /// ID assigned to the Device. |
| /// Value must have pattern `^devices/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> cancelWipe( |
| GoogleAppsCloudidentityDevicesV1CancelWipeDeviceRequest request, |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name') + ':cancelWipe'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// 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 Plus, Enterprise for Education, and Cloud Identity |
| /// Premium |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [customer] - Required. |
| /// [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 you're using this API to manage another |
| /// organization, use `customers/{customer_id}`, where customer_id is the |
| /// customer to whom the device belongs. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> create( |
| GoogleAppsCloudidentityDevicesV1Device request, { |
| core.String? customer, |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (customer != null) 'customer': [customer], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| const _url = 'v1/devices'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Deletes the specified device. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the Device in format: `devices/{device_id}`, where device_id is the unique |
| /// ID assigned to the Device. |
| /// Value must have pattern `^devices/\[^/\]+$`. |
| /// |
| /// [customer] - Required. |
| /// [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 you're using this API to manage another |
| /// organization, use `customers/{customer_id}`, where customer_id is the |
| /// customer to whom the device belongs. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> delete( |
| core.String name, { |
| core.String? customer, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (customer != null) 'customer': [customer], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'DELETE', |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Retrieves the specified device. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the Device in the format: `devices/{device_id}`, where device_id is the |
| /// unique ID assigned to the Device. |
| /// Value must have pattern `^devices/\[^/\]+$`. |
| /// |
| /// [customer] - Required. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the Customer in the format: `customers/{customer_id}`, where customer_id |
| /// is the customer to whom the 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 `customers/{customer_id}`, where |
| /// customer_id is the customer to whom the device belongs. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [GoogleAppsCloudidentityDevicesV1Device]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<GoogleAppsCloudidentityDevicesV1Device> get( |
| core.String name, { |
| core.String? customer, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (customer != null) 'customer': [customer], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return GoogleAppsCloudidentityDevicesV1Device.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists/Searches devices. |
| /// |
| /// Request parameters: |
| /// |
| /// [customer] - Required. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the customer in the format: `customers/{customer_id}`, where customer_id |
| /// is the customer to whom the 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 `customers/{customer_id}`, where |
| /// customer_id is the customer to whom the device belongs. |
| /// |
| /// [filter] - Optional. Additional restrictions when fetching list of |
| /// devices. For a list of search fields, refer to |
| /// [Mobile device search fields](https://developers.google.com/admin-sdk/directory/v1/search-operators). |
| /// Multiple search fields are separated by the space character. |
| /// |
| /// [orderBy] - 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`, `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. |
| /// |
| /// [pageSize] - 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. |
| /// |
| /// [pageToken] - Optional. A page token, received from a previous |
| /// `ListDevices` call. Provide this to retrieve the subsequent page. When |
| /// paginating, all other parameters provided to `ListDevices` must match the |
| /// call that provided the page token. |
| /// |
| /// [view] - Optional. The view to use for the List request. |
| /// Possible string values are: |
| /// - "VIEW_UNSPECIFIED" : Default value. The value is unused. |
| /// - "COMPANY_INVENTORY" : This view contains all devices imported by the |
| /// company admin. Each device in the response contains all information |
| /// specified by the company admin when importing the device (i.e. asset |
| /// tags). This includes devices that may be unaassigned or assigned to users. |
| /// - "USER_ASSIGNED_DEVICES" : This view contains all devices with at least |
| /// one user registered on the device. Each device in the response contains |
| /// all device information, except for asset tags. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [GoogleAppsCloudidentityDevicesV1ListDevicesResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<GoogleAppsCloudidentityDevicesV1ListDevicesResponse> list({ |
| core.String? customer, |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? view, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (customer != null) 'customer': [customer], |
| if (filter != null) 'filter': [filter], |
| if (orderBy != null) 'orderBy': [orderBy], |
| if (pageSize != null) 'pageSize': ['${pageSize}'], |
| if (pageToken != null) 'pageToken': [pageToken], |
| if (view != null) 'view': [view], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| const _url = 'v1/devices'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return GoogleAppsCloudidentityDevicesV1ListDevicesResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Wipes all data on the specified device. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the Device in format: `devices/{device_id}/deviceUsers/{device_user_id}`, |
| /// where device_id is the unique ID assigned to the Device, and |
| /// device_user_id is the unique ID assigned to the User. |
| /// Value must have pattern `^devices/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> wipe( |
| GoogleAppsCloudidentityDevicesV1WipeDeviceRequest request, |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name') + ':wipe'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class DevicesDeviceUsersResource { |
| final commons.ApiRequester _requester; |
| |
| DevicesDeviceUsersClientStatesResource get clientStates => |
| DevicesDeviceUsersClientStatesResource(_requester); |
| |
| DevicesDeviceUsersResource(commons.ApiRequester client) : _requester = client; |
| |
| /// Approves device to access user data. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the Device in format: `devices/{device_id}/deviceUsers/{device_user_id}`, |
| /// where device_id is the unique ID assigned to the Device, and |
| /// device_user_id is the unique ID assigned to the User. |
| /// Value must have pattern `^devices/\[^/\]+/deviceUsers/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> approve( |
| GoogleAppsCloudidentityDevicesV1ApproveDeviceUserRequest request, |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name') + ':approve'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Blocks device from accessing user data |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the Device in format: `devices/{device_id}/deviceUsers/{device_user_id}`, |
| /// where device_id is the unique ID assigned to the Device, and |
| /// device_user_id is the unique ID assigned to the User. |
| /// Value must have pattern `^devices/\[^/\]+/deviceUsers/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> block( |
| GoogleAppsCloudidentityDevicesV1BlockDeviceUserRequest request, |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name') + ':block'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// 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. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the Device in format: `devices/{device_id}/deviceUsers/{device_user_id}`, |
| /// where device_id is the unique ID assigned to the Device, and |
| /// device_user_id is the unique ID assigned to the User. |
| /// Value must have pattern `^devices/\[^/\]+/deviceUsers/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> cancelWipe( |
| GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserRequest request, |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name') + ':cancelWipe'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Deletes the specified DeviceUser. |
| /// |
| /// This also revokes the user's access to device data. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the Device in format: `devices/{device_id}/deviceUsers/{device_user_id}`, |
| /// where device_id is the unique ID assigned to the Device, and |
| /// device_user_id is the unique ID assigned to the User. |
| /// Value must have pattern `^devices/\[^/\]+/deviceUsers/\[^/\]+$`. |
| /// |
| /// [customer] - Required. |
| /// [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 you're using this API to manage another |
| /// organization, use `customers/{customer_id}`, where customer_id is the |
| /// customer to whom the device belongs. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> delete( |
| core.String name, { |
| core.String? customer, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (customer != null) 'customer': [customer], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'DELETE', |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Retrieves the specified DeviceUser |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the Device in format: `devices/{device_id}/deviceUsers/{device_user_id}`, |
| /// where device_id is the unique ID assigned to the Device, and |
| /// device_user_id is the unique ID assigned to the User. |
| /// Value must have pattern `^devices/\[^/\]+/deviceUsers/\[^/\]+$`. |
| /// |
| /// [customer] - Required. |
| /// [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 you're using this API to manage another |
| /// organization, use `customers/{customer_id}`, where customer_id is the |
| /// customer to whom the device belongs. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [GoogleAppsCloudidentityDevicesV1DeviceUser]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<GoogleAppsCloudidentityDevicesV1DeviceUser> get( |
| core.String name, { |
| core.String? customer, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (customer != null) 'customer': [customer], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return GoogleAppsCloudidentityDevicesV1DeviceUser.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists/Searches DeviceUsers. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - 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} |
| /// Value must have pattern `^devices/\[^/\]+$`. |
| /// |
| /// [customer] - Required. |
| /// [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 you're using this API to manage another |
| /// organization, use `customers/{customer_id}`, where customer_id is the |
| /// customer to whom the device belongs. |
| /// |
| /// [filter] - Optional. Additional restrictions when fetching list of |
| /// devices. For a list of search fields, refer to |
| /// [Mobile device search fields](https://developers.google.com/admin-sdk/directory/v1/search-operators). |
| /// Multiple search fields are separated by the space character. |
| /// |
| /// [orderBy] - Optional. Order specification for devices in the response. |
| /// |
| /// [pageSize] - 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. |
| /// |
| /// [pageToken] - Optional. A page token, received from a previous |
| /// `ListDeviceUsers` call. Provide this to retrieve the subsequent page. When |
| /// paginating, all other parameters provided to `ListBooks` must match the |
| /// call that provided the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a |
| /// [GoogleAppsCloudidentityDevicesV1ListDeviceUsersResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<GoogleAppsCloudidentityDevicesV1ListDeviceUsersResponse> list( |
| core.String parent, { |
| core.String? customer, |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (customer != null) 'customer': [customer], |
| if (filter != null) 'filter': [filter], |
| if (orderBy != null) 'orderBy': [orderBy], |
| if (pageSize != null) 'pageSize': ['${pageSize}'], |
| if (pageToken != null) 'pageToken': [pageToken], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + '/deviceUsers'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return GoogleAppsCloudidentityDevicesV1ListDeviceUsersResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// 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 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 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 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 |
| /// required. - Desktop: Specifying the 'raw_resource_id' field is required. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Must be set to "devices/-/deviceUsers" to search across all |
| /// DeviceUser belonging to the user. |
| /// Value must have pattern `^devices/\[^/\]+/deviceUsers$`. |
| /// |
| /// [androidId] - Android Id returned by |
| /// \[Settings.Secure#ANDROID_ID\](https://developer.android.com/reference/android/provider/Settings.Secure.html#ANDROID_ID). |
| /// |
| /// [pageSize] - 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. |
| /// |
| /// [pageToken] - A page token, received from a previous `LookupDeviceUsers` |
| /// call. Provide this to retrieve the subsequent page. When paginating, all |
| /// other parameters provided to `LookupDeviceUsers` must match the call that |
| /// provided the page token. |
| /// |
| /// [rawResourceId] - 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 following platform |
| /// dependent files. Mac: ~/.secureConnect/context_aware_config.json Windows: |
| /// C:\Users\%USERPROFILE%\.secureConnect\context_aware_config.json Linux: |
| /// ~/.secureConnect/context_aware_config.json |
| /// |
| /// [userId] - 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. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a |
| /// [GoogleAppsCloudidentityDevicesV1LookupSelfDeviceUsersResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<GoogleAppsCloudidentityDevicesV1LookupSelfDeviceUsersResponse> |
| lookup( |
| core.String parent, { |
| core.String? androidId, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? rawResourceId, |
| core.String? userId, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (androidId != null) 'androidId': [androidId], |
| if (pageSize != null) 'pageSize': ['${pageSize}'], |
| if (pageToken != null) 'pageToken': [pageToken], |
| if (rawResourceId != null) 'rawResourceId': [rawResourceId], |
| if (userId != null) 'userId': [userId], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + ':lookup'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return GoogleAppsCloudidentityDevicesV1LookupSelfDeviceUsersResponse |
| .fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// 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 |
| /// 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 their work administrator will not |
| /// affect their personal account within Gmail or other apps such as Photos. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the Device in format: `devices/{device_id}/deviceUsers/{device_user_id}`, |
| /// where device_id is the unique ID assigned to the Device, and |
| /// device_user_id is the unique ID assigned to the User. |
| /// Value must have pattern `^devices/\[^/\]+/deviceUsers/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> wipe( |
| GoogleAppsCloudidentityDevicesV1WipeDeviceUserRequest request, |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name') + ':wipe'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class DevicesDeviceUsersClientStatesResource { |
| final commons.ApiRequester _requester; |
| |
| DevicesDeviceUsersClientStatesResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Gets the client state for the device user |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the ClientState in format: |
| /// `devices/{device_id}/deviceUsers/{device_user_id}/clientStates/{partner_id}`, |
| /// where device_id is the unique ID assigned to the Device, device_user_id is |
| /// the unique ID assigned to the User and partner_id identifies the partner |
| /// storing the data. To get the 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 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 devices managed by your own organization. |
| /// Value must have pattern |
| /// `^devices/\[^/\]+/deviceUsers/\[^/\]+/clientStates/\[^/\]+$`. |
| /// |
| /// [customer] - Required. |
| /// [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 you're using this API to manage another |
| /// organization, use `customers/{customer_id}`, where customer_id is the |
| /// customer to whom the device belongs. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [GoogleAppsCloudidentityDevicesV1ClientState]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<GoogleAppsCloudidentityDevicesV1ClientState> get( |
| core.String name, { |
| core.String? customer, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (customer != null) 'customer': [customer], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return GoogleAppsCloudidentityDevicesV1ClientState.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists the client states for the given search query. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - 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. Format: |
| /// devices/{device}/deviceUsers/{deviceUser} |
| /// Value must have pattern `^devices/\[^/\]+/deviceUsers/\[^/\]+$`. |
| /// |
| /// [customer] - Required. |
| /// [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 you're using this API to manage another |
| /// organization, use `customers/{customer_id}`, where customer_id is the |
| /// customer to whom the device belongs. |
| /// |
| /// [filter] - Optional. Additional restrictions when fetching list of client |
| /// states. |
| /// |
| /// [orderBy] - Optional. Order specification for client states in the |
| /// response. |
| /// |
| /// [pageToken] - Optional. A page token, received from a previous |
| /// `ListClientStates` call. Provide this to retrieve the subsequent page. |
| /// When paginating, all other parameters provided to `ListClientStates` must |
| /// match the call that provided the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a |
| /// [GoogleAppsCloudidentityDevicesV1ListClientStatesResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<GoogleAppsCloudidentityDevicesV1ListClientStatesResponse> list( |
| core.String parent, { |
| core.String? customer, |
| core.String? filter, |
| core.String? orderBy, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (customer != null) 'customer': [customer], |
| if (filter != null) 'filter': [filter], |
| if (orderBy != null) 'orderBy': [orderBy], |
| if (pageToken != null) 'pageToken': [pageToken], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + '/clientStates'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return GoogleAppsCloudidentityDevicesV1ListClientStatesResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// 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, Enterprise for Education, and Cloud Identity |
| /// Premium |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the ClientState in format: |
| /// `devices/{device_id}/deviceUsers/{device_user_id}/clientState/{partner_id}`, |
| /// where partner_id 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 callers, this is a string of the form: |
| /// `{customer_id}-suffix`, where `customer_id` is your customer ID. The |
| /// *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 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 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') |
| /// Value must have pattern |
| /// `^devices/\[^/\]+/deviceUsers/\[^/\]+/clientStates/\[^/\]+$`. |
| /// |
| /// [customer] - Required. |
| /// [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 you're using this API to manage another |
| /// organization, use `customers/{customer_id}`, where customer_id is the |
| /// customer to whom the device belongs. |
| /// |
| /// [updateMask] - Optional. Comma-separated list of fully qualified names of |
| /// fields to be updated. If not specified, all updatable fields in |
| /// ClientState are updated. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> patch( |
| GoogleAppsCloudidentityDevicesV1ClientState request, |
| core.String name, { |
| core.String? customer, |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (customer != null) 'customer': [customer], |
| if (updateMask != null) 'updateMask': [updateMask], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'PATCH', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class GroupsResource { |
| final commons.ApiRequester _requester; |
| |
| GroupsMembershipsResource get memberships => |
| GroupsMembershipsResource(_requester); |
| |
| GroupsResource(commons.ApiRequester client) : _requester = client; |
| |
| /// Creates a Group. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [initialGroupConfig] - Optional. The initial configuration option for the |
| /// `Group`. |
| /// Possible string values are: |
| /// - "INITIAL_GROUP_CONFIG_UNSPECIFIED" : Default. Should not be used. |
| /// - "WITH_INITIAL_OWNER" : The end user making the request will be added as |
| /// the initial owner of the `Group`. |
| /// - "EMPTY" : An empty group is created without any initial owners. This can |
| /// only be used by admins of the domain. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> create( |
| Group request, { |
| core.String? initialGroupConfig, |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (initialGroupConfig != null) |
| 'initialGroupConfig': [initialGroupConfig], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| const _url = 'v1/groups'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Deletes a `Group`. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The |
| /// [resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the `Group` to retrieve. Must be of the form `groups/{group_id}`. |
| /// Value must have pattern `^groups/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> delete( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'DELETE', |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Retrieves a `Group`. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The |
| /// [resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the `Group` to retrieve. Must be of the form `groups/{group_id}`. |
| /// Value must have pattern `^groups/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Group]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Group> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return Group.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists the `Group`s under a customer or namespace. |
| /// |
| /// Request parameters: |
| /// |
| /// [pageSize] - 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, 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 `View.FULL`. Must not be greater than 1000 for `View.BASIC` or 500 |
| /// for `View.FULL`. |
| /// |
| /// [pageToken] - The `next_page_token` value returned from a previous list |
| /// request, if any. |
| /// |
| /// [parent] - Required. The parent resource under which to list all `Group`s. |
| /// Must be of the form `identitysources/{identity_source_id}` for external- |
| /// identity-mapped groups or `customers/{customer_id}` for Google Groups. |
| /// |
| /// [view] - The level of detail to be returned. If unspecified, defaults to |
| /// `View.BASIC`. |
| /// Possible string values are: |
| /// - "VIEW_UNSPECIFIED" : Default. Should not be used. |
| /// - "BASIC" : Only basic resource information is returned. |
| /// - "FULL" : All resource information is returned. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListGroupsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListGroupsResponse> list({ |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? parent, |
| core.String? view, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (pageSize != null) 'pageSize': ['${pageSize}'], |
| if (pageToken != null) 'pageToken': [pageToken], |
| if (parent != null) 'parent': [parent], |
| if (view != null) 'view': [view], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| const _url = 'v1/groups'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListGroupsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Looks up the |
| /// [resource name](https://cloud.google.com/apis/design/resource_names) of a |
| /// `Group` by its `EntityKey`. |
| /// |
| /// Request parameters: |
| /// |
| /// [groupKey_id] - 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 string conforming to |
| /// the Identity Source's requirements. Must be unique within a `namespace`. |
| /// |
| /// [groupKey_namespace] - 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\` 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 |
| /// \`identitysources/{identity_source_id}. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [LookupGroupNameResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<LookupGroupNameResponse> lookup({ |
| core.String? groupKey_id, |
| core.String? groupKey_namespace, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (groupKey_id != null) 'groupKey.id': [groupKey_id], |
| if (groupKey_namespace != null) |
| 'groupKey.namespace': [groupKey_namespace], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| const _url = 'v1/groups:lookup'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return LookupGroupNameResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Updates a `Group`. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. The |
| /// [resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the `Group`. Shall be of the form `groups/{group_id}`. |
| /// Value must have pattern `^groups/\[^/\]+$`. |
| /// |
| /// [updateMask] - Required. The fully-qualified names of fields to update. |
| /// May only contain the following fields: `display_name`, `description`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> patch( |
| Group request, |
| core.String name, { |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (updateMask != null) 'updateMask': [updateMask], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'PATCH', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Searches for `Group`s matching a specified query. |
| /// |
| /// Request parameters: |
| /// |
| /// [pageSize] - 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, 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 `GroupView.FULL`. Must not be greater than 1000 for |
| /// `GroupView.BASIC` or 500 for `GroupView.FULL`. |
| /// |
| /// [pageToken] - The `next_page_token` value returned from a previous search |
| /// request, if any. |
| /// |
| /// [query] - 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 inclusion operators on |
| /// labels (e.g., `parent == 'customers/{customer_id}' && |
| /// 'cloudidentity.googleapis.com/groups.discussion_forum' in labels`). |
| /// |
| /// [view] - The level of detail to be returned. If unspecified, defaults to |
| /// `View.BASIC`. |
| /// Possible string values are: |
| /// - "VIEW_UNSPECIFIED" : Default. Should not be used. |
| /// - "BASIC" : Only basic resource information is returned. |
| /// - "FULL" : All resource information is returned. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [SearchGroupsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<SearchGroupsResponse> search({ |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? query, |
| core.String? view, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (pageSize != null) 'pageSize': ['${pageSize}'], |
| if (pageToken != null) 'pageToken': [pageToken], |
| if (query != null) 'query': [query], |
| if (view != null) 'view': [view], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| const _url = 'v1/groups:search'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return SearchGroupsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class GroupsMembershipsResource { |
| final commons.ApiRequester _requester; |
| |
| GroupsMembershipsResource(commons.ApiRequester client) : _requester = client; |
| |
| /// 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; 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 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 between the |
| /// member and group. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the group to check the transitive membership in. Format: |
| /// `groups/{group_id}`, where `group_id` is the unique id assigned to the |
| /// Group to which the Membership belongs to. |
| /// Value must have pattern `^groups/\[^/\]+$`. |
| /// |
| /// [query] - 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 'member_key_namespace', which |
| /// requires an additional query input: 'member_key_namespace'. Example query: |
| /// `member_key_id == 'member_key_id_value'` |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [CheckTransitiveMembershipResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<CheckTransitiveMembershipResponse> checkTransitiveMembership( |
| core.String parent, { |
| core.String? query, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (query != null) 'query': [query], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + |
| core.Uri.encodeFull('$parent') + |
| '/memberships:checkTransitiveMembership'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return CheckTransitiveMembershipResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Creates a `Membership`. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The parent `Group` resource under which to create the |
| /// `Membership`. Must be of the form `groups/{group_id}`. |
| /// Value must have pattern `^groups/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> create( |
| Membership request, |
| core.String parent, { |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + '/memberships'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Deletes a `Membership`. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The |
| /// [resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the `Membership` to delete. Must be of the form |
| /// `groups/{group_id}/memberships/{membership_id}` |
| /// Value must have pattern `^groups/\[^/\]+/memberships/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> delete( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'DELETE', |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Retrieves a `Membership`. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The |
| /// [resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the `Membership` to retrieve. Must be of the form |
| /// `groups/{group_id}/memberships/{membership_id}`. |
| /// Value must have pattern `^groups/\[^/\]+/memberships/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Membership]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Membership> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return Membership.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// 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 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 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 member. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the group to search transitive memberships in. Format: |
| /// `groups/{group_id}`, where `group_id` is the unique ID assigned to the |
| /// Group to which the Membership belongs to. group_id can be a wildcard |
| /// collection id "-". When a group_id is specified, the membership graph will |
| /// be 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 returned. |
| /// Value must have pattern `^groups/\[^/\]+$`. |
| /// |
| /// [query] - 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', which requires an |
| /// additional query input: 'member_key_namespace'. Example query: |
| /// `member_key_id == 'member_key_id_value' && in labels` |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Operation]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Operation> getMembershipGraph( |
| core.String parent, { |
| core.String? query, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (query != null) 'query': [query], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + |
| core.Uri.encodeFull('$parent') + |
| '/memberships:getMembershipGraph'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return Operation.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists the `Membership`s within a `Group`. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The parent `Group` resource under which to lookup the |
| /// `Membership` name. Must be of the form `groups/{group_id}`. |
| /// Value must have pattern `^groups/\[^/\]+$`. |
| /// |
| /// [pageSize] - 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, 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 for `GroupView.FULL`. Must not be greater than 1000 for |
| /// `GroupView.BASIC` or 500 for `GroupView.FULL`. |
| /// |
| /// [pageToken] - The `next_page_token` value returned from a previous search |
| /// request, if any. |
| /// |
| /// [view] - The level of detail to be returned. If unspecified, defaults to |
| /// `View.BASIC`. |
| /// Possible string values are: |
| /// - "VIEW_UNSPECIFIED" : Default. Should not be used. |
| /// - "BASIC" : Only basic resource information is returned. |
| /// - "FULL" : All resource information is returned. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListMembershipsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListMembershipsResponse> list( |
| core.String parent, { |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? view, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (pageSize != null) 'pageSize': ['${pageSize}'], |
| if (pageToken != null) 'pageToken': [pageToken], |
| if (view != null) 'view': [view], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + '/memberships'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListMembershipsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Looks up the |
| /// [resource name](https://cloud.google.com/apis/design/resource_names) of a |
| /// `Membership` by its `EntityKey`. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The parent `Group` resource under which to lookup the |
| /// `Membership` name. Must be of the form `groups/{group_id}`. |
| /// Value must have pattern `^groups/\[^/\]+$`. |
| /// |
| /// [memberKey_id] - 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 string conforming to |
| /// the Identity Source's requirements. Must be unique within a `namespace`. |
| /// |
| /// [memberKey_namespace] - 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\` 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 |
| /// \`identitysources/{identity_source_id}. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [LookupMembershipNameResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<LookupMembershipNameResponse> lookup( |
| core.String parent, { |
| core.String? memberKey_id, |
| core.String? memberKey_namespace, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (memberKey_id != null) 'memberKey.id': [memberKey_id], |
| if (memberKey_namespace != null) |
| 'memberKey.namespace': [memberKey_namespace], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + '/memberships:lookup'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return LookupMembershipNameResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Modifies the `MembershipRole`s of a `Membership`. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - 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 |
| /// `groups/{group_id}/memberships/{membership_id}`. |
| /// Value must have pattern `^groups/\[^/\]+/memberships/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ModifyMembershipRolesResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ModifyMembershipRolesResponse> modifyMembershipRoles( |
| ModifyMembershipRolesRequest request, |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = |
| 'v1/' + core.Uri.encodeFull('$name') + ':modifyMembershipRoles'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return ModifyMembershipRolesResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// 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 |
| /// 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 direct or indirect membership to |
| /// the member. Actor must have view permissions all transitive groups. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the group to search transitive memberships in. Format: |
| /// `groups/{group_id}`, where `group_id` is always '-' as this API will |
| /// search across all groups for a given member. |
| /// Value must have pattern `^groups/\[^/\]+$`. |
| /// |
| /// [pageSize] - The default page size is 200 (max 1000). |
| /// |
| /// [pageToken] - The next_page_token value returned from a previous list |
| /// request, if any. |
| /// |
| /// [query] - 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') is supported on |
| /// labels. Certain groups are uniquely identified by both a 'member_key_id' |
| /// and a 'member_key_namespace', which requires an additional query input: |
| /// 'member_key_namespace'. Example query: `member_key_id == |
| /// 'member_key_id_value' && in labels` |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [SearchTransitiveGroupsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<SearchTransitiveGroupsResponse> searchTransitiveGroups( |
| core.String parent, { |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? query, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (pageSize != null) 'pageSize': ['${pageSize}'], |
| if (pageToken != null) 'pageToken': [pageToken], |
| if (query != null) 'query': [query], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + |
| core.Uri.encodeFull('$parent') + |
| '/memberships:searchTransitiveGroups'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return SearchTransitiveGroupsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// 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 |
| /// 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 indirect membership of a group. |
| /// Actor must have view permissions to all transitive memberships. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the group to search transitive memberships in. Format: |
| /// `groups/{group_id}`, where `group_id` is the unique ID assigned to the |
| /// Group. |
| /// Value must have pattern `^groups/\[^/\]+$`. |
| /// |
| /// [pageSize] - The default page size is 200 (max 1000). |
| /// |
| /// [pageToken] - The next_page_token value returned from a previous list |
| /// request, if any. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [SearchTransitiveMembershipsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<SearchTransitiveMembershipsResponse> searchTransitiveMemberships( |
| core.String parent, { |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (pageSize != null) 'pageSize': ['${pageSize}'], |
| if (pageToken != null) 'pageToken': [pageToken], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + |
| core.Uri.encodeFull('$parent') + |
| '/memberships:searchTransitiveMemberships'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return SearchTransitiveMembershipsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| /// The response message for MembershipsService.CheckTransitiveMembership. |
| class CheckTransitiveMembershipResponse { |
| /// 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 definitively, due to |
| /// possible lack of authorization in some of the paths. |
| core.bool? hasMembership; |
| |
| CheckTransitiveMembershipResponse(); |
| |
| CheckTransitiveMembershipResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('hasMembership')) { |
| hasMembership = _json['hasMembership'] as core.bool; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (hasMembership != null) 'hasMembership': hasMembership!, |
| }; |
| } |
| |
| /// Dynamic group metadata like queries and status. |
| class DynamicGroupMetadata { |
| /// 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. |
| core.List<DynamicGroupQuery>? queries; |
| |
| /// Status of the dynamic group. |
| /// |
| /// Output only. |
| DynamicGroupStatus? status; |
| |
| DynamicGroupMetadata(); |
| |
| DynamicGroupMetadata.fromJson(core.Map _json) { |
| if (_json.containsKey('queries')) { |
| queries = (_json['queries'] as core.List) |
| .map<DynamicGroupQuery>((value) => DynamicGroupQuery.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('status')) { |
| status = DynamicGroupStatus.fromJson( |
| _json['status'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (queries != null) |
| 'queries': queries!.map((value) => value.toJson()).toList(), |
| if (status != null) 'status': status!.toJson(), |
| }; |
| } |
| |
| /// Defines a query on a resource. |
| class DynamicGroupQuery { |
| /// Query that determines the memberships of the dynamic group. |
| /// |
| /// Examples: All users with at least one `organizations.department` of |
| /// engineering. `user.organizations.exists(org, |
| /// 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' && loc.building_id=='bar')` |
| core.String? query; |
| |
| /// Resource type for the Dynamic Group Query |
| /// Possible string values are: |
| /// - "RESOURCE_TYPE_UNSPECIFIED" : Default value (not valid) |
| /// - "USER" : For queries on User |
| core.String? resourceType; |
| |
| DynamicGroupQuery(); |
| |
| DynamicGroupQuery.fromJson(core.Map _json) { |
| if (_json.containsKey('query')) { |
| query = _json['query'] as core.String; |
| } |
| if (_json.containsKey('resourceType')) { |
| resourceType = _json['resourceType'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (query != null) 'query': query!, |
| if (resourceType != null) 'resourceType': resourceType!, |
| }; |
| } |
| |
| /// The current status of a dynamic group along with timestamp. |
| class DynamicGroupStatus { |
| /// Status of the dynamic group. |
| /// Possible string values are: |
| /// - "STATUS_UNSPECIFIED" : Default. |
| /// - "UP_TO_DATE" : The dynamic group is up-to-date. |
| /// - "UPDATING_MEMBERSHIPS" : The dynamic group has just been created and |
| /// memberships are being updated. |
| core.String? status; |
| |
| /// 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 up-to-date. If status is `UPDATING_MEMBERSHIPS`, the time |
| /// at which dynamic group was created. |
| core.String? statusTime; |
| |
| DynamicGroupStatus(); |
| |
| DynamicGroupStatus.fromJson(core.Map _json) { |
| if (_json.containsKey('status')) { |
| status = _json['status'] as core.String; |
| } |
| if (_json.containsKey('statusTime')) { |
| statusTime = _json['statusTime'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (status != null) 'status': status!, |
| if (statusTime != null) 'statusTime': statusTime!, |
| }; |
| } |
| |
| /// A unique identifier for an entity in the Cloud Identity Groups API. |
| /// |
| /// An entity can represent either a group with an optional `namespace` or a |
| /// user without a `namespace`. The combination of `id` and `namespace` must be |
| /// unique; however, the same `id` can be used with different `namespace`s. |
| class EntityKey { |
| /// 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 string conforming to the Identity Source's requirements. Must be |
| /// unique within a `namespace`. |
| core.String? id; |
| |
| /// 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\` |
| /// 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 \`identitysources/{identity_source_id}. |
| core.String? namespace; |
| |
| EntityKey(); |
| |
| EntityKey.fromJson(core.Map _json) { |
| if (_json.containsKey('id')) { |
| id = _json['id'] as core.String; |
| } |
| if (_json.containsKey('namespace')) { |
| namespace = _json['namespace'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (id != null) 'id': id!, |
| if (namespace != null) 'namespace': namespace!, |
| }; |
| } |
| |
| /// The `MembershipRole` expiry details. |
| class ExpiryDetail { |
| /// The time at which the `MembershipRole` will expire. |
| core.String? expireTime; |
| |
| ExpiryDetail(); |
| |
| ExpiryDetail.fromJson(core.Map _json) { |
| if (_json.containsKey('expireTime')) { |
| expireTime = _json['expireTime'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (expireTime != null) 'expireTime': expireTime!, |
| }; |
| } |
| |
| /// The response message for MembershipsService.GetMembershipGraph. |
| class GetMembershipGraphResponse { |
| /// The membership graph's path information represented as an adjacency list. |
| core.List<MembershipAdjacencyList>? adjacencyList; |
| |
| /// 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 resource. |
| core.List<Group>? groups; |
| |
| GetMembershipGraphResponse(); |
| |
| GetMembershipGraphResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('adjacencyList')) { |
| adjacencyList = (_json['adjacencyList'] as core.List) |
| .map<MembershipAdjacencyList>((value) => |
| MembershipAdjacencyList.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('groups')) { |
| groups = (_json['groups'] as core.List) |
| .map<Group>((value) => |
| Group.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (adjacencyList != null) |
| 'adjacencyList': |
| adjacencyList!.map((value) => value.toJson()).toList(), |
| if (groups != null) |
| 'groups': groups!.map((value) => value.toJson()).toList(), |
| }; |
| } |
| |
| /// Resource representing the Android specific attributes of a Device. |
| class GoogleAppsCloudidentityDevicesV1AndroidAttributes { |
| /// Whether applications from unknown sources can be installed on device. |
| core.bool? enabledUnknownSources; |
| |
| /// 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. |
| core.bool? ownerProfileAccount; |
| |
| /// Ownership privileges on device. |
| /// Possible string values are: |
| /// - "OWNERSHIP_PRIVILEGE_UNSPECIFIED" : Ownership privilege is not set. |
| /// - "DEVICE_ADMINISTRATOR" : Active device administrator privileges on the |
| /// device. |
| /// - "PROFILE_OWNER" : Profile Owner privileges. The account is in a managed |
| /// corporate profile. |
| /// - "DEVICE_OWNER" : Device Owner privileges on the device. |
| core.String? ownershipPrivilege; |
| |
| /// 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. |
| core.bool? supportsWorkProfile; |
| |
| GoogleAppsCloudidentityDevicesV1AndroidAttributes(); |
| |
| GoogleAppsCloudidentityDevicesV1AndroidAttributes.fromJson(core.Map _json) { |
| if (_json.containsKey('enabledUnknownSources')) { |
| enabledUnknownSources = _json['enabledUnknownSources'] as core.bool; |
| } |
| if (_json.containsKey('ownerProfileAccount')) { |
| ownerProfileAccount = _json['ownerProfileAccount'] as core.bool; |
| } |
| if (_json.containsKey('ownershipPrivilege')) { |
| ownershipPrivilege = _json['ownershipPrivilege'] as core.String; |
| } |
| if (_json.containsKey('supportsWorkProfile')) { |
| supportsWorkProfile = _json['supportsWorkProfile'] as core.bool; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (enabledUnknownSources != null) |
| 'enabledUnknownSources': enabledUnknownSources!, |
| if (ownerProfileAccount != null) |
| 'ownerProfileAccount': ownerProfileAccount!, |
| if (ownershipPrivilege != null) |
| 'ownershipPrivilege': ownershipPrivilege!, |
| if (supportsWorkProfile != null) |
| 'supportsWorkProfile': supportsWorkProfile!, |
| }; |
| } |
| |
| /// Request message for approving the device to access user data. |
| class GoogleAppsCloudidentityDevicesV1ApproveDeviceUserRequest { |
| /// [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 you're using this API to manage another |
| /// organization, use `customers/{customer_id}`, where customer_id is the |
| /// customer to whom the device belongs. |
| /// |
| /// Required. |
| core.String? customer; |
| |
| GoogleAppsCloudidentityDevicesV1ApproveDeviceUserRequest(); |
| |
| GoogleAppsCloudidentityDevicesV1ApproveDeviceUserRequest.fromJson( |
| core.Map _json) { |
| if (_json.containsKey('customer')) { |
| customer = _json['customer'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (customer != null) 'customer': customer!, |
| }; |
| } |
| |
| /// Response message for approving the device to access user data. |
| class GoogleAppsCloudidentityDevicesV1ApproveDeviceUserResponse { |
| /// Resultant DeviceUser object for the action. |
| GoogleAppsCloudidentityDevicesV1DeviceUser? deviceUser; |
| |
| GoogleAppsCloudidentityDevicesV1ApproveDeviceUserResponse(); |
| |
| GoogleAppsCloudidentityDevicesV1ApproveDeviceUserResponse.fromJson( |
| core.Map _json) { |
| if (_json.containsKey('deviceUser')) { |
| deviceUser = GoogleAppsCloudidentityDevicesV1DeviceUser.fromJson( |
| _json['deviceUser'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (deviceUser != null) 'deviceUser': deviceUser!.toJson(), |
| }; |
| } |
| |
| /// Request message for blocking account on device. |
| class GoogleAppsCloudidentityDevicesV1BlockDeviceUserRequest { |
| /// [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 you're using this API to manage another |
| /// organization, use `customers/{customer_id}`, where customer_id is the |
| /// customer to whom the device belongs. |
| /// |
| /// Required. |
| core.String? customer; |
| |
| GoogleAppsCloudidentityDevicesV1BlockDeviceUserRequest(); |
| |
| GoogleAppsCloudidentityDevicesV1BlockDeviceUserRequest.fromJson( |
| core.Map _json) { |
| if (_json.containsKey('customer')) { |
| customer = _json['customer'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (customer != null) 'customer': customer!, |
| }; |
| } |
| |
| /// Response message for blocking the device from accessing user data. |
| class GoogleAppsCloudidentityDevicesV1BlockDeviceUserResponse { |
| /// Resultant DeviceUser object for the action. |
| GoogleAppsCloudidentityDevicesV1DeviceUser? deviceUser; |
| |
| GoogleAppsCloudidentityDevicesV1BlockDeviceUserResponse(); |
| |
| GoogleAppsCloudidentityDevicesV1BlockDeviceUserResponse.fromJson( |
| core.Map _json) { |
| if (_json.containsKey('deviceUser')) { |
| deviceUser = GoogleAppsCloudidentityDevicesV1DeviceUser.fromJson( |
| _json['deviceUser'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (deviceUser != null) 'deviceUser': deviceUser!.toJson(), |
| }; |
| } |
| |
| /// Request message for cancelling an unfinished device wipe. |
| class GoogleAppsCloudidentityDevicesV1CancelWipeDeviceRequest { |
| /// [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 you're using this API to manage another |
| /// organization, use `customers/{customer_id}`, where customer_id is the |
| /// customer to whom the device belongs. |
| /// |
| /// Required. |
| core.String? customer; |
| |
| GoogleAppsCloudidentityDevicesV1CancelWipeDeviceRequest(); |
| |
| GoogleAppsCloudidentityDevicesV1CancelWipeDeviceRequest.fromJson( |
| core.Map _json) { |
| if (_json.containsKey('customer')) { |
| customer = _json['customer'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (customer != null) 'customer': customer!, |
| }; |
| } |
| |
| /// Response message for cancelling an unfinished device wipe. |
| class GoogleAppsCloudidentityDevicesV1CancelWipeDeviceResponse { |
| /// Resultant Device object for the action. |
| /// |
| /// Note that asset tags will not be returned in the device object. |
| GoogleAppsCloudidentityDevicesV1Device? device; |
| |
| GoogleAppsCloudidentityDevicesV1CancelWipeDeviceResponse(); |
| |
| GoogleAppsCloudidentityDevicesV1CancelWipeDeviceResponse.fromJson( |
| core.Map _json) { |
| if (_json.containsKey('device')) { |
| device = GoogleAppsCloudidentityDevicesV1Device.fromJson( |
| _json['device'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (device != null) 'device': device!.toJson(), |
| }; |
| } |
| |
| /// Request message for cancelling an unfinished user account wipe. |
| class GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserRequest { |
| /// [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 you're using this API to manage another |
| /// organization, use `customers/{customer_id}`, where customer_id is the |
| /// customer to whom the device belongs. |
| /// |
| /// Required. |
| core.String? customer; |
| |
| GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserRequest(); |
| |
| GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserRequest.fromJson( |
| core.Map _json) { |
| if (_json.containsKey('customer')) { |
| customer = _json['customer'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (customer != null) 'customer': customer!, |
| }; |
| } |
| |
| /// Response message for cancelling an unfinished user account wipe. |
| class GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserResponse { |
| /// Resultant DeviceUser object for the action. |
| GoogleAppsCloudidentityDevicesV1DeviceUser? deviceUser; |
| |
| GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserResponse(); |
| |
| GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserResponse.fromJson( |
| core.Map _json) { |
| if (_json.containsKey('deviceUser')) { |
| deviceUser = GoogleAppsCloudidentityDevicesV1DeviceUser.fromJson( |
| _json['deviceUser'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (deviceUser != null) 'deviceUser': deviceUser!.toJson(), |
| }; |
| } |
| |
| /// Represents the state associated with an API client calling the Devices API. |
| /// |
| /// Resource representing ClientState and supports updates from API users |
| class GoogleAppsCloudidentityDevicesV1ClientState { |
| /// The caller can specify asset tags for this resource |
| core.List<core.String>? assetTags; |
| |
| /// The compliance state of the resource as specified by the API client. |
| /// Possible string values are: |
| /// - "COMPLIANCE_STATE_UNSPECIFIED" : The compliance state of the resource is |
| /// unknown or unspecified. |
| /// - "COMPLIANT" : Device is compliant with third party policies |
| /// - "NON_COMPLIANT" : Device is not compliant with third party policies |
| core.String? complianceState; |
| |
| /// The time the client state data was created. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// This field may be used to store a unique identifier for the API resource |
| /// within which these CustomAttributes are a field. |
| core.String? customId; |
| |
| /// The token that needs to be passed back for concurrency control in updates. |
| /// |
| /// Token needs to be passed back in UpdateRequest |
| core.String? etag; |
| |
| /// 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 |
| /// management provider may specify a health score based on its compliance |
| /// with organizational policies. |
| /// Possible string values are: |
| /// - "HEALTH_SCORE_UNSPECIFIED" : Default value |
| /// - "VERY_POOR" : The object is in very poor health as defined by the |
| /// caller. |
| /// - "POOR" : The object is in poor health as defined by the caller. |
| /// - "NEUTRAL" : The object health is neither good nor poor, as defined by |
| /// the caller. |
| /// - "GOOD" : The object is in good health as defined by the caller. |
| /// - "VERY_GOOD" : The object is in very good health as defined by the |
| /// caller. |
| core.String? healthScore; |
| |
| /// 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 in a map. |
| core.Map<core.String, GoogleAppsCloudidentityDevicesV1CustomAttributeValue>? |
| keyValuePairs; |
| |
| /// The time the client state data was last updated. |
| /// |
| /// Output only. |
| core.String? lastUpdateTime; |
| |
| /// The management state of the resource as specified by the API client. |
| /// Possible string values are: |
| /// - "MANAGED_STATE_UNSPECIFIED" : The management state of the resource is |
| /// unknown or unspecified. |
| /// - "MANAGED" : The resource is managed. |
| /// - "UNMANAGED" : The resource is not managed. |
| core.String? managed; |
| |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the ClientState in format: |
| /// `devices/{device_id}/deviceUsers/{device_user_id}/clientState/{partner_id}`, |
| /// where partner_id 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 callers, this is a string of |
| /// the form: `{customer_id}-suffix`, where `customer_id` is your customer ID. |
| /// The *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 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 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') |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// The owner of the ClientState |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "OWNER_TYPE_UNSPECIFIED" : Unknown owner type |
| /// - "OWNER_TYPE_CUSTOMER" : Customer is the owner |
| /// - "OWNER_TYPE_PARTNER" : Partner is the owner |
| core.String? ownerType; |
| |
| /// A descriptive cause of the health score. |
| core.String? scoreReason; |
| |
| GoogleAppsCloudidentityDevicesV1ClientState(); |
| |
| GoogleAppsCloudidentityDevicesV1ClientState.fromJson(core.Map _json) { |
| if (_json.containsKey('assetTags')) { |
| assetTags = (_json['assetTags'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| if (_json.containsKey('complianceState')) { |
| complianceState = _json['complianceState'] as core.String; |
| } |
| if (_json.containsKey('createTime')) { |
| createTime = _json['createTime'] as core.String; |
| } |
| if (_json.containsKey('customId')) { |
| customId = _json['customId'] as core.String; |
| } |
| if (_json.containsKey('etag')) { |
| etag = _json['etag'] as core.String; |
| } |
| if (_json.containsKey('healthScore')) { |
| healthScore = _json['healthScore'] as core.String; |
| } |
| if (_json.containsKey('keyValuePairs')) { |
| keyValuePairs = |
| (_json['keyValuePairs'] as core.Map<core.String, core.dynamic>).map( |
| (key, item) => core.MapEntry( |
| key, |
| GoogleAppsCloudidentityDevicesV1CustomAttributeValue.fromJson( |
| item as core.Map<core.String, core.dynamic>), |
| ), |
| ); |
| } |
| if (_json.containsKey('lastUpdateTime')) { |
| lastUpdateTime = _json['lastUpdateTime'] as core.String; |
| } |
| if (_json.containsKey('managed')) { |
| managed = _json['managed'] as core.String; |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('ownerType')) { |
| ownerType = _json['ownerType'] as core.String; |
| } |
| if (_json.containsKey('scoreReason')) { |
| scoreReason = _json['scoreReason'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (assetTags != null) 'assetTags': assetTags!, |
| if (complianceState != null) 'complianceState': complianceState!, |
| if (createTime != null) 'createTime': createTime!, |
| if (customId != null) 'customId': customId!, |
| if (etag != null) 'etag': etag!, |
| if (healthScore != null) 'healthScore': healthScore!, |
| if (keyValuePairs != null) |
| 'keyValuePairs': keyValuePairs! |
| .map((key, item) => core.MapEntry(key, item.toJson())), |
| if (lastUpdateTime != null) 'lastUpdateTime': lastUpdateTime!, |
| if (managed != null) 'managed': managed!, |
| if (name != null) 'name': name!, |
| if (ownerType != null) 'ownerType': ownerType!, |
| if (scoreReason != null) 'scoreReason': scoreReason!, |
| }; |
| } |
| |
| /// Additional custom attribute values may be one of these types |
| class GoogleAppsCloudidentityDevicesV1CustomAttributeValue { |
| /// Represents a boolean value. |
| core.bool? boolValue; |
| |
| /// Represents a double value. |
| core.double? numberValue; |
| |
| /// Represents a string value. |
| core.String? stringValue; |
| |
| GoogleAppsCloudidentityDevicesV1CustomAttributeValue(); |
| |
| GoogleAppsCloudidentityDevicesV1CustomAttributeValue.fromJson( |
| core.Map _json) { |
| if (_json.containsKey('boolValue')) { |
| boolValue = _json['boolValue'] as core.bool; |
| } |
| if (_json.containsKey('numberValue')) { |
| numberValue = (_json['numberValue'] as core.num).toDouble(); |
| } |
| if (_json.containsKey('stringValue')) { |
| stringValue = _json['stringValue'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (boolValue != null) 'boolValue': boolValue!, |
| if (numberValue != null) 'numberValue': numberValue!, |
| if (stringValue != null) 'stringValue': stringValue!, |
| }; |
| } |
| |
| /// A Device within the Cloud Identity Devices API. |
| /// |
| /// Represents a Device known to Google Cloud, independent of the device |
| /// ownership, type, and whether it is assigned or in use by a user. |
| class GoogleAppsCloudidentityDevicesV1Device { |
| /// Attributes specific to Android devices. |
| /// |
| /// Output only. |
| GoogleAppsCloudidentityDevicesV1AndroidAttributes? androidSpecificAttributes; |
| |
| /// Asset tag of the device. |
| core.String? assetTag; |
| |
| /// Baseband version of the device. |
| /// |
| /// Output only. |
| core.String? basebandVersion; |
| |
| /// Device bootloader version. |
| /// |
| /// Example: 0.6.7. |
| /// |
| /// Output only. |
| core.String? bootloaderVersion; |
| |
| /// Device brand. |
| /// |
| /// Example: Samsung. |
| /// |
| /// Output only. |
| core.String? brand; |
| |
| /// Build number of the device. |
| /// |
| /// Output only. |
| core.String? buildNumber; |
| |
| /// Represents whether the Device is compromised. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "COMPROMISED_STATE_UNSPECIFIED" : Default value. |
| /// - "COMPROMISED" : The device is compromised (currently, this means Android |
| /// device is rooted). |
| /// - "UNCOMPROMISED" : The device is safe (currently, this means Android |
| /// device is unrooted). |
| core.String? compromisedState; |
| |
| /// When the Company-Owned device was imported. |
| /// |
| /// This field is empty for BYOD devices. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// Type of device. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "DEVICE_TYPE_UNSPECIFIED" : Unknown device type |
| /// - "ANDROID" : Device is an Android device |
| /// - "IOS" : Device is an iOS device |
| /// - "GOOGLE_SYNC" : Device is a Google Sync device. |
| /// - "WINDOWS" : Device is a Windows device. |
| /// - "MAC_OS" : Device is a MacOS device. |
| /// - "LINUX" : Device is a Linux device. |
| /// - "CHROME_OS" : Device is a ChromeOS device. |
| core.String? deviceType; |
| |
| /// Whether developer options is enabled on device. |
| /// |
| /// Output only. |
| core.bool? enabledDeveloperOptions; |
| |
| /// Whether USB debugging is enabled on device. |
| /// |
| /// Output only. |
| core.bool? enabledUsbDebugging; |
| |
| /// Device encryption state. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "ENCRYPTION_STATE_UNSPECIFIED" : Encryption Status is not set. |
| /// - "UNSUPPORTED_BY_DEVICE" : Device doesn't support encryption. |
| /// - "ENCRYPTED" : Device is encrypted. |
| /// - "NOT_ENCRYPTED" : Device is not encrypted. |
| core.String? encryptionState; |
| |
| /// IMEI number of device if GSM device; empty otherwise. |
| /// |
| /// Output only. |
| core.String? imei; |
| |
| /// Kernel version of the device. |
| /// |
| /// Output only. |
| core.String? kernelVersion; |
| |
| /// Most recent time when device synced with this service. |
| core.String? lastSyncTime; |
| |
| /// Management state of the device |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "MANAGEMENT_STATE_UNSPECIFIED" : Default value. This value is unused. |
| /// - "APPROVED" : Device is approved. |
| /// - "BLOCKED" : Device is blocked. |
| /// - "PENDING" : Device is pending approval. |
| /// - "UNPROVISIONED" : The device is not provisioned. Device will start from |
| /// this state until some action is taken (i.e. a user starts using the |
| /// device). |
| /// - "WIPING" : Data and settings on the device are being removed. |
| /// - "WIPED" : All data and settings on the device are removed. |
| core.String? managementState; |
| |
| /// Device manufacturer. |
| /// |
| /// Example: Motorola. |
| /// |
| /// Output only. |
| core.String? manufacturer; |
| |
| /// MEID number of device if CDMA device; empty otherwise. |
| /// |
| /// Output only. |
| core.String? meid; |
| |
| /// Model name of device. |
| /// |
| /// Example: Pixel 3. |
| /// |
| /// Output only. |
| core.String? model; |
| |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the Device in format: `devices/{device_id}`, where device_id is the unique |
| /// id assigned to the Device. |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// Mobile or network operator of device, if available. |
| /// |
| /// Output only. |
| core.String? networkOperator; |
| |
| /// OS version of the device. |
| /// |
| /// Example: Android 8.1.0. |
| /// |
| /// Output only. |
| core.String? osVersion; |
| |
| /// 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 |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". |
| /// |
| /// Output only. |
| core.List<core.String>? otherAccounts; |
| |
| /// Whether the device is owned by the company or an individual |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "DEVICE_OWNERSHIP_UNSPECIFIED" : Default value. The value is unused. |
| /// - "COMPANY" : Company owns the device. |
| /// - "BYOD" : Bring Your Own Device (i.e. individual owns the device) |
| core.String? ownerType; |
| |
| /// OS release version. |
| /// |
| /// Example: 6.0. |
| /// |
| /// Output only. |
| core.String? releaseVersion; |
| |
| /// OS security patch update time on device. |
| /// |
| /// Output only. |
| core.String? securityPatchTime; |
| |
| /// Serial Number of device. |
| /// |
| /// Example: HT82V1A01076. |
| core.String? serialNumber; |
| |
| /// WiFi MAC addresses of device. |
| core.List<core.String>? wifiMacAddresses; |
| |
| GoogleAppsCloudidentityDevicesV1Device(); |
| |
| GoogleAppsCloudidentityDevicesV1Device.fromJson(core.Map _json) { |
| if (_json.containsKey('androidSpecificAttributes')) { |
| androidSpecificAttributes = |
| GoogleAppsCloudidentityDevicesV1AndroidAttributes.fromJson( |
| _json['androidSpecificAttributes'] |
| as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('assetTag')) { |
| assetTag = _json['assetTag'] as core.String; |
| } |
| if (_json.containsKey('basebandVersion')) { |
| basebandVersion = _json['basebandVersion'] as core.String; |
| } |
| if (_json.containsKey('bootloaderVersion')) { |
| bootloaderVersion = _json['bootloaderVersion'] as core.String; |
| } |
| if (_json.containsKey('brand')) { |
| brand = _json['brand'] as core.String; |
| } |
| if (_json.containsKey('buildNumber')) { |
| buildNumber = _json['buildNumber'] as core.String; |
| } |
| if (_json.containsKey('compromisedState')) { |
| compromisedState = _json['compromisedState'] as core.String; |
| } |
| if (_json.containsKey('createTime')) { |
| createTime = _json['createTime'] as core.String; |
| } |
| if (_json.containsKey('deviceType')) { |
| deviceType = _json['deviceType'] as core.String; |
| } |
| if (_json.containsKey('enabledDeveloperOptions')) { |
| enabledDeveloperOptions = _json['enabledDeveloperOptions'] as core.bool; |
| } |
| if (_json.containsKey('enabledUsbDebugging')) { |
| enabledUsbDebugging = _json['enabledUsbDebugging'] as core.bool; |
| } |
| if (_json.containsKey('encryptionState')) { |
| encryptionState = _json['encryptionState'] as core.String; |
| } |
| if (_json.containsKey('imei')) { |
| imei = _json['imei'] as core.String; |
| } |
| if (_json.containsKey('kernelVersion')) { |
| kernelVersion = _json['kernelVersion'] as core.String; |
| } |
| if (_json.containsKey('lastSyncTime')) { |
| lastSyncTime = _json['lastSyncTime'] as core.String; |
| } |
| if (_json.containsKey('managementState')) { |
| managementState = _json['managementState'] as core.String; |
| } |
| if (_json.containsKey('manufacturer')) { |
| manufacturer = _json['manufacturer'] as core.String; |
| } |
| if (_json.containsKey('meid')) { |
| meid = _json['meid'] as core.String; |
| } |
| if (_json.containsKey('model')) { |
| model = _json['model'] as core.String; |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('networkOperator')) { |
| networkOperator = _json['networkOperator'] as core.String; |
| } |
| if (_json.containsKey('osVersion')) { |
| osVersion = _json['osVersion'] as core.String; |
| } |
| if (_json.containsKey('otherAccounts')) { |
| otherAccounts = (_json['otherAccounts'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| if (_json.containsKey('ownerType')) { |
| ownerType = _json['ownerType'] as core.String; |
| } |
| if (_json.containsKey('releaseVersion')) { |
| releaseVersion = _json['releaseVersion'] as core.String; |
| } |
| if (_json.containsKey('securityPatchTime')) { |
| securityPatchTime = _json['securityPatchTime'] as core.String; |
| } |
| if (_json.containsKey('serialNumber')) { |
| serialNumber = _json['serialNumber'] as core.String; |
| } |
| if (_json.containsKey('wifiMacAddresses')) { |
| wifiMacAddresses = (_json['wifiMacAddresses'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (androidSpecificAttributes != null) |
| 'androidSpecificAttributes': androidSpecificAttributes!.toJson(), |
| if (assetTag != null) 'assetTag': assetTag!, |
| if (basebandVersion != null) 'basebandVersion': basebandVersion!, |
| if (bootloaderVersion != null) 'bootloaderVersion': bootloaderVersion!, |
| if (brand != null) 'brand': brand!, |
| if (buildNumber != null) 'buildNumber': buildNumber!, |
| if (compromisedState != null) 'compromisedState': compromisedState!, |
| if (createTime != null) 'createTime': createTime!, |
| if (deviceType != null) 'deviceType': deviceType!, |
| if (enabledDeveloperOptions != null) |
| 'enabledDeveloperOptions': enabledDeveloperOptions!, |
| if (enabledUsbDebugging != null) |
| 'enabledUsbDebugging': enabledUsbDebugging!, |
| if (encryptionState != null) 'encryptionState': encryptionState!, |
| if (imei != null) 'imei': imei!, |
| if (kernelVersion != null) 'kernelVersion': kernelVersion!, |
| if (lastSyncTime != null) 'lastSyncTime': lastSyncTime!, |
| if (managementState != null) 'managementState': managementState!, |
| if (manufacturer != null) 'manufacturer': manufacturer!, |
| if (meid != null) 'meid': meid!, |
| if (model != null) 'model': model!, |
| if (name != null) 'name': name!, |
| if (networkOperator != null) 'networkOperator': networkOperator!, |
| if (osVersion != null) 'osVersion': osVersion!, |
| if (otherAccounts != null) 'otherAccounts': otherAccounts!, |
| if (ownerType != null) 'ownerType': ownerType!, |
| if (releaseVersion != null) 'releaseVersion': releaseVersion!, |
| if (securityPatchTime != null) 'securityPatchTime': securityPatchTime!, |
| if (serialNumber != null) 'serialNumber': serialNumber!, |
| if (wifiMacAddresses != null) 'wifiMacAddresses': wifiMacAddresses!, |
| }; |
| } |
| |
| /// Represents a user's use of a Device in the Cloud Identity Devices API. |
| /// |
| /// A DeviceUser is a resource representing a user's use of a Device |
| class GoogleAppsCloudidentityDevicesV1DeviceUser { |
| /// Compromised State of the DeviceUser object |
| /// Possible string values are: |
| /// - "COMPROMISED_STATE_UNSPECIFIED" : Compromised state of Device User |
| /// account is unknown or unspecified. |
| /// - "COMPROMISED" : Device User Account is compromised. |
| /// - "NOT_COMPROMISED" : Device User Account is not compromised. |
| core.String? compromisedState; |
| |
| /// When the user first signed in to the device |
| core.String? createTime; |
| |
| /// Most recent time when user registered with this service. |
| /// |
| /// Output only. |
| core.String? firstSyncTime; |
| |
| /// Default locale used on device, in IETF BCP-47 format. |
| /// |
| /// Output only. |
| core.String? languageCode; |
| |
| /// Last time when user synced with policies. |
| /// |
| /// Output only. |
| core.String? lastSyncTime; |
| |
| /// Management state of the user on the device. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "MANAGEMENT_STATE_UNSPECIFIED" : Default value. This value is unused. |
| /// - "WIPING" : This user's data and profile is being removed from the |
| /// device. |
| /// - "WIPED" : This user's data and profile is removed from the device. |
| /// - "APPROVED" : User is approved to access data on the device. |
| /// - "BLOCKED" : User is blocked from accessing data on the device. |
| /// - "PENDING_APPROVAL" : User is awaiting approval. |
| /// - "UNENROLLED" : User is unenrolled from Advanced Windows Management, but |
| /// the Windows account is still intact. |
| core.String? managementState; |
| |
| /// [Resource name](https://cloud.google.com/apis/design/resource_names) of |
| /// the DeviceUser in format: `devices/{device_id}/deviceUsers/{user_id}`, |
| /// where user_id is the ID of the user associated with the user session. |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// Password state of the DeviceUser object |
| /// Possible string values are: |
| /// - "PASSWORD_STATE_UNSPECIFIED" : Password state not set. |
| /// - "PASSWORD_SET" : Password set in object. |
| /// - "PASSWORD_NOT_SET" : Password not set in object. |
| core.String? passwordState; |
| |
| /// User agent on the device for this specific user |
| /// |
| /// Output only. |
| core.String? userAgent; |
| |
| /// Email address of the user registered on the device. |
| core.String? userEmail; |
| |
| GoogleAppsCloudidentityDevicesV1DeviceUser(); |
| |
| GoogleAppsCloudidentityDevicesV1DeviceUser.fromJson(core.Map _json) { |
| if (_json.containsKey('compromisedState')) { |
| compromisedState = _json['compromisedState'] as core.String; |
| } |
| if (_json.containsKey('createTime')) { |
| createTime = _json['createTime'] as core.String; |
| } |
| if (_json.containsKey('firstSyncTime')) { |
| firstSyncTime = _json['firstSyncTime'] as core.String; |
| } |
| if (_json.containsKey('languageCode')) { |
| languageCode = _json['languageCode'] as core.String; |
| } |
| if (_json.containsKey('lastSyncTime')) { |
| lastSyncTime = _json['lastSyncTime'] as core.String; |
| } |
| if (_json.containsKey('managementState')) { |
| managementState = _json['managementState'] as core.String; |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('passwordState')) { |
| passwordState = _json['passwordState'] as core.String; |
| } |
| if (_json.containsKey('userAgent')) { |
| userAgent = _json['userAgent'] as core.String; |
| } |
| if (_json.containsKey('userEmail')) { |
| userEmail = _json['userEmail'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (compromisedState != null) 'compromisedState': compromisedState!, |
| if (createTime != null) 'createTime': createTime!, |
| if (firstSyncTime != null) 'firstSyncTime': firstSyncTime!, |
| if (languageCode != null) 'languageCode': languageCode!, |
| if (lastSyncTime != null) 'lastSyncTime': lastSyncTime!, |
| if (managementState != null) 'managementState': managementState!, |
| if (name != null) 'name': name!, |
| if (passwordState != null) 'passwordState': passwordState!, |
| if (userAgent != null) 'userAgent': userAgent!, |
| if (userEmail != null) 'userEmail': userEmail!, |
| }; |
| } |
| |
| /// Response message that is returned in ListClientStates. |
| class GoogleAppsCloudidentityDevicesV1ListClientStatesResponse { |
| /// Client states meeting the list restrictions. |
| core.List<GoogleAppsCloudidentityDevicesV1ClientState>? clientStates; |
| |
| /// Token to retrieve the next page of results. |
| /// |
| /// Empty if there are no more results. |
| core.String? nextPageToken; |
| |
| GoogleAppsCloudidentityDevicesV1ListClientStatesResponse(); |
| |
| GoogleAppsCloudidentityDevicesV1ListClientStatesResponse.fromJson( |
| core.Map _json) { |
| if (_json.containsKey('clientStates')) { |
| clientStates = (_json['clientStates'] as core.List) |
| .map<GoogleAppsCloudidentityDevicesV1ClientState>((value) => |
| GoogleAppsCloudidentityDevicesV1ClientState.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('nextPageToken')) { |
| nextPageToken = _json['nextPageToken'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (clientStates != null) |
| 'clientStates': clientStates!.map((value) => value.toJson()).toList(), |
| if (nextPageToken != null) 'nextPageToken': nextPageToken!, |
| }; |
| } |
| |
| /// Response message that is returned from the ListDeviceUsers method. |
| class GoogleAppsCloudidentityDevicesV1ListDeviceUsersResponse { |
| /// Devices meeting the list restrictions. |
| core.List<GoogleAppsCloudidentityDevicesV1DeviceUser>? deviceUsers; |
| |
| /// Token to retrieve the next page of results. |
| /// |
| /// Empty if there are no more results. |
| core.String? nextPageToken; |
| |
| GoogleAppsCloudidentityDevicesV1ListDeviceUsersResponse(); |
| |
| GoogleAppsCloudidentityDevicesV1ListDeviceUsersResponse.fromJson( |
| core.Map _json) { |
| if (_json.containsKey('deviceUsers')) { |
| deviceUsers = (_json['deviceUsers'] as core.List) |
| .map<GoogleAppsCloudidentityDevicesV1DeviceUser>((value) => |
| GoogleAppsCloudidentityDevicesV1DeviceUser.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('nextPageToken')) { |
| nextPageToken = _json['nextPageToken'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (deviceUsers != null) |
| 'deviceUsers': deviceUsers!.map((value) => value.toJson()).toList(), |
| if (nextPageToken != null) 'nextPageToken': nextPageToken!, |
| }; |
| } |
| |
| /// Response message that is returned from the ListDevices method. |
| class GoogleAppsCloudidentityDevicesV1ListDevicesResponse { |
| /// Devices meeting the list restrictions. |
| core.List<GoogleAppsCloudidentityDevicesV1Device>? devices; |
| |
| /// Token to retrieve the next page of results. |
| /// |
| /// Empty if there are no more results. |
| core.String? nextPageToken; |
| |
| GoogleAppsCloudidentityDevicesV1ListDevicesResponse(); |
| |
| GoogleAppsCloudidentityDevicesV1ListDevicesResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('devices')) { |
| devices = (_json['devices'] as core.List) |
| .map<GoogleAppsCloudidentityDevicesV1Device>((value) => |
| GoogleAppsCloudidentityDevicesV1Device.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('nextPageToken')) { |
| nextPageToken = _json['nextPageToken'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (devices != null) |
| 'devices': devices!.map((value) => value.toJson()).toList(), |
| if (nextPageToken != null) 'nextPageToken': nextPageToken!, |
| }; |
| } |
| |
| /// Response containing resource names of the DeviceUsers associated with the |
| /// caller's credentials. |
| class GoogleAppsCloudidentityDevicesV1LookupSelfDeviceUsersResponse { |
| /// The obfuscated customer Id that may be passed back to other Devices API |
| /// methods such as List, Get, etc. |
| core.String? customer; |
| |
| /// [Resource names](https://cloud.google.com/apis/design/resource_names) of |
| /// the DeviceUsers in the format: |
| /// `devices/{device_id}/deviceUsers/{user_resource_id}`, where device_id is |
| /// the unique ID assigned to a Device and user_resource_id is the unique user |
| /// ID |
| core.List<core.String>? names; |
| |
| /// Token to retrieve the next page of results. |
| /// |
| /// Empty if there are no more results. |
| core.String? nextPageToken; |
| |
| GoogleAppsCloudidentityDevicesV1LookupSelfDeviceUsersResponse(); |
| |
| GoogleAppsCloudidentityDevicesV1LookupSelfDeviceUsersResponse.fromJson( |
| core.Map _json) { |
| if (_json.containsKey('customer')) { |
| customer = _json['customer'] as core.String; |
| } |
| if (_json.containsKey('names')) { |
| names = (_json['names'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| if (_json.containsKey('nextPageToken')) { |
| nextPageToken = _json['nextPageToken'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (customer != null) 'customer': customer!, |
| if (names != null) 'names': names!, |
| if (nextPageToken != null) 'nextPageToken': nextPageToken!, |
| }; |
| } |
| |
| /// Request message for wiping all data on the device. |
| class GoogleAppsCloudidentityDevicesV1WipeDeviceRequest { |
| /// [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 you're using this API to manage another |
| /// organization, use `customers/{customer_id}`, where customer_id is the |
| /// customer to whom the device belongs. |
| /// |
| /// Required. |
| core.String? customer; |
| |
| GoogleAppsCloudidentityDevicesV1WipeDeviceRequest(); |
| |
| GoogleAppsCloudidentityDevicesV1WipeDeviceRequest.fromJson(core.Map _json) { |
| if (_json.containsKey('customer')) { |
| customer = _json['customer'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (customer != null) 'customer': customer!, |
| }; |
| } |
| |
| /// Response message for wiping all data on the device. |
| class GoogleAppsCloudidentityDevicesV1WipeDeviceResponse { |
| /// Resultant Device object for the action. |
| /// |
| /// Note that asset tags will not be returned in the device object. |
| GoogleAppsCloudidentityDevicesV1Device? device; |
| |
| GoogleAppsCloudidentityDevicesV1WipeDeviceResponse(); |
| |
| GoogleAppsCloudidentityDevicesV1WipeDeviceResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('device')) { |
| device = GoogleAppsCloudidentityDevicesV1Device.fromJson( |
| _json['device'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (device != null) 'device': device!.toJson(), |
| }; |
| } |
| |
| /// Request message for starting an account wipe on device. |
| class GoogleAppsCloudidentityDevicesV1WipeDeviceUserRequest { |
| /// [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 you're using this API to manage another |
| /// organization, use `customers/{customer_id}`, where customer_id is the |
| /// customer to whom the device belongs. |
| /// |
| /// Required. |
| core.String? customer; |
| |
| GoogleAppsCloudidentityDevicesV1WipeDeviceUserRequest(); |
| |
| GoogleAppsCloudidentityDevicesV1WipeDeviceUserRequest.fromJson( |
| core.Map _json) { |
| if (_json.containsKey('customer')) { |
| customer = _json['customer'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (customer != null) 'customer': customer!, |
| }; |
| } |
| |
| /// Response message for wiping the user's account from the device. |
| class GoogleAppsCloudidentityDevicesV1WipeDeviceUserResponse { |
| /// Resultant DeviceUser object for the action. |
| GoogleAppsCloudidentityDevicesV1DeviceUser? deviceUser; |
| |
| GoogleAppsCloudidentityDevicesV1WipeDeviceUserResponse(); |
| |
| GoogleAppsCloudidentityDevicesV1WipeDeviceUserResponse.fromJson( |
| core.Map _json) { |
| if (_json.containsKey('deviceUser')) { |
| deviceUser = GoogleAppsCloudidentityDevicesV1DeviceUser.fromJson( |
| _json['deviceUser'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (deviceUser != null) 'deviceUser': deviceUser!.toJson(), |
| }; |
| } |
| |
| /// A group within the Cloud Identity Groups API. |
| /// |
| /// A `Group` is a collection of entities, where each entity is either a user, |
| /// another group, or a service account. |
| class Group { |
| /// The time when the `Group` was created. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// An extended description to help users determine the purpose of a `Group`. |
| /// |
| /// Must not be longer than 4,096 characters. |
| core.String? description; |
| |
| /// The display name of the `Group`. |
| core.String? displayName; |
| |
| /// Dynamic group metadata like queries and status. |
| /// |
| /// Optional. |
| DynamicGroupMetadata? dynamicGroupMetadata; |
| |
| /// The `EntityKey` of the `Group`. |
| /// |
| /// Required. Immutable. |
| EntityKey? groupKey; |
| |
| /// 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 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 |
| /// `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 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 value. Examples: |
| /// {"cloudidentity.googleapis.com/groups.discussion_forum": ""} or |
| /// {"system/groups/external": ""}. |
| /// |
| /// Required. |
| core.Map<core.String, core.String>? labels; |
| |
| /// The [resource name](https://cloud.google.com/apis/design/resource_names) |
| /// of the `Group`. |
| /// |
| /// Shall be of the form `groups/{group_id}`. |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// The resource name of the entity under which this `Group` resides in the |
| /// Cloud Identity resource hierarchy. |
| /// |
| /// Must be of the form `identitysources/{identity_source_id}` for external- |
| /// identity-mapped groups or `customers/{customer_id}` for Google Groups. |
| /// |
| /// Required. Immutable. |
| core.String? parent; |
| |
| /// The time when the `Group` was last updated. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| Group(); |
| |
| Group.fromJson(core.Map _json) { |
| if (_json.containsKey('createTime')) { |
| createTime = _json['createTime'] as core.String; |
| } |
| if (_json.containsKey('description')) { |
| description = _json['description'] as core.String; |
| } |
| if (_json.containsKey('displayName')) { |
| displayName = _json['displayName'] as core.String; |
| } |
| if (_json.containsKey('dynamicGroupMetadata')) { |
| dynamicGroupMetadata = DynamicGroupMetadata.fromJson( |
| _json['dynamicGroupMetadata'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('groupKey')) { |
| groupKey = EntityKey.fromJson( |
| _json['groupKey'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('labels')) { |
| labels = (_json['labels'] as core.Map<core.String, core.dynamic>).map( |
| (key, item) => core.MapEntry( |
| key, |
| item as core.String, |
| ), |
| ); |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('parent')) { |
| parent = _json['parent'] as core.String; |
| } |
| if (_json.containsKey('updateTime')) { |
| updateTime = _json['updateTime'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (createTime != null) 'createTime': createTime!, |
| if (description != null) 'description': description!, |
| if (displayName != null) 'displayName': displayName!, |
| if (dynamicGroupMetadata != null) |
| 'dynamicGroupMetadata': dynamicGroupMetadata!.toJson(), |
| if (groupKey != null) 'groupKey': groupKey!.toJson(), |
| if (labels != null) 'labels': labels!, |
| if (name != null) 'name': name!, |
| if (parent != null) 'parent': parent!, |
| if (updateTime != null) 'updateTime': updateTime!, |
| }; |
| } |
| |
| /// Message representing a transitive group of a user or a group. |
| class GroupRelation { |
| /// Display name for this group. |
| core.String? displayName; |
| |
| /// Resource name for this group. |
| core.String? group; |
| |
| /// Entity key has an id and a namespace. |
| /// |
| /// In case of discussion forums, the id will be an email address without a |
| /// namespace. |
| EntityKey? groupKey; |
| |
| /// Labels for Group resource. |
| core.Map<core.String, core.String>? labels; |
| |
| /// The relation between the member and the transitive group. |
| /// Possible string values are: |
| /// - "RELATION_TYPE_UNSPECIFIED" : The relation type is undefined or |
| /// undetermined. |
| /// - "DIRECT" : The two entities have only a direct membership with each |
| /// other. |
| /// - "INDIRECT" : The two entities have only an indirect membership with each |
| /// other. |
| /// - "DIRECT_AND_INDIRECT" : The two entities have both a direct and an |
| /// indirect membership with each other. |
| core.String? relationType; |
| |
| /// Membership roles of the member for the group. |
| core.List<TransitiveMembershipRole>? roles; |
| |
| GroupRelation(); |
| |
| GroupRelation.fromJson(core.Map _json) { |
| if (_json.containsKey('displayName')) { |
| displayName = _json['displayName'] as core.String; |
| } |
| if (_json.containsKey('group')) { |
| group = _json['group'] as core.String; |
| } |
| if (_json.containsKey('groupKey')) { |
| groupKey = EntityKey.fromJson( |
| _json['groupKey'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('labels')) { |
| labels = (_json['labels'] as core.Map<core.String, core.dynamic>).map( |
| (key, item) => core.MapEntry( |
| key, |
| item as core.String, |
| ), |
| ); |
| } |
| if (_json.containsKey('relationType')) { |
| relationType = _json['relationType'] as core.String; |
| } |
| if (_json.containsKey('roles')) { |
| roles = (_json['roles'] as core.List) |
| .map<TransitiveMembershipRole>((value) => |
| TransitiveMembershipRole.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (displayName != null) 'displayName': displayName!, |
| if (group != null) 'group': group!, |
| if (groupKey != null) 'groupKey': groupKey!.toJson(), |
| if (labels != null) 'labels': labels!, |
| if (relationType != null) 'relationType': relationType!, |
| if (roles != null) |
| 'roles': roles!.map((value) => value.toJson()).toList(), |
| }; |
| } |
| |
| /// Response message for ListGroups operation. |
| class ListGroupsResponse { |
| /// Groups returned in response to list request. |
| /// |
| /// The results are not sorted. |
| core.List<Group>? groups; |
| |
| /// Token to retrieve the next page of results, or empty if there are no more |
| /// results available for listing. |
| core.String? nextPageToken; |
| |
| ListGroupsResponse(); |
| |
| ListGroupsResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('groups')) { |
| groups = (_json['groups'] as core.List) |
| .map<Group>((value) => |
| Group.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('nextPageToken')) { |
| nextPageToken = _json['nextPageToken'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (groups != null) |
| 'groups': groups!.map((value) => value.toJson()).toList(), |
| if (nextPageToken != null) 'nextPageToken': nextPageToken!, |
| }; |
| } |
| |
| /// The response message for MembershipsService.ListMemberships. |
| class ListMembershipsResponse { |
| /// The `Membership`s under the specified `parent`. |
| core.List<Membership>? memberships; |
| |
| /// A continuation token to retrieve the next page of results, or empty if |
| /// there are no more results available. |
| core.String? nextPageToken; |
| |
| ListMembershipsResponse(); |
| |
| ListMembershipsResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('memberships')) { |
| memberships = (_json['memberships'] as core.List) |
| .map<Membership>((value) => |
| Membership.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('nextPageToken')) { |
| nextPageToken = _json['nextPageToken'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (memberships != null) |
| 'memberships': memberships!.map((value) => value.toJson()).toList(), |
| if (nextPageToken != null) 'nextPageToken': nextPageToken!, |
| }; |
| } |
| |
| /// The response message for GroupsService.LookupGroupName. |
| class LookupGroupNameResponse { |
| /// The [resource name](https://cloud.google.com/apis/design/resource_names) |
| /// of the looked-up `Group`. |
| core.String? name; |
| |
| LookupGroupNameResponse(); |
| |
| LookupGroupNameResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (name != null) 'name': name!, |
| }; |
| } |
| |
| /// The response message for MembershipsService.LookupMembershipName. |
| class LookupMembershipNameResponse { |
| /// The [resource name](https://cloud.google.com/apis/design/resource_names) |
| /// of the looked-up `Membership`. |
| /// |
| /// Must be of the form `groups/{group_id}/memberships/{membership_id}`. |
| core.String? name; |
| |
| LookupMembershipNameResponse(); |
| |
| LookupMembershipNameResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (name != null) 'name': name!, |
| }; |
| } |
| |
| /// Message representing a transitive membership of a group. |
| class MemberRelation { |
| /// Resource name for this member if member is a GROUP, otherwise it is empty. |
| core.String? member; |
| |
| /// Entity key has an id and a namespace. |
| /// |
| /// In case of discussion forums, the id will be an email address without a |
| /// namespace. |
| core.List<EntityKey>? preferredMemberKey; |
| |
| /// The relation between the group and the transitive member. |
| /// Possible string values are: |
| /// - "RELATION_TYPE_UNSPECIFIED" : The relation type is undefined or |
| /// undetermined. |
| /// - "DIRECT" : The two entities have only a direct membership with each |
| /// other. |
| /// - "INDIRECT" : The two entities have only an indirect membership with each |
| /// other. |
| /// - "DIRECT_AND_INDIRECT" : The two entities have both a direct and an |
| /// indirect membership with each other. |
| core.String? relationType; |
| |
| /// The membership role details (i.e name of role and expiry time). |
| core.List<TransitiveMembershipRole>? roles; |
| |
| MemberRelation(); |
| |
| MemberRelation.fromJson(core.Map _json) { |
| if (_json.containsKey('member')) { |
| member = _json['member'] as core.String; |
| } |
| if (_json.containsKey('preferredMemberKey')) { |
| preferredMemberKey = (_json['preferredMemberKey'] as core.List) |
| .map<EntityKey>((value) => |
| EntityKey.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('relationType')) { |
| relationType = _json['relationType'] as core.String; |
| } |
| if (_json.containsKey('roles')) { |
| roles = (_json['roles'] as core.List) |
| .map<TransitiveMembershipRole>((value) => |
| TransitiveMembershipRole.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (member != null) 'member': member!, |
| if (preferredMemberKey != null) |
| 'preferredMemberKey': |
| preferredMemberKey!.map((value) => value.toJson()).toList(), |
| if (relationType != null) 'relationType': relationType!, |
| if (roles != null) |
| 'roles': roles!.map((value) => value.toJson()).toList(), |
| }; |
| } |
| |
| /// A membership within the Cloud Identity Groups API. |
| /// |
| /// A `Membership` defines a relationship between a `Group` and an entity |
| /// belonging to that `Group`, referred to as a "member". |
| class Membership { |
| /// The time when the `Membership` was created. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// The [resource name](https://cloud.google.com/apis/design/resource_names) |
| /// of the `Membership`. |
| /// |
| /// Shall be of the form `groups/{group_id}/memberships/{membership_id}`. |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// The `EntityKey` of the member. |
| /// |
| /// Required. Immutable. |
| EntityKey? preferredMemberKey; |
| |
| /// 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 the same |
| /// `name`. |
| core.List<MembershipRole>? roles; |
| |
| /// The type of the membership. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "TYPE_UNSPECIFIED" : Default. Should not be used. |
| /// - "USER" : Represents user type. |
| /// - "SERVICE_ACCOUNT" : Represents service account type. |
| /// - "GROUP" : Represents group type. |
| /// - "OTHER" : Represents other type. |
| core.String? type; |
| |
| /// The time when the `Membership` was last updated. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| Membership(); |
| |
| Membership.fromJson(core.Map _json) { |
| if (_json.containsKey('createTime')) { |
| createTime = _json['createTime'] as core.String; |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('preferredMemberKey')) { |
| preferredMemberKey = EntityKey.fromJson( |
| _json['preferredMemberKey'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('roles')) { |
| roles = (_json['roles'] as core.List) |
| .map<MembershipRole>((value) => MembershipRole.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('type')) { |
| type = _json['type'] as core.String; |
| } |
| if (_json.containsKey('updateTime')) { |
| updateTime = _json['updateTime'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (createTime != null) 'createTime': createTime!, |
| if (name != null) 'name': name!, |
| if (preferredMemberKey != null) |
| 'preferredMemberKey': preferredMemberKey!.toJson(), |
| if (roles != null) |
| 'roles': roles!.map((value) => value.toJson()).toList(), |
| if (type != null) 'type': type!, |
| if (updateTime != null) 'updateTime': updateTime!, |
| }; |
| } |
| |
| /// Membership graph's path information as an adjacency list. |
| class MembershipAdjacencyList { |
| /// 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, preferred_member_key and role), but may not be a |
| /// comprehensive list of all fields. |
| core.List<Membership>? edges; |
| |
| /// Resource name of the group that the members belong to. |
| core.String? group; |
| |
| MembershipAdjacencyList(); |
| |
| MembershipAdjacencyList.fromJson(core.Map _json) { |
| if (_json.containsKey('edges')) { |
| edges = (_json['edges'] as core.List) |
| .map<Membership>((value) => |
| Membership.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('group')) { |
| group = _json['group'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (edges != null) |
| 'edges': edges!.map((value) => value.toJson()).toList(), |
| if (group != null) 'group': group!, |
| }; |
| } |
| |
| /// A membership role within the Cloud Identity Groups API. |
| /// |
| /// A `MembershipRole` defines the privileges granted to a `Membership`. |
| class MembershipRole { |
| /// 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 other value. |
| ExpiryDetail? expiryDetail; |
| |
| /// The name of the `MembershipRole`. |
| /// |
| /// Must be one of `OWNER`, `MANAGER`, `MEMBER`. |
| core.String? name; |
| |
| MembershipRole(); |
| |
| MembershipRole.fromJson(core.Map _json) { |
| if (_json.containsKey('expiryDetail')) { |
| expiryDetail = ExpiryDetail.fromJson( |
| _json['expiryDetail'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (expiryDetail != null) 'expiryDetail': expiryDetail!.toJson(), |
| if (name != null) 'name': name!, |
| }; |
| } |
| |
| /// The request message for MembershipsService.ModifyMembershipRoles. |
| class ModifyMembershipRolesRequest { |
| /// 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. |
| core.List<MembershipRole>? addRoles; |
| |
| /// 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` `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. |
| core.List<core.String>? removeRoles; |
| |
| /// 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. |
| core.List<UpdateMembershipRolesParams>? updateRolesParams; |
| |
| ModifyMembershipRolesRequest(); |
| |
| ModifyMembershipRolesRequest.fromJson(core.Map _json) { |
| if (_json.containsKey('addRoles')) { |
| addRoles = (_json['addRoles'] as core.List) |
| .map<MembershipRole>((value) => MembershipRole.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('removeRoles')) { |
| removeRoles = (_json['removeRoles'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| if (_json.containsKey('updateRolesParams')) { |
| updateRolesParams = (_json['updateRolesParams'] as core.List) |
| .map<UpdateMembershipRolesParams>((value) => |
| UpdateMembershipRolesParams.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (addRoles != null) |
| 'addRoles': addRoles!.map((value) => value.toJson()).toList(), |
| if (removeRoles != null) 'removeRoles': removeRoles!, |
| if (updateRolesParams != null) |
| 'updateRolesParams': |
| updateRolesParams!.map((value) => value.toJson()).toList(), |
| }; |
| } |
| |
| /// The response message for MembershipsService.ModifyMembershipRoles. |
| class ModifyMembershipRolesResponse { |
| /// The `Membership` resource after modifying its `MembershipRole`s. |
| Membership? membership; |
| |
| ModifyMembershipRolesResponse(); |
| |
| ModifyMembershipRolesResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('membership')) { |
| membership = Membership.fromJson( |
| _json['membership'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (membership != null) 'membership': membership!.toJson(), |
| }; |
| } |
| |
| /// This resource represents a long-running operation that is the result of a |
| /// network API call. |
| class Operation { |
| /// 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. |
| core.bool? done; |
| |
| /// The error result of the operation in case of failure or cancellation. |
| Status? error; |
| |
| /// 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 metadata. Any method |
| /// that returns a long-running operation should document the metadata type, |
| /// if any. |
| /// |
| /// The values for Object must be JSON objects. It can consist of `num`, |
| /// `String`, `bool` and `null` as well as `Map` and `List` values. |
| core.Map<core.String, core.Object>? metadata; |
| |
| /// 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 with `operations/{unique_id}`. |
| core.String? name; |
| |
| /// 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 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 original method name. For example, if the original method name is |
| /// `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. |
| /// |
| /// The values for Object must be JSON objects. It can consist of `num`, |
| /// `String`, `bool` and `null` as well as `Map` and `List` values. |
| core.Map<core.String, core.Object>? response; |
| |
| Operation(); |
| |
| Operation.fromJson(core.Map _json) { |
| if (_json.containsKey('done')) { |
| done = _json['done'] as core.bool; |
| } |
| if (_json.containsKey('error')) { |
| error = Status.fromJson( |
| _json['error'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('metadata')) { |
| metadata = (_json['metadata'] as core.Map<core.String, core.dynamic>).map( |
| (key, item) => core.MapEntry( |
| key, |
| item as core.Object, |
| ), |
| ); |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('response')) { |
| response = (_json['response'] as core.Map<core.String, core.dynamic>).map( |
| (key, item) => core.MapEntry( |
| key, |
| item as core.Object, |
| ), |
| ); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (done != null) 'done': done!, |
| if (error != null) 'error': error!.toJson(), |
| if (metadata != null) 'metadata': metadata!, |
| if (name != null) 'name': name!, |
| if (response != null) 'response': response!, |
| }; |
| } |
| |
| /// The response message for GroupsService.SearchGroups. |
| class SearchGroupsResponse { |
| /// The `Group`s that match the search query. |
| core.List<Group>? groups; |
| |
| /// A continuation token to retrieve the next page of results, or empty if |
| /// there are no more results available. |
| core.String? nextPageToken; |
| |
| SearchGroupsResponse(); |
| |
| SearchGroupsResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('groups')) { |
| groups = (_json['groups'] as core.List) |
| .map<Group>((value) => |
| Group.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('nextPageToken')) { |
| nextPageToken = _json['nextPageToken'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (groups != null) |
| 'groups': groups!.map((value) => value.toJson()).toList(), |
| if (nextPageToken != null) 'nextPageToken': nextPageToken!, |
| }; |
| } |
| |
| /// The response message for MembershipsService.SearchTransitiveGroups. |
| class SearchTransitiveGroupsResponse { |
| /// List of transitive groups satisfying the query. |
| core.List<GroupRelation>? memberships; |
| |
| /// Token to retrieve the next page of results, or empty if there are no more |
| /// results available for listing. |
| core.String? nextPageToken; |
| |
| SearchTransitiveGroupsResponse(); |
| |
| SearchTransitiveGroupsResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('memberships')) { |
| memberships = (_json['memberships'] as core.List) |
| .map<GroupRelation>((value) => GroupRelation.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('nextPageToken')) { |
| nextPageToken = _json['nextPageToken'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (memberships != null) |
| 'memberships': memberships!.map((value) => value.toJson()).toList(), |
| if (nextPageToken != null) 'nextPageToken': nextPageToken!, |
| }; |
| } |
| |
| /// The response message for MembershipsService.SearchTransitiveMemberships. |
| class SearchTransitiveMembershipsResponse { |
| /// List of transitive members satisfying the query. |
| core.List<MemberRelation>? memberships; |
| |
| /// Token to retrieve the next page of results, or empty if there are no more |
| /// results. |
| core.String? nextPageToken; |
| |
| SearchTransitiveMembershipsResponse(); |
| |
| SearchTransitiveMembershipsResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('memberships')) { |
| memberships = (_json['memberships'] as core.List) |
| .map<MemberRelation>((value) => MemberRelation.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('nextPageToken')) { |
| nextPageToken = _json['nextPageToken'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (memberships != null) |
| 'memberships': memberships!.map((value) => value.toJson()).toList(), |
| if (nextPageToken != null) 'nextPageToken': nextPageToken!, |
| }; |
| } |
| |
| /// The `Status` type defines a logical error model that is suitable for |
| /// different programming environments, including REST APIs and RPC APIs. |
| /// |
| /// It is used by [gRPC](https://github.com/grpc). Each `Status` message |
| /// contains three pieces of data: error code, error message, and error details. |
| /// You can find out more about this error model and how to work with it in the |
| /// [API Design Guide](https://cloud.google.com/apis/design/errors). |
| class Status { |
| /// The status code, which should be an enum value of google.rpc.Code. |
| core.int? code; |
| |
| /// A list of messages that carry the error details. |
| /// |
| /// There is a common set of message types for APIs to use. |
| /// |
| /// The values for Object must be JSON objects. It can consist of `num`, |
| /// `String`, `bool` and `null` as well as `Map` and `List` values. |
| core.List<core.Map<core.String, core.Object>>? details; |
| |
| /// 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 client. |
| core.String? message; |
| |
| Status(); |
| |
| Status.fromJson(core.Map _json) { |
| if (_json.containsKey('code')) { |
| code = _json['code'] as core.int; |
| } |
| if (_json.containsKey('details')) { |
| details = (_json['details'] as core.List) |
| .map<core.Map<core.String, core.Object>>( |
| (value) => (value as core.Map<core.String, core.dynamic>).map( |
| (key, item) => core.MapEntry( |
| key, |
| item as core.Object, |
| ), |
| )) |
| .toList(); |
| } |
| if (_json.containsKey('message')) { |
| message = _json['message'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (code != null) 'code': code!, |
| if (details != null) 'details': details!, |
| if (message != null) 'message': message!, |
| }; |
| } |
| |
| /// Message representing the role of a TransitiveMembership. |
| class TransitiveMembershipRole { |
| /// TransitiveMembershipRole in string format. |
| /// |
| /// Currently supported TransitiveMembershipRoles: `"MEMBER"`, `"OWNER"`, and |
| /// `"MANAGER"`. |
| core.String? role; |
| |
| TransitiveMembershipRole(); |
| |
| TransitiveMembershipRole.fromJson(core.Map _json) { |
| if (_json.containsKey('role')) { |
| role = _json['role'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (role != null) 'role': role!, |
| }; |
| } |
| |
| /// The details of an update to a `MembershipRole`. |
| class UpdateMembershipRolesParams { |
| /// The fully-qualified names of fields to update. |
| /// |
| /// May only contain the field `expiry_detail`. |
| core.String? fieldMask; |
| |
| /// The `MembershipRole`s to be updated. |
| /// |
| /// Only `MEMBER` `MembershipRole` can currently be updated. |
| MembershipRole? membershipRole; |
| |
| UpdateMembershipRolesParams(); |
| |
| UpdateMembershipRolesParams.fromJson(core.Map _json) { |
| if (_json.containsKey('fieldMask')) { |
| fieldMask = _json['fieldMask'] as core.String; |
| } |
| if (_json.containsKey('membershipRole')) { |
| membershipRole = MembershipRole.fromJson( |
| _json['membershipRole'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (fieldMask != null) 'fieldMask': fieldMask!, |
| if (membershipRole != null) 'membershipRole': membershipRole!.toJson(), |
| }; |
| } |
| |
| /// The `UserInvitation` resource represents an email sent to an unmanaged user |
| /// account (an email address that shares the domain of the Google Workspace |
| /// customer but is not managed by it yet), inviting them to join the customer’s |
| /// domain. |
| /// |
| /// If the user accepts the `UserInvitation`, the account will become a managed |
| /// account. |
| class UserInvitation { |
| /// Number of invitation emails sent to the user. |
| core.String? mailsSentCount; |
| |
| /// Shall be of the form |
| /// `customers/{customer}/userinvitations/{user_email_address}`. |
| core.String? name; |
| |
| /// State of the `UserInvitation`. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : The default value. This value is used if the state |
| /// is omitted. |
| /// - "NOT_YET_SENT" : The `UserInvitation` has been created and is ready for |
| /// sending as an email. |
| /// - "INVITED" : The user has been invited by email. |
| /// - "ACCEPTED" : The user has accepted the invitation and is part of the |
| /// organization. |
| /// - "DECLINED" : The user declined the invitation. |
| core.String? state; |
| |
| /// Time when the `UserInvitation` was last updated. |
| core.String? updateTime; |
| |
| UserInvitation(); |
| |
| UserInvitation.fromJson(core.Map _json) { |
| if (_json.containsKey('mailsSentCount')) { |
| mailsSentCount = _json['mailsSentCount'] as core.String; |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('state')) { |
| state = _json['state'] as core.String; |
| } |
| if (_json.containsKey('updateTime')) { |
| updateTime = _json['updateTime'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (mailsSentCount != null) 'mailsSentCount': mailsSentCount!, |
| if (name != null) 'name': name!, |
| if (state != null) 'state': state!, |
| if (updateTime != null) 'updateTime': updateTime!, |
| }; |
| } |