| // This is a generated file (see the discoveryapis_generator project). |
| |
| // ignore_for_file: unused_import, unnecessary_cast |
| |
| library googleapis.androiddeviceprovisioning.v1; |
| |
| import 'dart:core' as core; |
| import 'dart:async' as async; |
| import 'dart:convert' as convert; |
| |
| import 'package:_discoveryapis_commons/_discoveryapis_commons.dart' as commons; |
| import 'package:http/http.dart' as http; |
| |
| export 'package:_discoveryapis_commons/_discoveryapis_commons.dart' |
| show ApiRequestError, DetailedApiRequestError; |
| |
| const core.String USER_AGENT = 'dart-api-client androiddeviceprovisioning/v1'; |
| |
| /// Automates Android zero-touch enrollment for device resellers, customers, and |
| /// EMMs. |
| class AndroiddeviceprovisioningApi { |
| final commons.ApiRequester _requester; |
| |
| CustomersResourceApi get customers => new CustomersResourceApi(_requester); |
| OperationsResourceApi get operations => new OperationsResourceApi(_requester); |
| PartnersResourceApi get partners => new PartnersResourceApi(_requester); |
| |
| AndroiddeviceprovisioningApi(http.Client client, |
| {core.String rootUrl = |
| "https://androiddeviceprovisioning.googleapis.com/", |
| core.String servicePath = ""}) |
| : _requester = |
| new commons.ApiRequester(client, rootUrl, servicePath, USER_AGENT); |
| } |
| |
| class CustomersResourceApi { |
| final commons.ApiRequester _requester; |
| |
| CustomersConfigurationsResourceApi get configurations => |
| new CustomersConfigurationsResourceApi(_requester); |
| CustomersDevicesResourceApi get devices => |
| new CustomersDevicesResourceApi(_requester); |
| CustomersDpcsResourceApi get dpcs => new CustomersDpcsResourceApi(_requester); |
| |
| CustomersResourceApi(commons.ApiRequester client) : _requester = client; |
| |
| /// Lists the user's customer accounts. |
| /// |
| /// Request parameters: |
| /// |
| /// [pageSize] - The maximum number of customers to show in a page of results. |
| /// A number between 1 and 100 (inclusive). |
| /// |
| /// [pageToken] - A token specifying which result page to return. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [CustomerListCustomersResponse]. |
| /// |
| /// 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<CustomerListCustomersResponse> list( |
| {core.int pageSize, core.String pageToken, core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (pageSize != null) { |
| _queryParams["pageSize"] = ["${pageSize}"]; |
| } |
| if (pageToken != null) { |
| _queryParams["pageToken"] = [pageToken]; |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/customers'; |
| |
| var _response = _requester.request(_url, "GET", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response |
| .then((data) => new CustomerListCustomersResponse.fromJson(data)); |
| } |
| } |
| |
| class CustomersConfigurationsResourceApi { |
| final commons.ApiRequester _requester; |
| |
| CustomersConfigurationsResourceApi(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Creates a new configuration. Once created, a customer can apply the |
| /// configuration to devices. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The customer that manages the configuration. An API |
| /// resource name in the format `customers/[CUSTOMER_ID]`. |
| /// Value must have pattern "^customers/[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Configuration]. |
| /// |
| /// 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<Configuration> create(Configuration request, core.String parent, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (request != null) { |
| _body = convert.json.encode((request).toJson()); |
| } |
| if (parent == null) { |
| throw new core.ArgumentError("Parameter parent is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/' + |
| commons.Escaper.ecapeVariableReserved('$parent') + |
| '/configurations'; |
| |
| var _response = _requester.request(_url, "POST", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Configuration.fromJson(data)); |
| } |
| |
| /// Deletes an unused configuration. The API call fails if the customer has |
| /// devices with the configuration applied. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The configuration to delete. An API resource name in |
| /// the format `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. If |
| /// the configuration is applied to any devices, the API call fails. |
| /// Value must have pattern "^customers/[^/]+/configurations/[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Empty]. |
| /// |
| /// 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<Empty> delete(core.String name, {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (name == null) { |
| throw new core.ArgumentError("Parameter name is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$name'); |
| |
| var _response = _requester.request(_url, "DELETE", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Empty.fromJson(data)); |
| } |
| |
| /// Gets the details of a configuration. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The configuration to get. An API resource name in the |
| /// format `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. |
| /// Value must have pattern "^customers/[^/]+/configurations/[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Configuration]. |
| /// |
| /// 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<Configuration> get(core.String name, {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (name == null) { |
| throw new core.ArgumentError("Parameter name is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$name'); |
| |
| var _response = _requester.request(_url, "GET", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Configuration.fromJson(data)); |
| } |
| |
| /// Lists a customer's configurations. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The customer that manages the listed configurations. |
| /// An API resource name in the format `customers/[CUSTOMER_ID]`. |
| /// Value must have pattern "^customers/[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [CustomerListConfigurationsResponse]. |
| /// |
| /// 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<CustomerListConfigurationsResponse> list(core.String parent, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (parent == null) { |
| throw new core.ArgumentError("Parameter parent is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/' + |
| commons.Escaper.ecapeVariableReserved('$parent') + |
| '/configurations'; |
| |
| var _response = _requester.request(_url, "GET", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response |
| .then((data) => new CustomerListConfigurationsResponse.fromJson(data)); |
| } |
| |
| /// Updates a configuration's field values. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. The API resource name in the format |
| /// `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. Assigned by |
| /// the server. |
| /// Value must have pattern "^customers/[^/]+/configurations/[^/]+$". |
| /// |
| /// [updateMask] - Required. The field mask applied to the target |
| /// `Configuration` before updating the fields. To learn more about using |
| /// field masks, read |
| /// [FieldMask](/protocol-buffers/docs/reference/google.protobuf#fieldmask) in |
| /// the Protocol Buffers documentation. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Configuration]. |
| /// |
| /// 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<Configuration> patch(Configuration request, core.String name, |
| {core.String updateMask, core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (request != null) { |
| _body = convert.json.encode((request).toJson()); |
| } |
| if (name == null) { |
| throw new core.ArgumentError("Parameter name is required."); |
| } |
| if (updateMask != null) { |
| _queryParams["updateMask"] = [updateMask]; |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$name'); |
| |
| var _response = _requester.request(_url, "PATCH", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Configuration.fromJson(data)); |
| } |
| } |
| |
| class CustomersDevicesResourceApi { |
| final commons.ApiRequester _requester; |
| |
| CustomersDevicesResourceApi(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Applies a Configuration to the device to register the device for |
| /// zero-touch enrollment. After applying a configuration to a device, the |
| /// device automatically provisions itself on first boot, or next factory |
| /// reset. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The customer managing the device. An API resource |
| /// name in the format `customers/[CUSTOMER_ID]`. |
| /// Value must have pattern "^customers/[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Empty]. |
| /// |
| /// 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<Empty> applyConfiguration( |
| CustomerApplyConfigurationRequest request, core.String parent, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (request != null) { |
| _body = convert.json.encode((request).toJson()); |
| } |
| if (parent == null) { |
| throw new core.ArgumentError("Parameter parent is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/' + |
| commons.Escaper.ecapeVariableReserved('$parent') + |
| '/devices:applyConfiguration'; |
| |
| var _response = _requester.request(_url, "POST", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Empty.fromJson(data)); |
| } |
| |
| /// Gets the details of a device. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The device to get. An API resource name in the format |
| /// `customers/[CUSTOMER_ID]/devices/[DEVICE_ID]`. |
| /// Value must have pattern "^customers/[^/]+/devices/[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Device]. |
| /// |
| /// 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<Device> get(core.String name, {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (name == null) { |
| throw new core.ArgumentError("Parameter name is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$name'); |
| |
| var _response = _requester.request(_url, "GET", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Device.fromJson(data)); |
| } |
| |
| /// Lists a customer's devices. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The customer managing the devices. An API resource |
| /// name in the format `customers/[CUSTOMER_ID]`. |
| /// Value must have pattern "^customers/[^/]+$". |
| /// |
| /// [pageToken] - A token specifying which result page to return. |
| /// |
| /// [pageSize] - The maximum number of devices to show in a page of results. |
| /// Must be between 1 and 100 inclusive. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [CustomerListDevicesResponse]. |
| /// |
| /// 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<CustomerListDevicesResponse> list(core.String parent, |
| {core.String pageToken, core.String pageSize, core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (parent == null) { |
| throw new core.ArgumentError("Parameter parent is required."); |
| } |
| if (pageToken != null) { |
| _queryParams["pageToken"] = [pageToken]; |
| } |
| if (pageSize != null) { |
| _queryParams["pageSize"] = [pageSize]; |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = |
| 'v1/' + commons.Escaper.ecapeVariableReserved('$parent') + '/devices'; |
| |
| var _response = _requester.request(_url, "GET", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response |
| .then((data) => new CustomerListDevicesResponse.fromJson(data)); |
| } |
| |
| /// Removes a configuration from device. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The customer managing the device in the format |
| /// `customers/[CUSTOMER_ID]`. |
| /// Value must have pattern "^customers/[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Empty]. |
| /// |
| /// 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<Empty> removeConfiguration( |
| CustomerRemoveConfigurationRequest request, core.String parent, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (request != null) { |
| _body = convert.json.encode((request).toJson()); |
| } |
| if (parent == null) { |
| throw new core.ArgumentError("Parameter parent is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/' + |
| commons.Escaper.ecapeVariableReserved('$parent') + |
| '/devices:removeConfiguration'; |
| |
| var _response = _requester.request(_url, "POST", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Empty.fromJson(data)); |
| } |
| |
| /// Unclaims a device from a customer and removes it from zero-touch |
| /// enrollment. After removing a device, a customer must contact their |
| /// reseller to register the device into zero-touch enrollment again. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The customer managing the device. An API resource |
| /// name in the format `customers/[CUSTOMER_ID]`. |
| /// Value must have pattern "^customers/[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Empty]. |
| /// |
| /// 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<Empty> unclaim( |
| CustomerUnclaimDeviceRequest request, core.String parent, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (request != null) { |
| _body = convert.json.encode((request).toJson()); |
| } |
| if (parent == null) { |
| throw new core.ArgumentError("Parameter parent is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/' + |
| commons.Escaper.ecapeVariableReserved('$parent') + |
| '/devices:unclaim'; |
| |
| var _response = _requester.request(_url, "POST", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Empty.fromJson(data)); |
| } |
| } |
| |
| class CustomersDpcsResourceApi { |
| final commons.ApiRequester _requester; |
| |
| CustomersDpcsResourceApi(commons.ApiRequester client) : _requester = client; |
| |
| /// Lists the DPCs (device policy controllers) that support zero-touch |
| /// enrollment. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The customer that can use the DPCs in configurations. |
| /// An API resource name in the format `customers/[CUSTOMER_ID]`. |
| /// Value must have pattern "^customers/[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [CustomerListDpcsResponse]. |
| /// |
| /// 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<CustomerListDpcsResponse> list(core.String parent, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (parent == null) { |
| throw new core.ArgumentError("Parameter parent is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$parent') + '/dpcs'; |
| |
| var _response = _requester.request(_url, "GET", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response |
| .then((data) => new CustomerListDpcsResponse.fromJson(data)); |
| } |
| } |
| |
| class OperationsResourceApi { |
| final commons.ApiRequester _requester; |
| |
| OperationsResourceApi(commons.ApiRequester client) : _requester = client; |
| |
| /// Gets the latest state of a long-running operation. Clients can use this |
| /// method to poll the operation result at intervals as recommended by the API |
| /// service. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the operation resource. |
| /// Value must have pattern "^operations/.*$". |
| /// |
| /// [$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> get(core.String name, {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (name == null) { |
| throw new core.ArgumentError("Parameter name is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$name'); |
| |
| var _response = _requester.request(_url, "GET", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Operation.fromJson(data)); |
| } |
| } |
| |
| class PartnersResourceApi { |
| final commons.ApiRequester _requester; |
| |
| PartnersCustomersResourceApi get customers => |
| new PartnersCustomersResourceApi(_requester); |
| PartnersDevicesResourceApi get devices => |
| new PartnersDevicesResourceApi(_requester); |
| PartnersVendorsResourceApi get vendors => |
| new PartnersVendorsResourceApi(_requester); |
| |
| PartnersResourceApi(commons.ApiRequester client) : _requester = client; |
| } |
| |
| class PartnersCustomersResourceApi { |
| final commons.ApiRequester _requester; |
| |
| PartnersCustomersResourceApi(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Creates a customer for zero-touch enrollment. After the method returns |
| /// successfully, admin and owner roles can manage devices and EMM configs by |
| /// calling API methods or using their zero-touch enrollment portal. The |
| /// customer receives an email that welcomes them to zero-touch enrollment and |
| /// explains how to sign into the portal. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The parent resource ID in the format |
| /// `partners/[PARTNER_ID]` that identifies the reseller. |
| /// Value must have pattern "^partners/[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Company]. |
| /// |
| /// 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<Company> create( |
| CreateCustomerRequest request, core.String parent, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (request != null) { |
| _body = convert.json.encode((request).toJson()); |
| } |
| if (parent == null) { |
| throw new core.ArgumentError("Parameter parent is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = |
| 'v1/' + commons.Escaper.ecapeVariableReserved('$parent') + '/customers'; |
| |
| var _response = _requester.request(_url, "POST", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Company.fromJson(data)); |
| } |
| |
| /// Lists the customers that are enrolled to the reseller identified by the |
| /// `partnerId` argument. This list includes customers that the reseller |
| /// created and customers that enrolled themselves using the portal. |
| /// |
| /// Request parameters: |
| /// |
| /// [partnerId] - Required. The ID of the reseller partner. |
| /// Value must have pattern "^[^/]+$". |
| /// |
| /// [pageSize] - The maximum number of results to be returned. If not |
| /// specified or 0, all the records are returned. |
| /// |
| /// [pageToken] - A token identifying a page of results returned by the |
| /// server. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListCustomersResponse]. |
| /// |
| /// 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<ListCustomersResponse> list(core.String partnerId, |
| {core.int pageSize, core.String pageToken, core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (partnerId == null) { |
| throw new core.ArgumentError("Parameter partnerId is required."); |
| } |
| if (pageSize != null) { |
| _queryParams["pageSize"] = ["${pageSize}"]; |
| } |
| if (pageToken != null) { |
| _queryParams["pageToken"] = [pageToken]; |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/partners/' + |
| commons.Escaper.ecapeVariableReserved('$partnerId') + |
| '/customers'; |
| |
| var _response = _requester.request(_url, "GET", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new ListCustomersResponse.fromJson(data)); |
| } |
| } |
| |
| class PartnersDevicesResourceApi { |
| final commons.ApiRequester _requester; |
| |
| PartnersDevicesResourceApi(commons.ApiRequester client) : _requester = client; |
| |
| /// Claims a device for a customer and adds it to zero-touch enrollment. If |
| /// the device is already claimed by another customer, the call returns an |
| /// error. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [partnerId] - Required. The ID of the reseller partner. |
| /// Value must have pattern "^[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ClaimDeviceResponse]. |
| /// |
| /// 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<ClaimDeviceResponse> claim( |
| ClaimDeviceRequest request, core.String partnerId, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (request != null) { |
| _body = convert.json.encode((request).toJson()); |
| } |
| if (partnerId == null) { |
| throw new core.ArgumentError("Parameter partnerId is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/partners/' + |
| commons.Escaper.ecapeVariableReserved('$partnerId') + |
| '/devices:claim'; |
| |
| var _response = _requester.request(_url, "POST", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new ClaimDeviceResponse.fromJson(data)); |
| } |
| |
| /// Claims a batch of devices for a customer asynchronously. Adds the devices |
| /// to zero-touch enrollment. To learn more, read [Long‑running batch |
| /// operations](/zero-touch/guides/how-it-works#operations). |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [partnerId] - Required. The ID of the reseller partner. |
| /// Value must have pattern "^[^/]+$". |
| /// |
| /// [$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> claimAsync( |
| ClaimDevicesRequest request, core.String partnerId, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (request != null) { |
| _body = convert.json.encode((request).toJson()); |
| } |
| if (partnerId == null) { |
| throw new core.ArgumentError("Parameter partnerId is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/partners/' + |
| commons.Escaper.ecapeVariableReserved('$partnerId') + |
| '/devices:claimAsync'; |
| |
| var _response = _requester.request(_url, "POST", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Operation.fromJson(data)); |
| } |
| |
| /// Finds devices by hardware identifiers, such as IMEI. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [partnerId] - Required. The ID of the reseller partner. |
| /// Value must have pattern "^[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [FindDevicesByDeviceIdentifierResponse]. |
| /// |
| /// 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<FindDevicesByDeviceIdentifierResponse> findByIdentifier( |
| FindDevicesByDeviceIdentifierRequest request, core.String partnerId, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (request != null) { |
| _body = convert.json.encode((request).toJson()); |
| } |
| if (partnerId == null) { |
| throw new core.ArgumentError("Parameter partnerId is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/partners/' + |
| commons.Escaper.ecapeVariableReserved('$partnerId') + |
| '/devices:findByIdentifier'; |
| |
| var _response = _requester.request(_url, "POST", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then( |
| (data) => new FindDevicesByDeviceIdentifierResponse.fromJson(data)); |
| } |
| |
| /// Finds devices claimed for customers. The results only contain devices |
| /// registered to the reseller that's identified by the `partnerId` argument. |
| /// The customer's devices purchased from other resellers don't appear in the |
| /// results. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [partnerId] - Required. The ID of the reseller partner. |
| /// Value must have pattern "^[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [FindDevicesByOwnerResponse]. |
| /// |
| /// 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<FindDevicesByOwnerResponse> findByOwner( |
| FindDevicesByOwnerRequest request, core.String partnerId, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (request != null) { |
| _body = convert.json.encode((request).toJson()); |
| } |
| if (partnerId == null) { |
| throw new core.ArgumentError("Parameter partnerId is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/partners/' + |
| commons.Escaper.ecapeVariableReserved('$partnerId') + |
| '/devices:findByOwner'; |
| |
| var _response = _requester.request(_url, "POST", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response |
| .then((data) => new FindDevicesByOwnerResponse.fromJson(data)); |
| } |
| |
| /// Gets a device. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The device API resource name in the format |
| /// `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. |
| /// Value must have pattern "^partners/[^/]+/devices/[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Device]. |
| /// |
| /// 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<Device> get(core.String name, {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (name == null) { |
| throw new core.ArgumentError("Parameter name is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$name'); |
| |
| var _response = _requester.request(_url, "GET", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Device.fromJson(data)); |
| } |
| |
| /// Updates reseller metadata associated with the device. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [metadataOwnerId] - Required. The owner of the newly set metadata. Set |
| /// this to the partner ID. |
| /// Value must have pattern "^[^/]+$". |
| /// |
| /// [deviceId] - Required. The ID of the device. |
| /// Value must have pattern "^[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [DeviceMetadata]. |
| /// |
| /// 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<DeviceMetadata> metadata(UpdateDeviceMetadataRequest request, |
| core.String metadataOwnerId, core.String deviceId, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (request != null) { |
| _body = convert.json.encode((request).toJson()); |
| } |
| if (metadataOwnerId == null) { |
| throw new core.ArgumentError("Parameter metadataOwnerId is required."); |
| } |
| if (deviceId == null) { |
| throw new core.ArgumentError("Parameter deviceId is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/partners/' + |
| commons.Escaper.ecapeVariableReserved('$metadataOwnerId') + |
| '/devices/' + |
| commons.Escaper.ecapeVariableReserved('$deviceId') + |
| '/metadata'; |
| |
| var _response = _requester.request(_url, "POST", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new DeviceMetadata.fromJson(data)); |
| } |
| |
| /// Unclaims a device from a customer and removes it from zero-touch |
| /// enrollment. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [partnerId] - Required. The ID of the reseller partner. |
| /// Value must have pattern "^[^/]+$". |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Empty]. |
| /// |
| /// 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<Empty> unclaim( |
| UnclaimDeviceRequest request, core.String partnerId, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (request != null) { |
| _body = convert.json.encode((request).toJson()); |
| } |
| if (partnerId == null) { |
| throw new core.ArgumentError("Parameter partnerId is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/partners/' + |
| commons.Escaper.ecapeVariableReserved('$partnerId') + |
| '/devices:unclaim'; |
| |
| var _response = _requester.request(_url, "POST", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Empty.fromJson(data)); |
| } |
| |
| /// Unclaims a batch of devices for a customer asynchronously. Removes the |
| /// devices from zero-touch enrollment. To learn more, read [Long‑running |
| /// batch operations](/zero-touch/guides/how-it-works#operations). |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [partnerId] - Required. The reseller partner ID. |
| /// Value must have pattern "^[^/]+$". |
| /// |
| /// [$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> unclaimAsync( |
| UnclaimDevicesRequest request, core.String partnerId, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (request != null) { |
| _body = convert.json.encode((request).toJson()); |
| } |
| if (partnerId == null) { |
| throw new core.ArgumentError("Parameter partnerId is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/partners/' + |
| commons.Escaper.ecapeVariableReserved('$partnerId') + |
| '/devices:unclaimAsync'; |
| |
| var _response = _requester.request(_url, "POST", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Operation.fromJson(data)); |
| } |
| |
| /// Updates the reseller metadata attached to a batch of devices. This method |
| /// updates devices asynchronously and returns an `Operation` that can be used |
| /// to track progress. Read [Long‑running batch |
| /// operations](/zero-touch/guides/how-it-works#operations). |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [partnerId] - Required. The reseller partner ID. |
| /// Value must have pattern "^[^/]+$". |
| /// |
| /// [$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> updateMetadataAsync( |
| UpdateDeviceMetadataInBatchRequest request, core.String partnerId, |
| {core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (request != null) { |
| _body = convert.json.encode((request).toJson()); |
| } |
| if (partnerId == null) { |
| throw new core.ArgumentError("Parameter partnerId is required."); |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = 'v1/partners/' + |
| commons.Escaper.ecapeVariableReserved('$partnerId') + |
| '/devices:updateMetadataAsync'; |
| |
| var _response = _requester.request(_url, "POST", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new Operation.fromJson(data)); |
| } |
| } |
| |
| class PartnersVendorsResourceApi { |
| final commons.ApiRequester _requester; |
| |
| PartnersVendorsCustomersResourceApi get customers => |
| new PartnersVendorsCustomersResourceApi(_requester); |
| |
| PartnersVendorsResourceApi(commons.ApiRequester client) : _requester = client; |
| |
| /// Lists the vendors of the partner. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name in the format |
| /// `partners/[PARTNER_ID]`. |
| /// Value must have pattern "^partners/[^/]+$". |
| /// |
| /// [pageSize] - The maximum number of results to be returned. |
| /// |
| /// [pageToken] - A token identifying a page of results returned by the |
| /// server. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListVendorsResponse]. |
| /// |
| /// 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<ListVendorsResponse> list(core.String parent, |
| {core.int pageSize, core.String pageToken, core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (parent == null) { |
| throw new core.ArgumentError("Parameter parent is required."); |
| } |
| if (pageSize != null) { |
| _queryParams["pageSize"] = ["${pageSize}"]; |
| } |
| if (pageToken != null) { |
| _queryParams["pageToken"] = [pageToken]; |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = |
| 'v1/' + commons.Escaper.ecapeVariableReserved('$parent') + '/vendors'; |
| |
| var _response = _requester.request(_url, "GET", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response.then((data) => new ListVendorsResponse.fromJson(data)); |
| } |
| } |
| |
| class PartnersVendorsCustomersResourceApi { |
| final commons.ApiRequester _requester; |
| |
| PartnersVendorsCustomersResourceApi(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Lists the customers of the vendor. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name in the format |
| /// `partners/[PARTNER_ID]/vendors/[VENDOR_ID]`. |
| /// Value must have pattern "^partners/[^/]+/vendors/[^/]+$". |
| /// |
| /// [pageSize] - The maximum number of results to be returned. |
| /// |
| /// [pageToken] - A token identifying a page of results returned by the |
| /// server. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListVendorCustomersResponse]. |
| /// |
| /// 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<ListVendorCustomersResponse> list(core.String parent, |
| {core.int pageSize, core.String pageToken, core.String $fields}) { |
| var _url; |
| var _queryParams = new core.Map<core.String, core.List<core.String>>(); |
| var _uploadMedia; |
| var _uploadOptions; |
| var _downloadOptions = commons.DownloadOptions.Metadata; |
| var _body; |
| |
| if (parent == null) { |
| throw new core.ArgumentError("Parameter parent is required."); |
| } |
| if (pageSize != null) { |
| _queryParams["pageSize"] = ["${pageSize}"]; |
| } |
| if (pageToken != null) { |
| _queryParams["pageToken"] = [pageToken]; |
| } |
| if ($fields != null) { |
| _queryParams["fields"] = [$fields]; |
| } |
| |
| _url = |
| 'v1/' + commons.Escaper.ecapeVariableReserved('$parent') + '/customers'; |
| |
| var _response = _requester.request(_url, "GET", |
| body: _body, |
| queryParams: _queryParams, |
| uploadOptions: _uploadOptions, |
| uploadMedia: _uploadMedia, |
| downloadOptions: _downloadOptions); |
| return _response |
| .then((data) => new ListVendorCustomersResponse.fromJson(data)); |
| } |
| } |
| |
| /// Request message to claim a device on behalf of a customer. |
| class ClaimDeviceRequest { |
| /// Required. The ID of the customer for whom the device is being claimed. |
| core.String customerId; |
| |
| /// Required. Required. The device identifier of the device to claim. |
| DeviceIdentifier deviceIdentifier; |
| |
| /// Optional. The metadata to attach to the device. |
| DeviceMetadata deviceMetadata; |
| |
| /// Required. The section type of the device's provisioning record. |
| /// Possible string values are: |
| /// - "SECTION_TYPE_UNSPECIFIED" : Unspecified section type. |
| /// - "SECTION_TYPE_SIM_LOCK" : SIM-lock section type. |
| /// - "SECTION_TYPE_ZERO_TOUCH" : Zero-touch enrollment section type. |
| core.String sectionType; |
| |
| ClaimDeviceRequest(); |
| |
| ClaimDeviceRequest.fromJson(core.Map _json) { |
| if (_json.containsKey("customerId")) { |
| customerId = _json["customerId"]; |
| } |
| if (_json.containsKey("deviceIdentifier")) { |
| deviceIdentifier = |
| new DeviceIdentifier.fromJson(_json["deviceIdentifier"]); |
| } |
| if (_json.containsKey("deviceMetadata")) { |
| deviceMetadata = new DeviceMetadata.fromJson(_json["deviceMetadata"]); |
| } |
| if (_json.containsKey("sectionType")) { |
| sectionType = _json["sectionType"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (customerId != null) { |
| _json["customerId"] = customerId; |
| } |
| if (deviceIdentifier != null) { |
| _json["deviceIdentifier"] = (deviceIdentifier).toJson(); |
| } |
| if (deviceMetadata != null) { |
| _json["deviceMetadata"] = (deviceMetadata).toJson(); |
| } |
| if (sectionType != null) { |
| _json["sectionType"] = sectionType; |
| } |
| return _json; |
| } |
| } |
| |
| /// Response message containing device id of the claim. |
| class ClaimDeviceResponse { |
| /// The device ID of the claimed device. |
| core.String deviceId; |
| |
| /// The resource name of the device in the format |
| /// `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. |
| core.String deviceName; |
| |
| ClaimDeviceResponse(); |
| |
| ClaimDeviceResponse.fromJson(core.Map _json) { |
| if (_json.containsKey("deviceId")) { |
| deviceId = _json["deviceId"]; |
| } |
| if (_json.containsKey("deviceName")) { |
| deviceName = _json["deviceName"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (deviceId != null) { |
| _json["deviceId"] = deviceId; |
| } |
| if (deviceName != null) { |
| _json["deviceName"] = deviceName; |
| } |
| return _json; |
| } |
| } |
| |
| /// Request to claim devices asynchronously in batch. Claiming a device adds the |
| /// device to zero-touch enrollment and shows the device in the customer's view |
| /// of the portal. |
| class ClaimDevicesRequest { |
| /// Required. A list of device claims. |
| core.List<PartnerClaim> claims; |
| |
| ClaimDevicesRequest(); |
| |
| ClaimDevicesRequest.fromJson(core.Map _json) { |
| if (_json.containsKey("claims")) { |
| claims = (_json["claims"] as core.List) |
| .map<PartnerClaim>((value) => new PartnerClaim.fromJson(value)) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (claims != null) { |
| _json["claims"] = claims.map((value) => (value).toJson()).toList(); |
| } |
| return _json; |
| } |
| } |
| |
| /// A reseller, vendor, or customer in the zero-touch reseller and customer |
| /// APIs. |
| class Company { |
| /// Optional. Email address of customer's users in the admin role. Each email |
| /// address must be associated with a Google Account. |
| core.List<core.String> adminEmails; |
| |
| /// Output only. The ID of the company. Assigned by the server. |
| core.String companyId; |
| |
| /// Required. The name of the company. For example _XYZ Corp_. Displayed to |
| /// the company's employees in the zero-touch enrollment portal. |
| core.String companyName; |
| |
| /// Output only. The API resource name of the company. The resource name is |
| /// one of the following formats: * |
| /// `partners/[PARTNER_ID]/customers/[CUSTOMER_ID]` * |
| /// `partners/[PARTNER_ID]/vendors/[VENDOR_ID]` * |
| /// `partners/[PARTNER_ID]/vendors/[VENDOR_ID]/customers/[CUSTOMER_ID]` |
| /// Assigned by the server. |
| core.String name; |
| |
| /// Required. Input only. Email address of customer's users in the owner role. |
| /// At least one `owner_email` is required. Each email address must be |
| /// associated with a Google Account. Owners share the same access as admins |
| /// but can also add, delete, and edit your organization's portal users. |
| core.List<core.String> ownerEmails; |
| |
| /// Output only. Whether any user from the company has accepted the latest |
| /// Terms of Service (ToS). See TermsStatus. |
| /// Possible string values are: |
| /// - "TERMS_STATUS_UNSPECIFIED" : Default value. This value should never be |
| /// set if the enum is present. |
| /// - "TERMS_STATUS_NOT_ACCEPTED" : None of the company's users have accepted |
| /// the ToS. |
| /// - "TERMS_STATUS_ACCEPTED" : One (or more) of the company's users has |
| /// accepted the ToS. |
| /// - "TERMS_STATUS_STALE" : None of the company's users has accepted the |
| /// current ToS but at least one user accepted a previous ToS. |
| core.String termsStatus; |
| |
| Company(); |
| |
| Company.fromJson(core.Map _json) { |
| if (_json.containsKey("adminEmails")) { |
| adminEmails = (_json["adminEmails"] as core.List).cast<core.String>(); |
| } |
| if (_json.containsKey("companyId")) { |
| companyId = _json["companyId"]; |
| } |
| if (_json.containsKey("companyName")) { |
| companyName = _json["companyName"]; |
| } |
| if (_json.containsKey("name")) { |
| name = _json["name"]; |
| } |
| if (_json.containsKey("ownerEmails")) { |
| ownerEmails = (_json["ownerEmails"] as core.List).cast<core.String>(); |
| } |
| if (_json.containsKey("termsStatus")) { |
| termsStatus = _json["termsStatus"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (adminEmails != null) { |
| _json["adminEmails"] = adminEmails; |
| } |
| if (companyId != null) { |
| _json["companyId"] = companyId; |
| } |
| if (companyName != null) { |
| _json["companyName"] = companyName; |
| } |
| if (name != null) { |
| _json["name"] = name; |
| } |
| if (ownerEmails != null) { |
| _json["ownerEmails"] = ownerEmails; |
| } |
| if (termsStatus != null) { |
| _json["termsStatus"] = termsStatus; |
| } |
| return _json; |
| } |
| } |
| |
| /// A configuration collects the provisioning options for Android devices. Each |
| /// configuration combines the following: * The EMM device policy controller |
| /// (DPC) installed on the devices. * EMM policies enforced on the devices. * |
| /// Metadata displayed on the device to help users during setup. Customers can |
| /// add as many configurations as they need. However, zero-touch enrollment |
| /// works best when a customer sets a default configuration that's applied to |
| /// any new devices the organization purchases. |
| class Configuration { |
| /// Required. The name of the organization. Zero-touch enrollment shows this |
| /// organization name to device users during device provisioning. |
| core.String companyName; |
| |
| /// Output only. The ID of the configuration. Assigned by the server. |
| core.String configurationId; |
| |
| /// Required. A short name that describes the configuration's purpose. For |
| /// example, _Sales team_ or _Temporary employees_. The zero-touch enrollment |
| /// portal displays this name to IT admins. |
| core.String configurationName; |
| |
| /// Required. The email address that device users can contact to get help. |
| /// Zero-touch enrollment shows this email address to device users before |
| /// device provisioning. The value is validated on input. |
| core.String contactEmail; |
| |
| /// Required. The telephone number that device users can call, using another |
| /// device, to get help. Zero-touch enrollment shows this number to device |
| /// users before device provisioning. Accepts numerals, spaces, the plus sign, |
| /// hyphens, and parentheses. |
| core.String contactPhone; |
| |
| /// A message, containing one or two sentences, to help device users get help |
| /// or give them more details about what’s happening to their device. |
| /// Zero-touch enrollment shows this message before the device is provisioned. |
| core.String customMessage; |
| |
| /// The JSON-formatted EMM provisioning extras that are passed to the DPC. |
| core.String dpcExtras; |
| |
| /// Required. The resource name of the selected DPC (device policy controller) |
| /// in the format `customers/[CUSTOMER_ID]/dpcs / * `. To list the supported |
| /// DPCs, call `customers.dpcs.list`. |
| core.String dpcResourcePath; |
| |
| /// Required. Whether this is the default configuration that zero-touch |
| /// enrollment applies to any new devices the organization purchases in the |
| /// future. Only one customer configuration can be the default. Setting this |
| /// value to `true`, changes the previous default configuration's `isDefault` |
| /// value to `false`. |
| core.bool isDefault; |
| |
| /// Output only. The API resource name in the format |
| /// `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. Assigned by |
| /// the server. |
| core.String name; |
| |
| Configuration(); |
| |
| Configuration.fromJson(core.Map _json) { |
| if (_json.containsKey("companyName")) { |
| companyName = _json["companyName"]; |
| } |
| if (_json.containsKey("configurationId")) { |
| configurationId = _json["configurationId"]; |
| } |
| if (_json.containsKey("configurationName")) { |
| configurationName = _json["configurationName"]; |
| } |
| if (_json.containsKey("contactEmail")) { |
| contactEmail = _json["contactEmail"]; |
| } |
| if (_json.containsKey("contactPhone")) { |
| contactPhone = _json["contactPhone"]; |
| } |
| if (_json.containsKey("customMessage")) { |
| customMessage = _json["customMessage"]; |
| } |
| if (_json.containsKey("dpcExtras")) { |
| dpcExtras = _json["dpcExtras"]; |
| } |
| if (_json.containsKey("dpcResourcePath")) { |
| dpcResourcePath = _json["dpcResourcePath"]; |
| } |
| if (_json.containsKey("isDefault")) { |
| isDefault = _json["isDefault"]; |
| } |
| if (_json.containsKey("name")) { |
| name = _json["name"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (companyName != null) { |
| _json["companyName"] = companyName; |
| } |
| if (configurationId != null) { |
| _json["configurationId"] = configurationId; |
| } |
| if (configurationName != null) { |
| _json["configurationName"] = configurationName; |
| } |
| if (contactEmail != null) { |
| _json["contactEmail"] = contactEmail; |
| } |
| if (contactPhone != null) { |
| _json["contactPhone"] = contactPhone; |
| } |
| if (customMessage != null) { |
| _json["customMessage"] = customMessage; |
| } |
| if (dpcExtras != null) { |
| _json["dpcExtras"] = dpcExtras; |
| } |
| if (dpcResourcePath != null) { |
| _json["dpcResourcePath"] = dpcResourcePath; |
| } |
| if (isDefault != null) { |
| _json["isDefault"] = isDefault; |
| } |
| if (name != null) { |
| _json["name"] = name; |
| } |
| return _json; |
| } |
| } |
| |
| /// Request message to create a customer. |
| class CreateCustomerRequest { |
| /// Required. The company data to populate the new customer. Must contain a |
| /// value for `companyName` and at least one `owner_email` that's associated |
| /// with a Google Account. The values for `companyId` and `name` must be |
| /// empty. |
| Company customer; |
| |
| CreateCustomerRequest(); |
| |
| CreateCustomerRequest.fromJson(core.Map _json) { |
| if (_json.containsKey("customer")) { |
| customer = new Company.fromJson(_json["customer"]); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (customer != null) { |
| _json["customer"] = (customer).toJson(); |
| } |
| return _json; |
| } |
| } |
| |
| /// Request message for customer to assign a configuration to device. |
| class CustomerApplyConfigurationRequest { |
| /// Required. The configuration applied to the device in the format |
| /// `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. |
| core.String configuration; |
| |
| /// Required. The device the configuration is applied to. |
| DeviceReference device; |
| |
| CustomerApplyConfigurationRequest(); |
| |
| CustomerApplyConfigurationRequest.fromJson(core.Map _json) { |
| if (_json.containsKey("configuration")) { |
| configuration = _json["configuration"]; |
| } |
| if (_json.containsKey("device")) { |
| device = new DeviceReference.fromJson(_json["device"]); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (configuration != null) { |
| _json["configuration"] = configuration; |
| } |
| if (device != null) { |
| _json["device"] = (device).toJson(); |
| } |
| return _json; |
| } |
| } |
| |
| /// Response message of customer's listing configuration. |
| class CustomerListConfigurationsResponse { |
| /// The configurations. |
| core.List<Configuration> configurations; |
| |
| CustomerListConfigurationsResponse(); |
| |
| CustomerListConfigurationsResponse.fromJson(core.Map _json) { |
| if (_json.containsKey("configurations")) { |
| configurations = (_json["configurations"] as core.List) |
| .map<Configuration>((value) => new Configuration.fromJson(value)) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (configurations != null) { |
| _json["configurations"] = |
| configurations.map((value) => (value).toJson()).toList(); |
| } |
| return _json; |
| } |
| } |
| |
| /// Response message for listing my customers. |
| class CustomerListCustomersResponse { |
| /// The customer accounts the calling user is a member of. |
| core.List<Company> customers; |
| |
| /// A token used to access the next page of results. Omitted if no further |
| /// results are available. |
| core.String nextPageToken; |
| |
| CustomerListCustomersResponse(); |
| |
| CustomerListCustomersResponse.fromJson(core.Map _json) { |
| if (_json.containsKey("customers")) { |
| customers = (_json["customers"] as core.List) |
| .map<Company>((value) => new Company.fromJson(value)) |
| .toList(); |
| } |
| if (_json.containsKey("nextPageToken")) { |
| nextPageToken = _json["nextPageToken"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (customers != null) { |
| _json["customers"] = customers.map((value) => (value).toJson()).toList(); |
| } |
| if (nextPageToken != null) { |
| _json["nextPageToken"] = nextPageToken; |
| } |
| return _json; |
| } |
| } |
| |
| /// Response message of customer's liting devices. |
| class CustomerListDevicesResponse { |
| /// The customer's devices. |
| core.List<Device> devices; |
| |
| /// A token used to access the next page of results. Omitted if no further |
| /// results are available. |
| core.String nextPageToken; |
| |
| CustomerListDevicesResponse(); |
| |
| CustomerListDevicesResponse.fromJson(core.Map _json) { |
| if (_json.containsKey("devices")) { |
| devices = (_json["devices"] as core.List) |
| .map<Device>((value) => new Device.fromJson(value)) |
| .toList(); |
| } |
| if (_json.containsKey("nextPageToken")) { |
| nextPageToken = _json["nextPageToken"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (devices != null) { |
| _json["devices"] = devices.map((value) => (value).toJson()).toList(); |
| } |
| if (nextPageToken != null) { |
| _json["nextPageToken"] = nextPageToken; |
| } |
| return _json; |
| } |
| } |
| |
| /// Response message of customer's listing DPCs. |
| class CustomerListDpcsResponse { |
| /// The list of DPCs available to the customer that support zero-touch |
| /// enrollment. |
| core.List<Dpc> dpcs; |
| |
| CustomerListDpcsResponse(); |
| |
| CustomerListDpcsResponse.fromJson(core.Map _json) { |
| if (_json.containsKey("dpcs")) { |
| dpcs = (_json["dpcs"] as core.List) |
| .map<Dpc>((value) => new Dpc.fromJson(value)) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (dpcs != null) { |
| _json["dpcs"] = dpcs.map((value) => (value).toJson()).toList(); |
| } |
| return _json; |
| } |
| } |
| |
| /// Request message for customer to remove the configuration from device. |
| class CustomerRemoveConfigurationRequest { |
| /// Required. The device to remove the configuration from. |
| DeviceReference device; |
| |
| CustomerRemoveConfigurationRequest(); |
| |
| CustomerRemoveConfigurationRequest.fromJson(core.Map _json) { |
| if (_json.containsKey("device")) { |
| device = new DeviceReference.fromJson(_json["device"]); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (device != null) { |
| _json["device"] = (device).toJson(); |
| } |
| return _json; |
| } |
| } |
| |
| /// Request message for customer to unclaim a device. |
| class CustomerUnclaimDeviceRequest { |
| /// Required. The device to unclaim. |
| DeviceReference device; |
| |
| CustomerUnclaimDeviceRequest(); |
| |
| CustomerUnclaimDeviceRequest.fromJson(core.Map _json) { |
| if (_json.containsKey("device")) { |
| device = new DeviceReference.fromJson(_json["device"]); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (device != null) { |
| _json["device"] = (device).toJson(); |
| } |
| return _json; |
| } |
| } |
| |
| /// An Android device registered for zero-touch enrollment. |
| class Device { |
| /// Output only. The provisioning claims for a device. Devices claimed for |
| /// zero-touch enrollment have a claim with the type |
| /// `SECTION_TYPE_ZERO_TOUCH`. Call `partners.devices.unclaim` or |
| /// `partners.devices.unclaimAsync` to remove the device from zero-touch |
| /// enrollment. |
| core.List<DeviceClaim> claims; |
| |
| /// Not available to resellers. |
| core.String configuration; |
| |
| /// Output only. The ID of the device. Assigned by the server. |
| core.String deviceId; |
| |
| /// The hardware IDs that identify a manufactured device. To learn more, read |
| /// [Identifiers](https://developers.google.com/zero-touch/guides/identifiers). |
| DeviceIdentifier deviceIdentifier; |
| |
| /// The metadata attached to the device. Structured as key-value pairs. To |
| /// learn more, read [Device |
| /// metadata](https://developers.google.com/zero-touch/guides/metadata). |
| DeviceMetadata deviceMetadata; |
| |
| /// Output only. The API resource name in the format |
| /// `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. Assigned by the server. |
| core.String name; |
| |
| Device(); |
| |
| Device.fromJson(core.Map _json) { |
| if (_json.containsKey("claims")) { |
| claims = (_json["claims"] as core.List) |
| .map<DeviceClaim>((value) => new DeviceClaim.fromJson(value)) |
| .toList(); |
| } |
| if (_json.containsKey("configuration")) { |
| configuration = _json["configuration"]; |
| } |
| if (_json.containsKey("deviceId")) { |
| deviceId = _json["deviceId"]; |
| } |
| if (_json.containsKey("deviceIdentifier")) { |
| deviceIdentifier = |
| new DeviceIdentifier.fromJson(_json["deviceIdentifier"]); |
| } |
| if (_json.containsKey("deviceMetadata")) { |
| deviceMetadata = new DeviceMetadata.fromJson(_json["deviceMetadata"]); |
| } |
| if (_json.containsKey("name")) { |
| name = _json["name"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (claims != null) { |
| _json["claims"] = claims.map((value) => (value).toJson()).toList(); |
| } |
| if (configuration != null) { |
| _json["configuration"] = configuration; |
| } |
| if (deviceId != null) { |
| _json["deviceId"] = deviceId; |
| } |
| if (deviceIdentifier != null) { |
| _json["deviceIdentifier"] = (deviceIdentifier).toJson(); |
| } |
| if (deviceMetadata != null) { |
| _json["deviceMetadata"] = (deviceMetadata).toJson(); |
| } |
| if (name != null) { |
| _json["name"] = name; |
| } |
| return _json; |
| } |
| } |
| |
| /// A record of a device claimed by a reseller for a customer. Devices claimed |
| /// for zero-touch enrollment have a claim with the type |
| /// `SECTION_TYPE_ZERO_TOUCH`. To learn more, read [Claim devices for |
| /// customers](/zero-touch/guides/how-it-works#claim). |
| class DeviceClaim { |
| /// The ID of the Customer that purchased the device. |
| core.String ownerCompanyId; |
| |
| /// The ID of the reseller that claimed the device. |
| core.String resellerId; |
| |
| /// Output only. The type of claim made on the device. |
| /// Possible string values are: |
| /// - "SECTION_TYPE_UNSPECIFIED" : Unspecified section type. |
| /// - "SECTION_TYPE_SIM_LOCK" : SIM-lock section type. |
| /// - "SECTION_TYPE_ZERO_TOUCH" : Zero-touch enrollment section type. |
| core.String sectionType; |
| |
| /// The timestamp when the device will exit ‘vacation mode’. This value is |
| /// present iff the device is in 'vacation mode'. |
| core.String vacationModeExpireTime; |
| |
| /// The timestamp when the device was put into ‘vacation mode’. This value is |
| /// present iff the device is in 'vacation mode'. |
| core.String vacationModeStartTime; |
| |
| DeviceClaim(); |
| |
| DeviceClaim.fromJson(core.Map _json) { |
| if (_json.containsKey("ownerCompanyId")) { |
| ownerCompanyId = _json["ownerCompanyId"]; |
| } |
| if (_json.containsKey("resellerId")) { |
| resellerId = _json["resellerId"]; |
| } |
| if (_json.containsKey("sectionType")) { |
| sectionType = _json["sectionType"]; |
| } |
| if (_json.containsKey("vacationModeExpireTime")) { |
| vacationModeExpireTime = _json["vacationModeExpireTime"]; |
| } |
| if (_json.containsKey("vacationModeStartTime")) { |
| vacationModeStartTime = _json["vacationModeStartTime"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (ownerCompanyId != null) { |
| _json["ownerCompanyId"] = ownerCompanyId; |
| } |
| if (resellerId != null) { |
| _json["resellerId"] = resellerId; |
| } |
| if (sectionType != null) { |
| _json["sectionType"] = sectionType; |
| } |
| if (vacationModeExpireTime != null) { |
| _json["vacationModeExpireTime"] = vacationModeExpireTime; |
| } |
| if (vacationModeStartTime != null) { |
| _json["vacationModeStartTime"] = vacationModeStartTime; |
| } |
| return _json; |
| } |
| } |
| |
| /// Encapsulates hardware and product IDs to identify a manufactured device. To |
| /// understand requirements on identifier sets, read |
| /// [Identifiers](https://developers.google.com/zero-touch/guides/identifiers). |
| class DeviceIdentifier { |
| /// The device’s IMEI number. Validated on input. |
| core.String imei; |
| |
| /// The device manufacturer’s name. Matches the device's built-in value |
| /// returned from `android.os.Build.MANUFACTURER`. Allowed values are listed |
| /// in |
| /// [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names). |
| core.String manufacturer; |
| |
| /// The device’s MEID number. |
| core.String meid; |
| |
| /// The device model's name. Matches the device's built-in value returned from |
| /// `android.os.Build.MODEL`. Allowed values are listed in |
| /// [models](/zero-touch/resources/manufacturer-names#model-names). |
| core.String model; |
| |
| /// The manufacturer's serial number for the device. This value might not be |
| /// unique across different device models. |
| core.String serialNumber; |
| |
| DeviceIdentifier(); |
| |
| DeviceIdentifier.fromJson(core.Map _json) { |
| if (_json.containsKey("imei")) { |
| imei = _json["imei"]; |
| } |
| if (_json.containsKey("manufacturer")) { |
| manufacturer = _json["manufacturer"]; |
| } |
| if (_json.containsKey("meid")) { |
| meid = _json["meid"]; |
| } |
| if (_json.containsKey("model")) { |
| model = _json["model"]; |
| } |
| if (_json.containsKey("serialNumber")) { |
| serialNumber = _json["serialNumber"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (imei != null) { |
| _json["imei"] = imei; |
| } |
| if (manufacturer != null) { |
| _json["manufacturer"] = manufacturer; |
| } |
| if (meid != null) { |
| _json["meid"] = meid; |
| } |
| if (model != null) { |
| _json["model"] = model; |
| } |
| if (serialNumber != null) { |
| _json["serialNumber"] = serialNumber; |
| } |
| return _json; |
| } |
| } |
| |
| /// Metadata entries that can be attached to a `Device`. To learn more, read |
| /// [Device metadata](https://developers.google.com/zero-touch/guides/metadata). |
| class DeviceMetadata { |
| /// Metadata entries recorded as key-value pairs. |
| core.Map<core.String, core.String> entries; |
| |
| DeviceMetadata(); |
| |
| DeviceMetadata.fromJson(core.Map _json) { |
| if (_json.containsKey("entries")) { |
| entries = (_json["entries"] as core.Map).cast<core.String, core.String>(); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (entries != null) { |
| _json["entries"] = entries; |
| } |
| return _json; |
| } |
| } |
| |
| /// A `DeviceReference` is an API abstraction that lets you supply a _device_ |
| /// argument to a method using one of the following identifier types: * A |
| /// numeric API resource ID. * Real-world hardware IDs, such as IMEI number, |
| /// belonging to the manufactured device. Methods that operate on devices take a |
| /// `DeviceReference` as a parameter type because it's more flexible for the |
| /// caller. To learn more about device identifiers, read |
| /// [Identifiers](https://developers.google.com/zero-touch/guides/identifiers). |
| class DeviceReference { |
| /// The ID of the device. |
| core.String deviceId; |
| |
| /// The hardware IDs of the device. |
| DeviceIdentifier deviceIdentifier; |
| |
| DeviceReference(); |
| |
| DeviceReference.fromJson(core.Map _json) { |
| if (_json.containsKey("deviceId")) { |
| deviceId = _json["deviceId"]; |
| } |
| if (_json.containsKey("deviceIdentifier")) { |
| deviceIdentifier = |
| new DeviceIdentifier.fromJson(_json["deviceIdentifier"]); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (deviceId != null) { |
| _json["deviceId"] = deviceId; |
| } |
| if (deviceIdentifier != null) { |
| _json["deviceIdentifier"] = (deviceIdentifier).toJson(); |
| } |
| return _json; |
| } |
| } |
| |
| /// Tracks the status of a long-running operation to asynchronously update a |
| /// batch of reseller metadata attached to devices. To learn more, read |
| /// [Long‑running batch operations](/zero-touch/guides/how-it-works#operations). |
| class DevicesLongRunningOperationMetadata { |
| /// The number of metadata updates in the operation. This might be different |
| /// from the number of updates in the request if the API can't parse some of |
| /// the updates. |
| core.int devicesCount; |
| |
| /// The processing status of the operation. |
| /// Possible string values are: |
| /// - "BATCH_PROCESS_STATUS_UNSPECIFIED" : Invalid code. Shouldn't be used. |
| /// - "BATCH_PROCESS_PENDING" : Pending. |
| /// - "BATCH_PROCESS_IN_PROGRESS" : In progress. |
| /// - "BATCH_PROCESS_PROCESSED" : Processed. This doesn't mean all items were |
| /// processed successfully, you should check the `response` field for the |
| /// result of every item. |
| core.String processingStatus; |
| |
| /// The processing progress of the operation. Measured as a number from 0 to |
| /// 100. A value of 10O doesnt always mean the operation completed—check for |
| /// the inclusion of a `done` field. |
| core.int progress; |
| |
| DevicesLongRunningOperationMetadata(); |
| |
| DevicesLongRunningOperationMetadata.fromJson(core.Map _json) { |
| if (_json.containsKey("devicesCount")) { |
| devicesCount = _json["devicesCount"]; |
| } |
| if (_json.containsKey("processingStatus")) { |
| processingStatus = _json["processingStatus"]; |
| } |
| if (_json.containsKey("progress")) { |
| progress = _json["progress"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (devicesCount != null) { |
| _json["devicesCount"] = devicesCount; |
| } |
| if (processingStatus != null) { |
| _json["processingStatus"] = processingStatus; |
| } |
| if (progress != null) { |
| _json["progress"] = progress; |
| } |
| return _json; |
| } |
| } |
| |
| /// Tracks the status of a long-running operation to claim, unclaim, or attach |
| /// metadata to devices. To learn more, read [Long‑running batch |
| /// operations](/zero-touch/guides/how-it-works#operations). |
| class DevicesLongRunningOperationResponse { |
| /// The processing status for each device in the operation. One |
| /// `PerDeviceStatus` per device. The list order matches the items in the |
| /// original request. |
| core.List<OperationPerDevice> perDeviceStatus; |
| |
| /// A summary of how many items in the operation the server processed |
| /// successfully. Updated as the operation progresses. |
| core.int successCount; |
| |
| DevicesLongRunningOperationResponse(); |
| |
| DevicesLongRunningOperationResponse.fromJson(core.Map _json) { |
| if (_json.containsKey("perDeviceStatus")) { |
| perDeviceStatus = (_json["perDeviceStatus"] as core.List) |
| .map<OperationPerDevice>( |
| (value) => new OperationPerDevice.fromJson(value)) |
| .toList(); |
| } |
| if (_json.containsKey("successCount")) { |
| successCount = _json["successCount"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (perDeviceStatus != null) { |
| _json["perDeviceStatus"] = |
| perDeviceStatus.map((value) => (value).toJson()).toList(); |
| } |
| if (successCount != null) { |
| _json["successCount"] = successCount; |
| } |
| return _json; |
| } |
| } |
| |
| /// An EMM's DPC ([device policy |
| /// controller](http://developer.android.com/work/dpc/build-dpc.html)). |
| /// Zero-touch enrollment installs a DPC (listed in the `Configuration`) on a |
| /// device to maintain the customer's mobile policies. All the DPCs listed by |
| /// the API support zero-touch enrollment and are available in Google Play. |
| class Dpc { |
| /// Output only. The title of the DPC app in Google Play. For example, _Google |
| /// Apps Device Policy_. Useful in an application's user interface. |
| core.String dpcName; |
| |
| /// Output only. The API resource name in the format |
| /// `customers/[CUSTOMER_ID]/dpcs/[DPC_ID]`. Assigned by the server. To |
| /// maintain a reference to a DPC across customer accounts, persist and match |
| /// the last path component (`DPC_ID`). |
| core.String name; |
| |
| /// Output only. The DPC's Android application ID that looks like a Java |
| /// package name. Zero-touch enrollment installs the DPC app onto a device |
| /// using this identifier. |
| core.String packageName; |
| |
| Dpc(); |
| |
| Dpc.fromJson(core.Map _json) { |
| if (_json.containsKey("dpcName")) { |
| dpcName = _json["dpcName"]; |
| } |
| if (_json.containsKey("name")) { |
| name = _json["name"]; |
| } |
| if (_json.containsKey("packageName")) { |
| packageName = _json["packageName"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (dpcName != null) { |
| _json["dpcName"] = dpcName; |
| } |
| if (name != null) { |
| _json["name"] = name; |
| } |
| if (packageName != null) { |
| _json["packageName"] = packageName; |
| } |
| return _json; |
| } |
| } |
| |
| /// A generic empty message that you can re-use to avoid defining duplicated |
| /// empty messages in your APIs. A typical example is to use it as the request |
| /// or the response type of an API method. For instance: service Foo { rpc |
| /// Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON |
| /// representation for `Empty` is empty JSON object `{}`. |
| class Empty { |
| Empty(); |
| |
| Empty.fromJson(core.Map _json) {} |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| return _json; |
| } |
| } |
| |
| /// Request to find devices. |
| class FindDevicesByDeviceIdentifierRequest { |
| /// Required. Required. The device identifier to search for. |
| DeviceIdentifier deviceIdentifier; |
| |
| /// Required. The maximum number of devices to show in a page of results. Must |
| /// be between 1 and 100 inclusive. |
| core.String limit; |
| |
| /// A token specifying which result page to return. |
| core.String pageToken; |
| |
| FindDevicesByDeviceIdentifierRequest(); |
| |
| FindDevicesByDeviceIdentifierRequest.fromJson(core.Map _json) { |
| if (_json.containsKey("deviceIdentifier")) { |
| deviceIdentifier = |
| new DeviceIdentifier.fromJson(_json["deviceIdentifier"]); |
| } |
| if (_json.containsKey("limit")) { |
| limit = _json["limit"]; |
| } |
| if (_json.containsKey("pageToken")) { |
| pageToken = _json["pageToken"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (deviceIdentifier != null) { |
| _json["deviceIdentifier"] = (deviceIdentifier).toJson(); |
| } |
| if (limit != null) { |
| _json["limit"] = limit; |
| } |
| if (pageToken != null) { |
| _json["pageToken"] = pageToken; |
| } |
| return _json; |
| } |
| } |
| |
| /// Response containing found devices. |
| class FindDevicesByDeviceIdentifierResponse { |
| /// Found devices. |
| core.List<Device> devices; |
| |
| /// A token used to access the next page of results. Omitted if no further |
| /// results are available. |
| core.String nextPageToken; |
| |
| /// The total count of items in the list irrespective of pagination. |
| core.int totalSize; |
| |
| FindDevicesByDeviceIdentifierResponse(); |
| |
| FindDevicesByDeviceIdentifierResponse.fromJson(core.Map _json) { |
| if (_json.containsKey("devices")) { |
| devices = (_json["devices"] as core.List) |
| .map<Device>((value) => new Device.fromJson(value)) |
| .toList(); |
| } |
| if (_json.containsKey("nextPageToken")) { |
| nextPageToken = _json["nextPageToken"]; |
| } |
| if (_json.containsKey("totalSize")) { |
| totalSize = _json["totalSize"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (devices != null) { |
| _json["devices"] = devices.map((value) => (value).toJson()).toList(); |
| } |
| if (nextPageToken != null) { |
| _json["nextPageToken"] = nextPageToken; |
| } |
| if (totalSize != null) { |
| _json["totalSize"] = totalSize; |
| } |
| return _json; |
| } |
| } |
| |
| /// Request to find devices by customers. |
| class FindDevicesByOwnerRequest { |
| /// Required. The list of customer IDs to search for. |
| core.List<core.String> customerId; |
| |
| /// Required. The maximum number of devices to show in a page of results. Must |
| /// be between 1 and 100 inclusive. |
| core.String limit; |
| |
| /// A token specifying which result page to return. |
| core.String pageToken; |
| |
| /// Required. The section type of the device's provisioning record. |
| /// Possible string values are: |
| /// - "SECTION_TYPE_UNSPECIFIED" : Unspecified section type. |
| /// - "SECTION_TYPE_SIM_LOCK" : SIM-lock section type. |
| /// - "SECTION_TYPE_ZERO_TOUCH" : Zero-touch enrollment section type. |
| core.String sectionType; |
| |
| FindDevicesByOwnerRequest(); |
| |
| FindDevicesByOwnerRequest.fromJson(core.Map _json) { |
| if (_json.containsKey("customerId")) { |
| customerId = (_json["customerId"] as core.List).cast<core.String>(); |
| } |
| if (_json.containsKey("limit")) { |
| limit = _json["limit"]; |
| } |
| if (_json.containsKey("pageToken")) { |
| pageToken = _json["pageToken"]; |
| } |
| if (_json.containsKey("sectionType")) { |
| sectionType = _json["sectionType"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (customerId != null) { |
| _json["customerId"] = customerId; |
| } |
| if (limit != null) { |
| _json["limit"] = limit; |
| } |
| if (pageToken != null) { |
| _json["pageToken"] = pageToken; |
| } |
| if (sectionType != null) { |
| _json["sectionType"] = sectionType; |
| } |
| return _json; |
| } |
| } |
| |
| /// Response containing found devices. |
| class FindDevicesByOwnerResponse { |
| /// The customer's devices. |
| core.List<Device> devices; |
| |
| /// A token used to access the next page of results. Omitted if no further |
| /// results are available. |
| core.String nextPageToken; |
| |
| /// The total count of items in the list irrespective of pagination. |
| core.int totalSize; |
| |
| FindDevicesByOwnerResponse(); |
| |
| FindDevicesByOwnerResponse.fromJson(core.Map _json) { |
| if (_json.containsKey("devices")) { |
| devices = (_json["devices"] as core.List) |
| .map<Device>((value) => new Device.fromJson(value)) |
| .toList(); |
| } |
| if (_json.containsKey("nextPageToken")) { |
| nextPageToken = _json["nextPageToken"]; |
| } |
| if (_json.containsKey("totalSize")) { |
| totalSize = _json["totalSize"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (devices != null) { |
| _json["devices"] = devices.map((value) => (value).toJson()).toList(); |
| } |
| if (nextPageToken != null) { |
| _json["nextPageToken"] = nextPageToken; |
| } |
| if (totalSize != null) { |
| _json["totalSize"] = totalSize; |
| } |
| return _json; |
| } |
| } |
| |
| /// Response message of all customers related to this partner. |
| class ListCustomersResponse { |
| /// List of customers related to this reseller partner. |
| core.List<Company> customers; |
| |
| /// A token to retrieve the next page of results. Omitted if no further |
| /// results are available. |
| core.String nextPageToken; |
| |
| /// The total count of items in the list irrespective of pagination. |
| core.int totalSize; |
| |
| ListCustomersResponse(); |
| |
| ListCustomersResponse.fromJson(core.Map _json) { |
| if (_json.containsKey("customers")) { |
| customers = (_json["customers"] as core.List) |
| .map<Company>((value) => new Company.fromJson(value)) |
| .toList(); |
| } |
| if (_json.containsKey("nextPageToken")) { |
| nextPageToken = _json["nextPageToken"]; |
| } |
| if (_json.containsKey("totalSize")) { |
| totalSize = _json["totalSize"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (customers != null) { |
| _json["customers"] = customers.map((value) => (value).toJson()).toList(); |
| } |
| if (nextPageToken != null) { |
| _json["nextPageToken"] = nextPageToken; |
| } |
| if (totalSize != null) { |
| _json["totalSize"] = totalSize; |
| } |
| return _json; |
| } |
| } |
| |
| /// Response message to list customers of the vendor. |
| class ListVendorCustomersResponse { |
| /// List of customers of the vendor. |
| core.List<Company> customers; |
| |
| /// A token to retrieve the next page of results. Omitted if no further |
| /// results are available. |
| core.String nextPageToken; |
| |
| /// The total count of items in the list irrespective of pagination. |
| core.int totalSize; |
| |
| ListVendorCustomersResponse(); |
| |
| ListVendorCustomersResponse.fromJson(core.Map _json) { |
| if (_json.containsKey("customers")) { |
| customers = (_json["customers"] as core.List) |
| .map<Company>((value) => new Company.fromJson(value)) |
| .toList(); |
| } |
| if (_json.containsKey("nextPageToken")) { |
| nextPageToken = _json["nextPageToken"]; |
| } |
| if (_json.containsKey("totalSize")) { |
| totalSize = _json["totalSize"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (customers != null) { |
| _json["customers"] = customers.map((value) => (value).toJson()).toList(); |
| } |
| if (nextPageToken != null) { |
| _json["nextPageToken"] = nextPageToken; |
| } |
| if (totalSize != null) { |
| _json["totalSize"] = totalSize; |
| } |
| return _json; |
| } |
| } |
| |
| /// Response message to list vendors of the partner. |
| class ListVendorsResponse { |
| /// A token to retrieve the next page of results. Omitted if no further |
| /// results are available. |
| core.String nextPageToken; |
| |
| /// The total count of items in the list irrespective of pagination. |
| core.int totalSize; |
| |
| /// List of vendors of the reseller partner. Fields `name`, `companyId` and |
| /// `companyName` are populated to the Company object. |
| core.List<Company> vendors; |
| |
| ListVendorsResponse(); |
| |
| ListVendorsResponse.fromJson(core.Map _json) { |
| if (_json.containsKey("nextPageToken")) { |
| nextPageToken = _json["nextPageToken"]; |
| } |
| if (_json.containsKey("totalSize")) { |
| totalSize = _json["totalSize"]; |
| } |
| if (_json.containsKey("vendors")) { |
| vendors = (_json["vendors"] as core.List) |
| .map<Company>((value) => new Company.fromJson(value)) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (nextPageToken != null) { |
| _json["nextPageToken"] = nextPageToken; |
| } |
| if (totalSize != null) { |
| _json["totalSize"] = totalSize; |
| } |
| if (vendors != null) { |
| _json["vendors"] = vendors.map((value) => (value).toJson()).toList(); |
| } |
| return _json; |
| } |
| } |
| |
| /// 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; |
| |
| /// This field will always be not set if the operation is created by |
| /// `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. In this case, |
| /// error information for each device is set in |
| /// `response.perDeviceStatus.result.status`. |
| Status error; |
| |
| /// This field will contain a `DevicesLongRunningOperationMetadata` object if |
| /// the operation is created by `claimAsync`, `unclaimAsync`, or |
| /// `updateMetadataAsync`. |
| /// |
| /// 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; |
| |
| /// This field will contain a `DevicesLongRunningOperationResponse` object if |
| /// the operation is created by `claimAsync`, `unclaimAsync`, or |
| /// `updateMetadataAsync`. |
| /// |
| /// 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"]; |
| } |
| if (_json.containsKey("error")) { |
| error = new Status.fromJson(_json["error"]); |
| } |
| if (_json.containsKey("metadata")) { |
| metadata = |
| (_json["metadata"] as core.Map).cast<core.String, core.Object>(); |
| } |
| if (_json.containsKey("name")) { |
| name = _json["name"]; |
| } |
| if (_json.containsKey("response")) { |
| response = |
| (_json["response"] as core.Map).cast<core.String, core.Object>(); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (done != null) { |
| _json["done"] = done; |
| } |
| if (error != null) { |
| _json["error"] = (error).toJson(); |
| } |
| if (metadata != null) { |
| _json["metadata"] = metadata; |
| } |
| if (name != null) { |
| _json["name"] = name; |
| } |
| if (response != null) { |
| _json["response"] = response; |
| } |
| return _json; |
| } |
| } |
| |
| /// A task for each device in the operation. Corresponds to each device change |
| /// in the request. |
| class OperationPerDevice { |
| /// A copy of the original device-claim request received by the server. |
| PartnerClaim claim; |
| |
| /// The processing result for each device. |
| PerDeviceStatusInBatch result; |
| |
| /// A copy of the original device-unclaim request received by the server. |
| PartnerUnclaim unclaim; |
| |
| /// A copy of the original metadata-update request received by the server. |
| UpdateMetadataArguments updateMetadata; |
| |
| OperationPerDevice(); |
| |
| OperationPerDevice.fromJson(core.Map _json) { |
| if (_json.containsKey("claim")) { |
| claim = new PartnerClaim.fromJson(_json["claim"]); |
| } |
| if (_json.containsKey("result")) { |
| result = new PerDeviceStatusInBatch.fromJson(_json["result"]); |
| } |
| if (_json.containsKey("unclaim")) { |
| unclaim = new PartnerUnclaim.fromJson(_json["unclaim"]); |
| } |
| if (_json.containsKey("updateMetadata")) { |
| updateMetadata = |
| new UpdateMetadataArguments.fromJson(_json["updateMetadata"]); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (claim != null) { |
| _json["claim"] = (claim).toJson(); |
| } |
| if (result != null) { |
| _json["result"] = (result).toJson(); |
| } |
| if (unclaim != null) { |
| _json["unclaim"] = (unclaim).toJson(); |
| } |
| if (updateMetadata != null) { |
| _json["updateMetadata"] = (updateMetadata).toJson(); |
| } |
| return _json; |
| } |
| } |
| |
| /// Identifies one claim request. |
| class PartnerClaim { |
| /// Required. The ID of the customer for whom the device is being claimed. |
| core.String customerId; |
| |
| /// Required. Required. Device identifier of the device. |
| DeviceIdentifier deviceIdentifier; |
| |
| /// Required. The metadata to attach to the device at claim. |
| DeviceMetadata deviceMetadata; |
| |
| /// Required. The section type of the device's provisioning record. |
| /// Possible string values are: |
| /// - "SECTION_TYPE_UNSPECIFIED" : Unspecified section type. |
| /// - "SECTION_TYPE_SIM_LOCK" : SIM-lock section type. |
| /// - "SECTION_TYPE_ZERO_TOUCH" : Zero-touch enrollment section type. |
| core.String sectionType; |
| |
| PartnerClaim(); |
| |
| PartnerClaim.fromJson(core.Map _json) { |
| if (_json.containsKey("customerId")) { |
| customerId = _json["customerId"]; |
| } |
| if (_json.containsKey("deviceIdentifier")) { |
| deviceIdentifier = |
| new DeviceIdentifier.fromJson(_json["deviceIdentifier"]); |
| } |
| if (_json.containsKey("deviceMetadata")) { |
| deviceMetadata = new DeviceMetadata.fromJson(_json["deviceMetadata"]); |
| } |
| if (_json.containsKey("sectionType")) { |
| sectionType = _json["sectionType"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (customerId != null) { |
| _json["customerId"] = customerId; |
| } |
| if (deviceIdentifier != null) { |
| _json["deviceIdentifier"] = (deviceIdentifier).toJson(); |
| } |
| if (deviceMetadata != null) { |
| _json["deviceMetadata"] = (deviceMetadata).toJson(); |
| } |
| if (sectionType != null) { |
| _json["sectionType"] = sectionType; |
| } |
| return _json; |
| } |
| } |
| |
| /// Identifies one unclaim request. |
| class PartnerUnclaim { |
| /// Required. Device ID of the device. |
| core.String deviceId; |
| |
| /// Required. Device identifier of the device. |
| DeviceIdentifier deviceIdentifier; |
| |
| /// Required. The section type of the device's provisioning record. |
| /// Possible string values are: |
| /// - "SECTION_TYPE_UNSPECIFIED" : Unspecified section type. |
| /// - "SECTION_TYPE_SIM_LOCK" : SIM-lock section type. |
| /// - "SECTION_TYPE_ZERO_TOUCH" : Zero-touch enrollment section type. |
| core.String sectionType; |
| |
| /// Optional. The duration of the vacation unlock starting from when the |
| /// request is processed. (1 day is treated as 24 hours) |
| core.int vacationModeDays; |
| |
| /// Optional. The expiration time of the vacation unlock. |
| core.String vacationModeExpireTime; |
| |
| PartnerUnclaim(); |
| |
| PartnerUnclaim.fromJson(core.Map _json) { |
| if (_json.containsKey("deviceId")) { |
| deviceId = _json["deviceId"]; |
| } |
| if (_json.containsKey("deviceIdentifier")) { |
| deviceIdentifier = |
| new DeviceIdentifier.fromJson(_json["deviceIdentifier"]); |
| } |
| if (_json.containsKey("sectionType")) { |
| sectionType = _json["sectionType"]; |
| } |
| if (_json.containsKey("vacationModeDays")) { |
| vacationModeDays = _json["vacationModeDays"]; |
| } |
| if (_json.containsKey("vacationModeExpireTime")) { |
| vacationModeExpireTime = _json["vacationModeExpireTime"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (deviceId != null) { |
| _json["deviceId"] = deviceId; |
| } |
| if (deviceIdentifier != null) { |
| _json["deviceIdentifier"] = (deviceIdentifier).toJson(); |
| } |
| if (sectionType != null) { |
| _json["sectionType"] = sectionType; |
| } |
| if (vacationModeDays != null) { |
| _json["vacationModeDays"] = vacationModeDays; |
| } |
| if (vacationModeExpireTime != null) { |
| _json["vacationModeExpireTime"] = vacationModeExpireTime; |
| } |
| return _json; |
| } |
| } |
| |
| /// Captures the processing status for each device in the operation. |
| class PerDeviceStatusInBatch { |
| /// If processing succeeds, the device ID of the device. |
| core.String deviceId; |
| |
| /// If processing fails, the error type. |
| core.String errorIdentifier; |
| |
| /// If processing fails, a developer message explaining what went wrong. |
| core.String errorMessage; |
| |
| /// The result status of the device after processing. |
| /// Possible string values are: |
| /// - "SINGLE_DEVICE_STATUS_UNSPECIFIED" : Invalid code. Shouldn't be used. |
| /// - "SINGLE_DEVICE_STATUS_UNKNOWN_ERROR" : Unknown error. We don't expect |
| /// this error to occur here. |
| /// - "SINGLE_DEVICE_STATUS_OTHER_ERROR" : Other error. We know/expect this |
| /// error, but there's no defined error code for the error. |
| /// - "SINGLE_DEVICE_STATUS_SUCCESS" : Success. |
| /// - "SINGLE_DEVICE_STATUS_PERMISSION_DENIED" : Permission denied. |
| /// - "SINGLE_DEVICE_STATUS_INVALID_DEVICE_IDENTIFIER" : Invalid device |
| /// identifier. |
| /// - "SINGLE_DEVICE_STATUS_INVALID_SECTION_TYPE" : Invalid section type. |
| /// - "SINGLE_DEVICE_STATUS_SECTION_NOT_YOURS" : This section is claimed by |
| /// another company. |
| core.String status; |
| |
| PerDeviceStatusInBatch(); |
| |
| PerDeviceStatusInBatch.fromJson(core.Map _json) { |
| if (_json.containsKey("deviceId")) { |
| deviceId = _json["deviceId"]; |
| } |
| if (_json.containsKey("errorIdentifier")) { |
| errorIdentifier = _json["errorIdentifier"]; |
| } |
| if (_json.containsKey("errorMessage")) { |
| errorMessage = _json["errorMessage"]; |
| } |
| if (_json.containsKey("status")) { |
| status = _json["status"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (deviceId != null) { |
| _json["deviceId"] = deviceId; |
| } |
| if (errorIdentifier != null) { |
| _json["errorIdentifier"] = errorIdentifier; |
| } |
| if (errorMessage != null) { |
| _json["errorMessage"] = errorMessage; |
| } |
| if (status != null) { |
| _json["status"] = status; |
| } |
| return _json; |
| } |
| } |
| |
| /// 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"]; |
| } |
| if (_json.containsKey("details")) { |
| details = (_json["details"] as core.List) |
| .map<core.Map<core.String, core.Object>>( |
| (value) => (value as core.Map).cast<core.String, core.Object>()) |
| .toList(); |
| } |
| if (_json.containsKey("message")) { |
| message = _json["message"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (code != null) { |
| _json["code"] = code; |
| } |
| if (details != null) { |
| _json["details"] = details; |
| } |
| if (message != null) { |
| _json["message"] = message; |
| } |
| return _json; |
| } |
| } |
| |
| /// Request message to unclaim a device. |
| class UnclaimDeviceRequest { |
| /// Required. The device ID returned by `ClaimDevice`. |
| core.String deviceId; |
| |
| /// Required. The device identifier you used when you claimed this device. |
| DeviceIdentifier deviceIdentifier; |
| |
| /// Required. The section type of the device's provisioning record. |
| /// Possible string values are: |
| /// - "SECTION_TYPE_UNSPECIFIED" : Unspecified section type. |
| /// - "SECTION_TYPE_SIM_LOCK" : SIM-lock section type. |
| /// - "SECTION_TYPE_ZERO_TOUCH" : Zero-touch enrollment section type. |
| core.String sectionType; |
| |
| /// The duration of the vacation unlock starting from when the request is |
| /// processed. (1 day is treated as 24 hours) |
| core.int vacationModeDays; |
| |
| /// The expiration time of the vacation unlock. |
| core.String vacationModeExpireTime; |
| |
| UnclaimDeviceRequest(); |
| |
| UnclaimDeviceRequest.fromJson(core.Map _json) { |
| if (_json.containsKey("deviceId")) { |
| deviceId = _json["deviceId"]; |
| } |
| if (_json.containsKey("deviceIdentifier")) { |
| deviceIdentifier = |
| new DeviceIdentifier.fromJson(_json["deviceIdentifier"]); |
| } |
| if (_json.containsKey("sectionType")) { |
| sectionType = _json["sectionType"]; |
| } |
| if (_json.containsKey("vacationModeDays")) { |
| vacationModeDays = _json["vacationModeDays"]; |
| } |
| if (_json.containsKey("vacationModeExpireTime")) { |
| vacationModeExpireTime = _json["vacationModeExpireTime"]; |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (deviceId != null) { |
| _json["deviceId"] = deviceId; |
| } |
| if (deviceIdentifier != null) { |
| _json["deviceIdentifier"] = (deviceIdentifier).toJson(); |
| } |
| if (sectionType != null) { |
| _json["sectionType"] = sectionType; |
| } |
| if (vacationModeDays != null) { |
| _json["vacationModeDays"] = vacationModeDays; |
| } |
| if (vacationModeExpireTime != null) { |
| _json["vacationModeExpireTime"] = vacationModeExpireTime; |
| } |
| return _json; |
| } |
| } |
| |
| /// Request to unclaim devices asynchronously in batch. |
| class UnclaimDevicesRequest { |
| /// Required. The list of devices to unclaim. |
| core.List<PartnerUnclaim> unclaims; |
| |
| UnclaimDevicesRequest(); |
| |
| UnclaimDevicesRequest.fromJson(core.Map _json) { |
| if (_json.containsKey("unclaims")) { |
| unclaims = (_json["unclaims"] as core.List) |
| .map<PartnerUnclaim>((value) => new PartnerUnclaim.fromJson(value)) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (unclaims != null) { |
| _json["unclaims"] = unclaims.map((value) => (value).toJson()).toList(); |
| } |
| return _json; |
| } |
| } |
| |
| /// Request to update device metadata in batch. |
| class UpdateDeviceMetadataInBatchRequest { |
| /// Required. The list of metadata updates. |
| core.List<UpdateMetadataArguments> updates; |
| |
| UpdateDeviceMetadataInBatchRequest(); |
| |
| UpdateDeviceMetadataInBatchRequest.fromJson(core.Map _json) { |
| if (_json.containsKey("updates")) { |
| updates = (_json["updates"] as core.List) |
| .map<UpdateMetadataArguments>( |
| (value) => new UpdateMetadataArguments.fromJson(value)) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (updates != null) { |
| _json["updates"] = updates.map((value) => (value).toJson()).toList(); |
| } |
| return _json; |
| } |
| } |
| |
| /// Request to set metadata for a device. |
| class UpdateDeviceMetadataRequest { |
| /// Required. The metadata to attach to the device. |
| DeviceMetadata deviceMetadata; |
| |
| UpdateDeviceMetadataRequest(); |
| |
| UpdateDeviceMetadataRequest.fromJson(core.Map _json) { |
| if (_json.containsKey("deviceMetadata")) { |
| deviceMetadata = new DeviceMetadata.fromJson(_json["deviceMetadata"]); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (deviceMetadata != null) { |
| _json["deviceMetadata"] = (deviceMetadata).toJson(); |
| } |
| return _json; |
| } |
| } |
| |
| /// Identifies metadata updates to one device. |
| class UpdateMetadataArguments { |
| /// Required. Device ID of the device. |
| core.String deviceId; |
| |
| /// Required. Device identifier. |
| DeviceIdentifier deviceIdentifier; |
| |
| /// Required. The metadata to update. |
| DeviceMetadata deviceMetadata; |
| |
| UpdateMetadataArguments(); |
| |
| UpdateMetadataArguments.fromJson(core.Map _json) { |
| if (_json.containsKey("deviceId")) { |
| deviceId = _json["deviceId"]; |
| } |
| if (_json.containsKey("deviceIdentifier")) { |
| deviceIdentifier = |
| new DeviceIdentifier.fromJson(_json["deviceIdentifier"]); |
| } |
| if (_json.containsKey("deviceMetadata")) { |
| deviceMetadata = new DeviceMetadata.fromJson(_json["deviceMetadata"]); |
| } |
| } |
| |
| core.Map<core.String, core.Object> toJson() { |
| final core.Map<core.String, core.Object> _json = |
| new core.Map<core.String, core.Object>(); |
| if (deviceId != null) { |
| _json["deviceId"] = deviceId; |
| } |
| if (deviceIdentifier != null) { |
| _json["deviceIdentifier"] = (deviceIdentifier).toJson(); |
| } |
| if (deviceMetadata != null) { |
| _json["deviceMetadata"] = (deviceMetadata).toJson(); |
| } |
| return _json; |
| } |
| } |