// Copyright 2025 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // https://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // Generated code. DO NOT EDIT! namespace Google.Apis.AndroidProvisioningPartner.v1 { /// The AndroidProvisioningPartner Service. public class AndroidProvisioningPartnerService : Google.Apis.Services.BaseClientService { /// The API version. public const string Version = "v1"; /// The discovery version used to generate this service. public static Google.Apis.Discovery.DiscoveryVersion DiscoveryVersionUsed = Google.Apis.Discovery.DiscoveryVersion.Version_1_0; /// Constructs a new service. public AndroidProvisioningPartnerService() : this(new Google.Apis.Services.BaseClientService.Initializer()) { } /// Constructs a new service. /// The service initializer. public AndroidProvisioningPartnerService(Google.Apis.Services.BaseClientService.Initializer initializer) : base(initializer) { Customers = new CustomersResource(this); Operations = new OperationsResource(this); Partners = new PartnersResource(this); BaseUri = GetEffectiveUri(BaseUriOverride, "https://androiddeviceprovisioning.googleapis.com/"); BatchUri = GetEffectiveUri(null, "https://androiddeviceprovisioning.googleapis.com/batch"); } /// Gets the service supported features. public override System.Collections.Generic.IList Features => new string[0]; /// Gets the service name. public override string Name => "androiddeviceprovisioning"; /// Gets the service base URI. public override string BaseUri { get; } /// Gets the service base path. public override string BasePath => ""; /// Gets the batch base URI; null if unspecified. public override string BatchUri { get; } /// Gets the batch base path; null if unspecified. public override string BatchPath => "batch"; /// Gets the Customers resource. public virtual CustomersResource Customers { get; } /// Gets the Operations resource. public virtual OperationsResource Operations { get; } /// Gets the Partners resource. public virtual PartnersResource Partners { get; } } /// A base abstract class for AndroidProvisioningPartner requests. public abstract class AndroidProvisioningPartnerBaseServiceRequest : Google.Apis.Requests.ClientServiceRequest { /// Constructs a new AndroidProvisioningPartnerBaseServiceRequest instance. protected AndroidProvisioningPartnerBaseServiceRequest(Google.Apis.Services.IClientService service) : base(service) { } /// V1 error format. [Google.Apis.Util.RequestParameterAttribute("$.xgafv", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable Xgafv { get; set; } /// V1 error format. public enum XgafvEnum { /// v1 error format [Google.Apis.Util.StringValueAttribute("1")] Value1 = 0, /// v2 error format [Google.Apis.Util.StringValueAttribute("2")] Value2 = 1, } /// OAuth access token. [Google.Apis.Util.RequestParameterAttribute("access_token", Google.Apis.Util.RequestParameterType.Query)] public virtual string AccessToken { get; set; } /// Data format for response. [Google.Apis.Util.RequestParameterAttribute("alt", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable Alt { get; set; } /// Data format for response. public enum AltEnum { /// Responses with Content-Type of application/json [Google.Apis.Util.StringValueAttribute("json")] Json = 0, /// Media download with context-dependent Content-Type [Google.Apis.Util.StringValueAttribute("media")] Media = 1, /// Responses with Content-Type of application/x-protobuf [Google.Apis.Util.StringValueAttribute("proto")] Proto = 2, } /// JSONP [Google.Apis.Util.RequestParameterAttribute("callback", Google.Apis.Util.RequestParameterType.Query)] public virtual string Callback { get; set; } /// Selector specifying which fields to include in a partial response. [Google.Apis.Util.RequestParameterAttribute("fields", Google.Apis.Util.RequestParameterType.Query)] public virtual string Fields { get; set; } /// /// API key. Your API key identifies your project and provides you with API access, quota, and reports. Required /// unless you provide an OAuth 2.0 token. /// [Google.Apis.Util.RequestParameterAttribute("key", Google.Apis.Util.RequestParameterType.Query)] public virtual string Key { get; set; } /// OAuth 2.0 token for the current user. [Google.Apis.Util.RequestParameterAttribute("oauth_token", Google.Apis.Util.RequestParameterType.Query)] public virtual string OauthToken { get; set; } /// Returns response with indentations and line breaks. [Google.Apis.Util.RequestParameterAttribute("prettyPrint", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PrettyPrint { get; set; } /// /// Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a /// user, but should not exceed 40 characters. /// [Google.Apis.Util.RequestParameterAttribute("quotaUser", Google.Apis.Util.RequestParameterType.Query)] public virtual string QuotaUser { get; set; } /// Legacy upload protocol for media (e.g. "media", "multipart"). [Google.Apis.Util.RequestParameterAttribute("uploadType", Google.Apis.Util.RequestParameterType.Query)] public virtual string UploadType { get; set; } /// Upload protocol for media (e.g. "raw", "multipart"). [Google.Apis.Util.RequestParameterAttribute("upload_protocol", Google.Apis.Util.RequestParameterType.Query)] public virtual string UploadProtocol { get; set; } /// Initializes AndroidProvisioningPartner parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("$.xgafv", new Google.Apis.Discovery.Parameter { Name = "$.xgafv", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("access_token", new Google.Apis.Discovery.Parameter { Name = "access_token", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("alt", new Google.Apis.Discovery.Parameter { Name = "alt", IsRequired = false, ParameterType = "query", DefaultValue = "json", Pattern = null, }); RequestParameters.Add("callback", new Google.Apis.Discovery.Parameter { Name = "callback", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("fields", new Google.Apis.Discovery.Parameter { Name = "fields", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("key", new Google.Apis.Discovery.Parameter { Name = "key", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("oauth_token", new Google.Apis.Discovery.Parameter { Name = "oauth_token", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("prettyPrint", new Google.Apis.Discovery.Parameter { Name = "prettyPrint", IsRequired = false, ParameterType = "query", DefaultValue = "true", Pattern = null, }); RequestParameters.Add("quotaUser", new Google.Apis.Discovery.Parameter { Name = "quotaUser", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("uploadType", new Google.Apis.Discovery.Parameter { Name = "uploadType", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("upload_protocol", new Google.Apis.Discovery.Parameter { Name = "upload_protocol", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } /// The "customers" collection of methods. public class CustomersResource { private const string Resource = "customers"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public CustomersResource(Google.Apis.Services.IClientService service) { this.service = service; Configurations = new ConfigurationsResource(service); Devices = new DevicesResource(service); Dpcs = new DpcsResource(service); } /// Gets the Configurations resource. public virtual ConfigurationsResource Configurations { get; } /// The "configurations" collection of methods. public class ConfigurationsResource { private const string Resource = "configurations"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public ConfigurationsResource(Google.Apis.Services.IClientService service) { this.service = service; } /// /// Creates a new configuration. Once created, a customer can apply the configuration to devices. /// /// The body of the request. /// /// Required. The customer that manages the configuration. An API resource name in the format /// `customers/[CUSTOMER_ID]`. This field has custom validation in CreateConfigurationRequestValidator /// public virtual CreateRequest Create(Google.Apis.AndroidProvisioningPartner.v1.Data.Configuration body, string parent) { return new CreateRequest(this.service, body, parent); } /// /// Creates a new configuration. Once created, a customer can apply the configuration to devices. /// public class CreateRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new Create request. public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.Configuration body, string parent) : base(service) { Parent = parent; Body = body; InitParameters(); } /// /// Required. The customer that manages the configuration. An API resource name in the format /// `customers/[CUSTOMER_ID]`. This field has custom validation in CreateConfigurationRequestValidator /// [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.Configuration Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "create"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/{+parent}/configurations"; /// Initializes Create parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^customers/[^/]+$", }); } } /// /// Deletes an unused configuration. The API call fails if the customer has devices with the configuration /// applied. /// /// /// 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. /// public virtual DeleteRequest Delete(string name) { return new DeleteRequest(this.service, name); } /// /// Deletes an unused configuration. The API call fails if the customer has devices with the configuration /// applied. /// public class DeleteRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new Delete request. public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// /// 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. /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// Gets the method name. public override string MethodName => "delete"; /// Gets the HTTP method. public override string HttpMethod => "DELETE"; /// Gets the REST path. public override string RestPath => "v1/{+name}"; /// Initializes Delete parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("name", new Google.Apis.Discovery.Parameter { Name = "name", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^customers/[^/]+/configurations/[^/]+$", }); } } /// Gets the details of a configuration. /// /// Required. The configuration to get. An API resource name in the format /// `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. /// public virtual GetRequest Get(string name) { return new GetRequest(this.service, name); } /// Gets the details of a configuration. public class GetRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new Get request. public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// /// Required. The configuration to get. An API resource name in the format /// `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// Gets the method name. public override string MethodName => "get"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. public override string RestPath => "v1/{+name}"; /// Initializes Get parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("name", new Google.Apis.Discovery.Parameter { Name = "name", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^customers/[^/]+/configurations/[^/]+$", }); } } /// Lists a customer's configurations. /// /// Required. The customer that manages the listed configurations. An API resource name in the format /// `customers/[CUSTOMER_ID]`. /// public virtual ListRequest List(string parent) { return new ListRequest(this.service, parent); } /// Lists a customer's configurations. public class ListRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) { Parent = parent; InitParameters(); } /// /// Required. The customer that manages the listed configurations. An API resource name in the format /// `customers/[CUSTOMER_ID]`. /// [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// Gets the method name. public override string MethodName => "list"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. public override string RestPath => "v1/{+parent}/configurations"; /// Initializes List parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^customers/[^/]+$", }); } } /// Updates a configuration's field values. /// The body of the request. /// /// Output only. The API resource name in the format /// `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. Assigned by the server. /// public virtual PatchRequest Patch(Google.Apis.AndroidProvisioningPartner.v1.Data.Configuration body, string name) { return new PatchRequest(this.service, body, name); } /// Updates a configuration's field values. public class PatchRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new Patch request. public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.Configuration body, string name) : base(service) { Name = name; Body = body; InitParameters(); } /// /// Output only. The API resource name in the format /// `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. Assigned by the server. /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// /// 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. /// [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] public virtual object UpdateMask { get; set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.Configuration Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "patch"; /// Gets the HTTP method. public override string HttpMethod => "PATCH"; /// Gets the REST path. public override string RestPath => "v1/{+name}"; /// Initializes Patch parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("name", new Google.Apis.Discovery.Parameter { Name = "name", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^customers/[^/]+/configurations/[^/]+$", }); RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter { Name = "updateMask", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } } /// Gets the Devices resource. public virtual DevicesResource Devices { get; } /// The "devices" collection of methods. public class DevicesResource { private const string Resource = "devices"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public DevicesResource(Google.Apis.Services.IClientService service) { this.service = service; } /// /// 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. /// /// The body of the request. /// /// Required. The customer managing the device. An API resource name in the format /// `customers/[CUSTOMER_ID]`. /// public virtual ApplyConfigurationRequest ApplyConfiguration(Google.Apis.AndroidProvisioningPartner.v1.Data.CustomerApplyConfigurationRequest body, string parent) { return new ApplyConfigurationRequest(this.service, body, parent); } /// /// 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. /// public class ApplyConfigurationRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new ApplyConfiguration request. public ApplyConfigurationRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.CustomerApplyConfigurationRequest body, string parent) : base(service) { Parent = parent; Body = body; InitParameters(); } /// /// Required. The customer managing the device. An API resource name in the format /// `customers/[CUSTOMER_ID]`. /// [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.CustomerApplyConfigurationRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "applyConfiguration"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/{+parent}/devices:applyConfiguration"; /// Initializes ApplyConfiguration parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^customers/[^/]+$", }); } } /// Gets the details of a device. /// /// Required. The device to get. An API resource name in the format /// `customers/[CUSTOMER_ID]/devices/[DEVICE_ID]`. /// public virtual GetRequest Get(string name) { return new GetRequest(this.service, name); } /// Gets the details of a device. public class GetRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new Get request. public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// /// Required. The device to get. An API resource name in the format /// `customers/[CUSTOMER_ID]/devices/[DEVICE_ID]`. /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// Gets the method name. public override string MethodName => "get"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. public override string RestPath => "v1/{+name}"; /// Initializes Get parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("name", new Google.Apis.Discovery.Parameter { Name = "name", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^customers/[^/]+/devices/[^/]+$", }); } } /// Lists a customer's devices. /// /// Required. The customer managing the devices. An API resource name in the format /// `customers/[CUSTOMER_ID]`. /// public virtual ListRequest List(string parent) { return new ListRequest(this.service, parent); } /// Lists a customer's devices. public class ListRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) { Parent = parent; InitParameters(); } /// /// Required. The customer managing the devices. An API resource name in the format /// `customers/[CUSTOMER_ID]`. /// [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// /// Required. The maximum number of devices to show in a page of results. Must be between 1 and 100 /// inclusive. /// [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } /// A token specifying which result page to return. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } /// Gets the method name. public override string MethodName => "list"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. public override string RestPath => "v1/{+parent}/devices"; /// Initializes List parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^customers/[^/]+$", }); RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter { Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter { Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } /// Removes a configuration from device. /// The body of the request. /// /// Required. The customer managing the device in the format `customers/[CUSTOMER_ID]`. /// public virtual RemoveConfigurationRequest RemoveConfiguration(Google.Apis.AndroidProvisioningPartner.v1.Data.CustomerRemoveConfigurationRequest body, string parent) { return new RemoveConfigurationRequest(this.service, body, parent); } /// Removes a configuration from device. public class RemoveConfigurationRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new RemoveConfiguration request. public RemoveConfigurationRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.CustomerRemoveConfigurationRequest body, string parent) : base(service) { Parent = parent; Body = body; InitParameters(); } /// /// Required. The customer managing the device in the format `customers/[CUSTOMER_ID]`. /// [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.CustomerRemoveConfigurationRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "removeConfiguration"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/{+parent}/devices:removeConfiguration"; /// Initializes RemoveConfiguration parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^customers/[^/]+$", }); } } /// /// 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. /// /// The body of the request. /// /// Required. The customer managing the device. An API resource name in the format /// `customers/[CUSTOMER_ID]`. /// public virtual UnclaimRequest Unclaim(Google.Apis.AndroidProvisioningPartner.v1.Data.CustomerUnclaimDeviceRequest body, string parent) { return new UnclaimRequest(this.service, body, parent); } /// /// 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. /// public class UnclaimRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new Unclaim request. public UnclaimRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.CustomerUnclaimDeviceRequest body, string parent) : base(service) { Parent = parent; Body = body; InitParameters(); } /// /// Required. The customer managing the device. An API resource name in the format /// `customers/[CUSTOMER_ID]`. /// [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.CustomerUnclaimDeviceRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "unclaim"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/{+parent}/devices:unclaim"; /// Initializes Unclaim parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^customers/[^/]+$", }); } } } /// Gets the Dpcs resource. public virtual DpcsResource Dpcs { get; } /// The "dpcs" collection of methods. public class DpcsResource { private const string Resource = "dpcs"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public DpcsResource(Google.Apis.Services.IClientService service) { this.service = service; } /// Lists the DPCs (device policy controllers) that support zero-touch enrollment. /// /// Required. The customer that can use the DPCs in configurations. An API resource name in the format /// `customers/[CUSTOMER_ID]`. /// public virtual ListRequest List(string parent) { return new ListRequest(this.service, parent); } /// Lists the DPCs (device policy controllers) that support zero-touch enrollment. public class ListRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) { Parent = parent; InitParameters(); } /// /// Required. The customer that can use the DPCs in configurations. An API resource name in the format /// `customers/[CUSTOMER_ID]`. /// [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// Gets the method name. public override string MethodName => "list"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. public override string RestPath => "v1/{+parent}/dpcs"; /// Initializes List parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^customers/[^/]+$", }); } } } /// Lists the user's customer accounts. public virtual ListRequest List() { return new ListRequest(this.service); } /// Lists the user's customer accounts. public class ListRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service) : base(service) { InitParameters(); } /// /// Required. The maximum number of customers to show in a page of results. A number between 1 and 100 /// (inclusive). /// [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } /// /// A token specifying which result page to return. This field has custom validations in /// ListCustomersRequestValidator /// [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } /// Gets the method name. public override string MethodName => "list"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. public override string RestPath => "v1/customers"; /// Initializes List parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter { Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter { Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } } /// The "operations" collection of methods. public class OperationsResource { private const string Resource = "operations"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public OperationsResource(Google.Apis.Services.IClientService service) { this.service = service; } /// /// 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. /// /// The name of the operation resource. public virtual GetRequest Get(string name) { return new GetRequest(this.service, name); } /// /// 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. /// public class GetRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new Get request. public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// The name of the operation resource. [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// Gets the method name. public override string MethodName => "get"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. public override string RestPath => "v1/{+name}"; /// Initializes Get parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("name", new Google.Apis.Discovery.Parameter { Name = "name", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^operations/.*$", }); } } } /// The "partners" collection of methods. public class PartnersResource { private const string Resource = "partners"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public PartnersResource(Google.Apis.Services.IClientService service) { this.service = service; Customers = new CustomersResource(service); Devices = new DevicesResource(service); Vendors = new VendorsResource(service); } /// Gets the Customers resource. public virtual CustomersResource Customers { get; } /// The "customers" collection of methods. public class CustomersResource { private const string Resource = "customers"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public CustomersResource(Google.Apis.Services.IClientService service) { this.service = service; } /// /// 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. /// /// The body of the request. /// /// Required. The parent resource ID in the format `partners/[PARTNER_ID]` that identifies the reseller. /// public virtual CreateRequest Create(Google.Apis.AndroidProvisioningPartner.v1.Data.CreateCustomerRequest body, string parent) { return new CreateRequest(this.service, body, parent); } /// /// 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. /// public class CreateRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new Create request. public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.CreateCustomerRequest body, string parent) : base(service) { Parent = parent; Body = body; InitParameters(); } /// /// Required. The parent resource ID in the format `partners/[PARTNER_ID]` that identifies the reseller. /// [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.CreateCustomerRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "create"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/{+parent}/customers"; /// Initializes Create parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^partners/[^/]+$", }); } } /// /// 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. /// /// Required. The ID of the reseller partner. public virtual ListRequest List(long partnerId) { return new ListRequest(this.service, partnerId); } /// /// 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. /// public class ListRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service, long partnerId) : base(service) { PartnerId = partnerId; InitParameters(); } /// Required. The ID of the reseller partner. [Google.Apis.Util.RequestParameterAttribute("partnerId", Google.Apis.Util.RequestParameterType.Path)] public virtual long PartnerId { get; private set; } /// /// The maximum number of results to be returned. If not specified or 0, all the records are returned. /// [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } /// A token identifying a page of results returned by the server. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } /// Gets the method name. public override string MethodName => "list"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. public override string RestPath => "v1/partners/{+partnerId}/customers"; /// Initializes List parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("partnerId", new Google.Apis.Discovery.Parameter { Name = "partnerId", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^[^/]+$", }); RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter { Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter { Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } } /// Gets the Devices resource. public virtual DevicesResource Devices { get; } /// The "devices" collection of methods. public class DevicesResource { private const string Resource = "devices"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public DevicesResource(Google.Apis.Services.IClientService service) { this.service = service; } /// /// 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. /// /// The body of the request. /// Required. The ID of the reseller partner. public virtual ClaimRequest Claim(Google.Apis.AndroidProvisioningPartner.v1.Data.ClaimDeviceRequest body, long partnerId) { return new ClaimRequest(this.service, body, partnerId); } /// /// 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. /// public class ClaimRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new Claim request. public ClaimRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.ClaimDeviceRequest body, long partnerId) : base(service) { PartnerId = partnerId; Body = body; InitParameters(); } /// Required. The ID of the reseller partner. [Google.Apis.Util.RequestParameterAttribute("partnerId", Google.Apis.Util.RequestParameterType.Path)] public virtual long PartnerId { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.ClaimDeviceRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "claim"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/partners/{+partnerId}/devices:claim"; /// Initializes Claim parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("partnerId", new Google.Apis.Discovery.Parameter { Name = "partnerId", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^[^/]+$", }); } } /// /// 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). /// /// The body of the request. /// Required. The ID of the reseller partner. public virtual ClaimAsyncRequest ClaimAsync(Google.Apis.AndroidProvisioningPartner.v1.Data.ClaimDevicesRequest body, long partnerId) { return new ClaimAsyncRequest(this.service, body, partnerId); } /// /// 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). /// public class ClaimAsyncRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new ClaimAsync request. public ClaimAsyncRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.ClaimDevicesRequest body, long partnerId) : base(service) { PartnerId = partnerId; Body = body; InitParameters(); } /// Required. The ID of the reseller partner. [Google.Apis.Util.RequestParameterAttribute("partnerId", Google.Apis.Util.RequestParameterType.Path)] public virtual long PartnerId { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.ClaimDevicesRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "claimAsync"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/partners/{+partnerId}/devices:claimAsync"; /// Initializes ClaimAsync parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("partnerId", new Google.Apis.Discovery.Parameter { Name = "partnerId", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^[^/]+$", }); } } /// Finds devices by hardware identifiers, such as IMEI. /// The body of the request. /// Required. The ID of the reseller partner. public virtual FindByIdentifierRequest FindByIdentifier(Google.Apis.AndroidProvisioningPartner.v1.Data.FindDevicesByDeviceIdentifierRequest body, long partnerId) { return new FindByIdentifierRequest(this.service, body, partnerId); } /// Finds devices by hardware identifiers, such as IMEI. public class FindByIdentifierRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new FindByIdentifier request. public FindByIdentifierRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.FindDevicesByDeviceIdentifierRequest body, long partnerId) : base(service) { PartnerId = partnerId; Body = body; InitParameters(); } /// Required. The ID of the reseller partner. [Google.Apis.Util.RequestParameterAttribute("partnerId", Google.Apis.Util.RequestParameterType.Path)] public virtual long PartnerId { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.FindDevicesByDeviceIdentifierRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "findByIdentifier"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/partners/{+partnerId}/devices:findByIdentifier"; /// Initializes FindByIdentifier parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("partnerId", new Google.Apis.Discovery.Parameter { Name = "partnerId", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^[^/]+$", }); } } /// /// 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. /// /// The body of the request. /// Required. The ID of the reseller partner. public virtual FindByOwnerRequest FindByOwner(Google.Apis.AndroidProvisioningPartner.v1.Data.FindDevicesByOwnerRequest body, long partnerId) { return new FindByOwnerRequest(this.service, body, partnerId); } /// /// 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. /// public class FindByOwnerRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new FindByOwner request. public FindByOwnerRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.FindDevicesByOwnerRequest body, long partnerId) : base(service) { PartnerId = partnerId; Body = body; InitParameters(); } /// Required. The ID of the reseller partner. [Google.Apis.Util.RequestParameterAttribute("partnerId", Google.Apis.Util.RequestParameterType.Path)] public virtual long PartnerId { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.FindDevicesByOwnerRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "findByOwner"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/partners/{+partnerId}/devices:findByOwner"; /// Initializes FindByOwner parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("partnerId", new Google.Apis.Discovery.Parameter { Name = "partnerId", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^[^/]+$", }); } } /// Gets a device. /// /// Required. The device API resource name in the format `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. /// public virtual GetRequest Get(string name) { return new GetRequest(this.service, name); } /// Gets a device. public class GetRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new Get request. public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// /// Required. The device API resource name in the format `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// Gets the method name. public override string MethodName => "get"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. public override string RestPath => "v1/{+name}"; /// Initializes Get parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("name", new Google.Apis.Discovery.Parameter { Name = "name", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^partners/[^/]+/devices/[^/]+$", }); } } /// Gets a device's SIM lock state. /// The body of the request. /// Required. The ID of the partner. public virtual GetSimLockStateRequest GetSimLockState(Google.Apis.AndroidProvisioningPartner.v1.Data.GetDeviceSimLockStateRequest body, long partnerId) { return new GetSimLockStateRequest(this.service, body, partnerId); } /// Gets a device's SIM lock state. public class GetSimLockStateRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new GetSimLockState request. public GetSimLockStateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.GetDeviceSimLockStateRequest body, long partnerId) : base(service) { PartnerId = partnerId; Body = body; InitParameters(); } /// Required. The ID of the partner. [Google.Apis.Util.RequestParameterAttribute("partnerId", Google.Apis.Util.RequestParameterType.Path)] public virtual long PartnerId { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.GetDeviceSimLockStateRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "getSimLockState"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/partners/{+partnerId}/devices:getSimLockState"; /// Initializes GetSimLockState parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("partnerId", new Google.Apis.Discovery.Parameter { Name = "partnerId", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^[^/]+$", }); } } /// Updates reseller metadata associated with the device. Android devices only. /// The body of the request. /// /// Required. The owner of the newly set metadata. Set this to the partner ID. /// /// Required. The ID of the device. public virtual MetadataRequest Metadata(Google.Apis.AndroidProvisioningPartner.v1.Data.UpdateDeviceMetadataRequest body, long metadataOwnerId, long deviceId) { return new MetadataRequest(this.service, body, metadataOwnerId, deviceId); } /// Updates reseller metadata associated with the device. Android devices only. public class MetadataRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new Metadata request. public MetadataRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.UpdateDeviceMetadataRequest body, long metadataOwnerId, long deviceId) : base(service) { MetadataOwnerId = metadataOwnerId; DeviceId = deviceId; Body = body; InitParameters(); } /// Required. The owner of the newly set metadata. Set this to the partner ID. [Google.Apis.Util.RequestParameterAttribute("metadataOwnerId", Google.Apis.Util.RequestParameterType.Path)] public virtual long MetadataOwnerId { get; private set; } /// Required. The ID of the device. [Google.Apis.Util.RequestParameterAttribute("deviceId", Google.Apis.Util.RequestParameterType.Path)] public virtual long DeviceId { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.UpdateDeviceMetadataRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "metadata"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/partners/{+metadataOwnerId}/devices/{+deviceId}/metadata"; /// Initializes Metadata parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("metadataOwnerId", new Google.Apis.Discovery.Parameter { Name = "metadataOwnerId", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^[^/]+$", }); RequestParameters.Add("deviceId", new Google.Apis.Discovery.Parameter { Name = "deviceId", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^[^/]+$", }); } } /// Unclaims a device from a customer and removes it from zero-touch enrollment. /// The body of the request. /// Required. The ID of the reseller partner. public virtual UnclaimRequest Unclaim(Google.Apis.AndroidProvisioningPartner.v1.Data.UnclaimDeviceRequest body, long partnerId) { return new UnclaimRequest(this.service, body, partnerId); } /// Unclaims a device from a customer and removes it from zero-touch enrollment. public class UnclaimRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new Unclaim request. public UnclaimRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.UnclaimDeviceRequest body, long partnerId) : base(service) { PartnerId = partnerId; Body = body; InitParameters(); } /// Required. The ID of the reseller partner. [Google.Apis.Util.RequestParameterAttribute("partnerId", Google.Apis.Util.RequestParameterType.Path)] public virtual long PartnerId { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.UnclaimDeviceRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "unclaim"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/partners/{+partnerId}/devices:unclaim"; /// Initializes Unclaim parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("partnerId", new Google.Apis.Discovery.Parameter { Name = "partnerId", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^[^/]+$", }); } } /// /// 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). /// /// The body of the request. /// Required. The reseller partner ID. public virtual UnclaimAsyncRequest UnclaimAsync(Google.Apis.AndroidProvisioningPartner.v1.Data.UnclaimDevicesRequest body, long partnerId) { return new UnclaimAsyncRequest(this.service, body, partnerId); } /// /// 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). /// public class UnclaimAsyncRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new UnclaimAsync request. public UnclaimAsyncRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.UnclaimDevicesRequest body, long partnerId) : base(service) { PartnerId = partnerId; Body = body; InitParameters(); } /// Required. The reseller partner ID. [Google.Apis.Util.RequestParameterAttribute("partnerId", Google.Apis.Util.RequestParameterType.Path)] public virtual long PartnerId { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.UnclaimDevicesRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "unclaimAsync"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/partners/{+partnerId}/devices:unclaimAsync"; /// Initializes UnclaimAsync parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("partnerId", new Google.Apis.Discovery.Parameter { Name = "partnerId", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^[^/]+$", }); } } /// /// 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). Android Devices only. /// /// The body of the request. /// Required. The reseller partner ID. public virtual UpdateMetadataAsyncRequest UpdateMetadataAsync(Google.Apis.AndroidProvisioningPartner.v1.Data.UpdateDeviceMetadataInBatchRequest body, long partnerId) { return new UpdateMetadataAsyncRequest(this.service, body, partnerId); } /// /// 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). Android Devices only. /// public class UpdateMetadataAsyncRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new UpdateMetadataAsync request. public UpdateMetadataAsyncRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidProvisioningPartner.v1.Data.UpdateDeviceMetadataInBatchRequest body, long partnerId) : base(service) { PartnerId = partnerId; Body = body; InitParameters(); } /// Required. The reseller partner ID. [Google.Apis.Util.RequestParameterAttribute("partnerId", Google.Apis.Util.RequestParameterType.Path)] public virtual long PartnerId { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidProvisioningPartner.v1.Data.UpdateDeviceMetadataInBatchRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "updateMetadataAsync"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/partners/{+partnerId}/devices:updateMetadataAsync"; /// Initializes UpdateMetadataAsync parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("partnerId", new Google.Apis.Discovery.Parameter { Name = "partnerId", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^[^/]+$", }); } } } /// Gets the Vendors resource. public virtual VendorsResource Vendors { get; } /// The "vendors" collection of methods. public class VendorsResource { private const string Resource = "vendors"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public VendorsResource(Google.Apis.Services.IClientService service) { this.service = service; Customers = new CustomersResource(service); } /// Gets the Customers resource. public virtual CustomersResource Customers { get; } /// The "customers" collection of methods. public class CustomersResource { private const string Resource = "customers"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public CustomersResource(Google.Apis.Services.IClientService service) { this.service = service; } /// Lists the customers of the vendor. /// /// Required. The resource name in the format `partners/[PARTNER_ID]/vendors/[VENDOR_ID]`. /// public virtual ListRequest List(string parent) { return new ListRequest(this.service, parent); } /// Lists the customers of the vendor. public class ListRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) { Parent = parent; InitParameters(); } /// /// Required. The resource name in the format `partners/[PARTNER_ID]/vendors/[VENDOR_ID]`. /// [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// The maximum number of results to be returned. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } /// A token identifying a page of results returned by the server. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } /// Gets the method name. public override string MethodName => "list"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. public override string RestPath => "v1/{+parent}/customers"; /// Initializes List parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^partners/[^/]+/vendors/[^/]+$", }); RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter { Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter { Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } } /// Lists the vendors of the partner. /// Required. The resource name in the format `partners/[PARTNER_ID]`. public virtual ListRequest List(string parent) { return new ListRequest(this.service, parent); } /// Lists the vendors of the partner. public class ListRequest : AndroidProvisioningPartnerBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) { Parent = parent; InitParameters(); } /// Required. The resource name in the format `partners/[PARTNER_ID]`. [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// The maximum number of results to be returned. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } /// A token identifying a page of results returned by the server. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } /// Gets the method name. public override string MethodName => "list"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. public override string RestPath => "v1/{+parent}/vendors"; /// Initializes List parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, Pattern = @"^partners/[^/]+$", }); RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter { Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter { Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } } } } namespace Google.Apis.AndroidProvisioningPartner.v1.Data { /// Request message to claim a device on behalf of a customer. public class ClaimDeviceRequest : Google.Apis.Requests.IDirectResponseSchema { /// Optional. The ID of the configuration applied to the device section. [Newtonsoft.Json.JsonPropertyAttribute("configurationId")] public virtual System.Nullable ConfigurationId { get; set; } /// The ID of the customer for whom the device is being claimed. [Newtonsoft.Json.JsonPropertyAttribute("customerId")] public virtual System.Nullable CustomerId { get; set; } /// Required. Required. The device identifier of the device to claim. [Newtonsoft.Json.JsonPropertyAttribute("deviceIdentifier")] public virtual DeviceIdentifier DeviceIdentifier { get; set; } /// Optional. The metadata to attach to the device. [Newtonsoft.Json.JsonPropertyAttribute("deviceMetadata")] public virtual DeviceMetadata DeviceMetadata { get; set; } /// The Google Workspace customer ID. [Newtonsoft.Json.JsonPropertyAttribute("googleWorkspaceCustomerId")] public virtual string GoogleWorkspaceCustomerId { get; set; } /// Optional. Must and can only be set for Chrome OS devices. [Newtonsoft.Json.JsonPropertyAttribute("preProvisioningToken")] public virtual string PreProvisioningToken { get; set; } /// Required. The section type of the device's provisioning record. [Newtonsoft.Json.JsonPropertyAttribute("sectionType")] public virtual string SectionType { get; set; } /// /// Optional. Must and can only be set when DeviceProvisioningSectionType is SECTION_TYPE_SIM_LOCK. The unique /// identifier of the SimLock profile. /// [Newtonsoft.Json.JsonPropertyAttribute("simlockProfileId")] public virtual System.Nullable SimlockProfileId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response message containing device id of the claim. public class ClaimDeviceResponse : Google.Apis.Requests.IDirectResponseSchema { /// The device ID of the claimed device. [Newtonsoft.Json.JsonPropertyAttribute("deviceId")] public virtual System.Nullable DeviceId { get; set; } /// /// The resource name of the device in the format `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. /// [Newtonsoft.Json.JsonPropertyAttribute("deviceName")] public virtual string DeviceName { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// 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. /// public class ClaimDevicesRequest : Google.Apis.Requests.IDirectResponseSchema { /// Required. A list of device claims. [Newtonsoft.Json.JsonPropertyAttribute("claims")] public virtual System.Collections.Generic.IList Claims { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A reseller, vendor, or customer in the zero-touch reseller and customer APIs. public class Company : Google.Apis.Requests.IDirectResponseSchema { /// /// Optional. Email address of customer's users in the admin role. Each email address must be associated with a /// Google Account. /// [Newtonsoft.Json.JsonPropertyAttribute("adminEmails")] public virtual System.Collections.Generic.IList AdminEmails { get; set; } /// Output only. The ID of the company. Assigned by the server. [Newtonsoft.Json.JsonPropertyAttribute("companyId")] public virtual System.Nullable CompanyId { get; set; } /// /// Required. The name of the company. For example _XYZ Corp_. Displayed to the company's employees in the /// zero-touch enrollment portal. /// [Newtonsoft.Json.JsonPropertyAttribute("companyName")] public virtual string CompanyName { get; set; } /// /// Output only. The Google Workspace account associated with this customer. Only used for customer Companies. /// [Newtonsoft.Json.JsonPropertyAttribute("googleWorkspaceAccount")] public virtual GoogleWorkspaceAccount GoogleWorkspaceAccount { get; set; } /// /// Input only. The preferred locale of the customer represented as a BCP47 language code. This field is /// validated on input and requests containing unsupported language codes will be rejected. Supported language /// codes: Arabic (ar) Chinese (Hong Kong) (zh-HK) Chinese (Simplified) (zh-CN) Chinese (Traditional) (zh-TW) /// Czech (cs) Danish (da) Dutch (nl) English (UK) (en-GB) English (US) (en-US) Filipino (fil) Finnish (fi) /// French (fr) German (de) Hebrew (iw) Hindi (hi) Hungarian (hu) Indonesian (id) Italian (it) Japanese (ja) /// Korean (ko) Norwegian (Bokmal) (no) Polish (pl) Portuguese (Brazil) (pt-BR) Portuguese (Portugal) (pt-PT) /// Russian (ru) Spanish (es) Spanish (Latin America) (es-419) Swedish (sv) Thai (th) Turkish (tr) Ukrainian /// (uk) Vietnamese (vi) /// [Newtonsoft.Json.JsonPropertyAttribute("languageCode")] public virtual string LanguageCode { get; set; } /// /// 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. /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// /// Required. Input only. Email address of customer's users in the owner role. At least one `owner_email` is /// required. Owners share the same access as admins but can also add, delete, and edit your organization's /// portal users. /// [Newtonsoft.Json.JsonPropertyAttribute("ownerEmails")] public virtual System.Collections.Generic.IList OwnerEmails { get; set; } /// /// Input only. If set to true, welcome email will not be sent to the customer. It is recommended to skip the /// welcome email if devices will be claimed with additional DEVICE_PROTECTION service, as the customer will /// receive separate emails at device claim time. This field is ignored if this is not a Zero-touch customer. /// [Newtonsoft.Json.JsonPropertyAttribute("skipWelcomeEmail")] public virtual System.Nullable SkipWelcomeEmail { get; set; } /// /// Output only. Whether any user from the company has accepted the latest Terms of Service (ToS). See /// TermsStatus. /// [Newtonsoft.Json.JsonPropertyAttribute("termsStatus")] public virtual string TermsStatus { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// 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. /// public class Configuration : Google.Apis.Requests.IDirectResponseSchema { /// /// Required. The name of the organization. Zero-touch enrollment shows this organization name to device users /// during device provisioning. /// [Newtonsoft.Json.JsonPropertyAttribute("companyName")] public virtual string CompanyName { get; set; } /// Output only. The ID of the configuration. Assigned by the server. [Newtonsoft.Json.JsonPropertyAttribute("configurationId")] public virtual System.Nullable ConfigurationId { get; set; } /// /// 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. /// [Newtonsoft.Json.JsonPropertyAttribute("configurationName")] public virtual string ConfigurationName { get; set; } /// /// 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. /// [Newtonsoft.Json.JsonPropertyAttribute("contactEmail")] public virtual string ContactEmail { get; set; } /// /// 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. /// [Newtonsoft.Json.JsonPropertyAttribute("contactPhone")] public virtual string ContactPhone { get; set; } /// /// 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. /// [Newtonsoft.Json.JsonPropertyAttribute("customMessage")] public virtual string CustomMessage { get; set; } /// The JSON-formatted EMM provisioning extras that are passed to the DPC. [Newtonsoft.Json.JsonPropertyAttribute("dpcExtras")] public virtual string DpcExtras { get; set; } /// /// 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`. /// [Newtonsoft.Json.JsonPropertyAttribute("dpcResourcePath")] public virtual string DpcResourcePath { get; set; } /// /// Optional. The timeout before forcing factory reset the device if the device doesn't go through provisioning /// in the setup wizard, usually due to lack of network connectivity during setup wizard. Ranges from 0-6 hours, /// with 2 hours being the default if unset. /// [Newtonsoft.Json.JsonPropertyAttribute("forcedResetTime")] public virtual object ForcedResetTime { get; set; } /// /// 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`. /// [Newtonsoft.Json.JsonPropertyAttribute("isDefault")] public virtual System.Nullable IsDefault { get; set; } /// /// Output only. The API resource name in the format /// `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. Assigned by the server. /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Request message to create a customer. public class CreateCustomerRequest : Google.Apis.Requests.IDirectResponseSchema { /// /// 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. /// [Newtonsoft.Json.JsonPropertyAttribute("customer")] public virtual Company Customer { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Request message for customer to assign a configuration to device. public class CustomerApplyConfigurationRequest : Google.Apis.Requests.IDirectResponseSchema { /// /// Required. The configuration applied to the device in the format /// `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. /// [Newtonsoft.Json.JsonPropertyAttribute("configuration")] public virtual string Configuration { get; set; } /// /// Required. The device the configuration is applied to. There are custom validations in /// ApplyConfigurationRequestValidator /// [Newtonsoft.Json.JsonPropertyAttribute("device")] public virtual DeviceReference Device { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response message of customer's listing configuration. public class CustomerListConfigurationsResponse : Google.Apis.Requests.IDirectResponseSchema { /// The configurations. [Newtonsoft.Json.JsonPropertyAttribute("configurations")] public virtual System.Collections.Generic.IList Configurations { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response message for listing my customers. public class CustomerListCustomersResponse : Google.Apis.Requests.IDirectResponseSchema { /// The customer accounts the calling user is a member of. [Newtonsoft.Json.JsonPropertyAttribute("customers")] public virtual System.Collections.Generic.IList Customers { get; set; } /// /// A token used to access the next page of results. Omitted if no further results are available. /// [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] public virtual string NextPageToken { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response message of customer's liting devices. public class CustomerListDevicesResponse : Google.Apis.Requests.IDirectResponseSchema { /// The customer's devices. [Newtonsoft.Json.JsonPropertyAttribute("devices")] public virtual System.Collections.Generic.IList Devices { get; set; } /// /// A token used to access the next page of results. Omitted if no further results are available. /// [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] public virtual string NextPageToken { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response message of customer's listing DPCs. public class CustomerListDpcsResponse : Google.Apis.Requests.IDirectResponseSchema { /// The list of DPCs available to the customer that support zero-touch enrollment. [Newtonsoft.Json.JsonPropertyAttribute("dpcs")] public virtual System.Collections.Generic.IList Dpcs { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Request message for customer to remove the configuration from device. public class CustomerRemoveConfigurationRequest : Google.Apis.Requests.IDirectResponseSchema { /// /// Required. The device to remove the configuration from. There are custom validations in /// RemoveConfigurationRequestValidator /// [Newtonsoft.Json.JsonPropertyAttribute("device")] public virtual DeviceReference Device { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Request message for customer to unclaim a device. public class CustomerUnclaimDeviceRequest : Google.Apis.Requests.IDirectResponseSchema { /// /// Required. The device to unclaim. There are custom validations in UnclaimDeviceRequestValidator. /// [Newtonsoft.Json.JsonPropertyAttribute("device")] public virtual DeviceReference Device { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// An Android or Chrome OS device registered for zero-touch enrollment. public class Device : Google.Apis.Requests.IDirectResponseSchema { /// /// 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. /// [Newtonsoft.Json.JsonPropertyAttribute("claims")] public virtual System.Collections.Generic.IList Claims { get; set; } /// Not available to resellers. [Newtonsoft.Json.JsonPropertyAttribute("configuration")] public virtual string Configuration { get; set; } /// Output only. The ID of the device. Assigned by the server. [Newtonsoft.Json.JsonPropertyAttribute("deviceId")] public virtual System.Nullable DeviceId { get; set; } /// /// The hardware IDs that identify a manufactured device. To learn more, read /// [Identifiers](https://developers.google.com/zero-touch/guides/identifiers). /// [Newtonsoft.Json.JsonPropertyAttribute("deviceIdentifier")] public virtual DeviceIdentifier DeviceIdentifier { get; set; } /// /// 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). /// [Newtonsoft.Json.JsonPropertyAttribute("deviceMetadata")] public virtual DeviceMetadata DeviceMetadata { get; set; } /// /// Output only. The API resource name in the format `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. Assigned by /// the server. /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// 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). /// public class DeviceClaim : Google.Apis.Requests.IDirectResponseSchema { /// The Additional service registered for the device. [Newtonsoft.Json.JsonPropertyAttribute("additionalService")] public virtual string AdditionalService { get; set; } /// The ID of the Google Workspace account that owns the Chrome OS device. [Newtonsoft.Json.JsonPropertyAttribute("googleWorkspaceCustomerId")] public virtual string GoogleWorkspaceCustomerId { get; set; } /// The ID of the Customer that purchased the device. [Newtonsoft.Json.JsonPropertyAttribute("ownerCompanyId")] public virtual System.Nullable OwnerCompanyId { get; set; } /// The ID of the reseller that claimed the device. [Newtonsoft.Json.JsonPropertyAttribute("resellerId")] public virtual System.Nullable ResellerId { get; set; } /// Output only. The type of claim made on the device. [Newtonsoft.Json.JsonPropertyAttribute("sectionType")] public virtual string SectionType { get; set; } private string _vacationModeExpireTimeRaw; private object _vacationModeExpireTime; /// /// The timestamp when the device will exit ‘vacation mode’. This value is present iff the device is in /// 'vacation mode'. /// [Newtonsoft.Json.JsonPropertyAttribute("vacationModeExpireTime")] public virtual string VacationModeExpireTimeRaw { get => _vacationModeExpireTimeRaw; set { _vacationModeExpireTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _vacationModeExpireTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use VacationModeExpireTimeDateTimeOffset instead.")] public virtual object VacationModeExpireTime { get => _vacationModeExpireTime; set { _vacationModeExpireTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _vacationModeExpireTime = value; } } /// /// representation of . /// [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? VacationModeExpireTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(VacationModeExpireTimeRaw); set => VacationModeExpireTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } private string _vacationModeStartTimeRaw; private object _vacationModeStartTime; /// /// The timestamp when the device was put into ‘vacation mode’. This value is present iff the device is in /// 'vacation mode'. /// [Newtonsoft.Json.JsonPropertyAttribute("vacationModeStartTime")] public virtual string VacationModeStartTimeRaw { get => _vacationModeStartTimeRaw; set { _vacationModeStartTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _vacationModeStartTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use VacationModeStartTimeDateTimeOffset instead.")] public virtual object VacationModeStartTime { get => _vacationModeStartTime; set { _vacationModeStartTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _vacationModeStartTime = value; } } /// /// representation of . /// [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? VacationModeStartTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(VacationModeStartTimeRaw); set => VacationModeStartTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// 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). /// public class DeviceIdentifier : Google.Apis.Requests.IDirectResponseSchema { /// /// An identifier provided by OEMs, carried through the production and sales process. Only applicable to Chrome /// OS devices. /// [Newtonsoft.Json.JsonPropertyAttribute("chromeOsAttestedDeviceId")] public virtual string ChromeOsAttestedDeviceId { get; set; } /// The type of the device [Newtonsoft.Json.JsonPropertyAttribute("deviceType")] public virtual string DeviceType { get; set; } /// The device’s IMEI number. Validated on input. [Newtonsoft.Json.JsonPropertyAttribute("imei")] public virtual string Imei { get; set; } /// The device’s second IMEI number. [Newtonsoft.Json.JsonPropertyAttribute("imei2")] public virtual string Imei2 { get; set; } /// /// The device manufacturer’s name. Matches the device's built-in value returned from /// `android.os.Build.MANUFACTURER`. Allowed values are listed in [Android /// manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names). /// [Newtonsoft.Json.JsonPropertyAttribute("manufacturer")] public virtual string Manufacturer { get; set; } /// The device’s MEID number. [Newtonsoft.Json.JsonPropertyAttribute("meid")] public virtual string Meid { get; set; } /// The device’s second MEID number. [Newtonsoft.Json.JsonPropertyAttribute("meid2")] public virtual string Meid2 { get; set; } /// /// The device model's name. Allowed values are listed in [Android /// models](/zero-touch/resources/manufacturer-names#model-names) and [Chrome OS /// models](https://support.google.com/chrome/a/answer/10130175#identify_compatible). /// [Newtonsoft.Json.JsonPropertyAttribute("model")] public virtual string Model { get; set; } /// /// The manufacturer's serial number for the device. This value might not be unique across different device /// models. /// [Newtonsoft.Json.JsonPropertyAttribute("serialNumber")] public virtual string SerialNumber { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Metadata entries that can be attached to a `Device`. To learn more, read [Device /// metadata](https://developers.google.com/zero-touch/guides/metadata). /// public class DeviceMetadata : Google.Apis.Requests.IDirectResponseSchema { /// Metadata entries recorded as key-value pairs. [Newtonsoft.Json.JsonPropertyAttribute("entries")] public virtual System.Collections.Generic.IDictionary Entries { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// 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). /// public class DeviceReference : Google.Apis.Requests.IDirectResponseSchema { /// The ID of the device. [Newtonsoft.Json.JsonPropertyAttribute("deviceId")] public virtual System.Nullable DeviceId { get; set; } /// The hardware IDs of the device. [Newtonsoft.Json.JsonPropertyAttribute("deviceIdentifier")] public virtual DeviceIdentifier DeviceIdentifier { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// 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). /// public class DevicesLongRunningOperationMetadata : Google.Apis.Requests.IDirectResponseSchema { /// /// 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. /// [Newtonsoft.Json.JsonPropertyAttribute("devicesCount")] public virtual System.Nullable DevicesCount { get; set; } /// The processing status of the operation. [Newtonsoft.Json.JsonPropertyAttribute("processingStatus")] public virtual string ProcessingStatus { get; set; } /// /// The processing progress of the operation. Measured as a number from 0 to 100. A value of 10O doesn't always /// mean the operation completed—check for the inclusion of a `done` field. /// [Newtonsoft.Json.JsonPropertyAttribute("progress")] public virtual System.Nullable Progress { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// 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). /// public class DevicesLongRunningOperationResponse : Google.Apis.Requests.IDirectResponseSchema { /// /// The processing status for each device in the operation. One `PerDeviceStatus` per device. The list order /// matches the items in the original request. /// [Newtonsoft.Json.JsonPropertyAttribute("perDeviceStatus")] public virtual System.Collections.Generic.IList PerDeviceStatus { get; set; } /// /// A summary of how many items in the operation the server processed successfully. Updated as the operation /// progresses. /// [Newtonsoft.Json.JsonPropertyAttribute("successCount")] public virtual System.Nullable SuccessCount { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// 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. /// public class Dpc : Google.Apis.Requests.IDirectResponseSchema { /// /// Output only. The title of the DPC app in Google Play. For example, _Google Apps Device Policy_. Useful in an /// application's user interface. /// [Newtonsoft.Json.JsonPropertyAttribute("dpcName")] public virtual string DpcName { get; set; } /// /// 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`). /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// /// 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. /// [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// 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); } /// public class Empty : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } /// Request to find devices. public class FindDevicesByDeviceIdentifierRequest : Google.Apis.Requests.IDirectResponseSchema { /// /// Required. Required. The device identifier to search for. If serial number is provided then case insensitive /// serial number matches are allowed. /// [Newtonsoft.Json.JsonPropertyAttribute("deviceIdentifier")] public virtual DeviceIdentifier DeviceIdentifier { get; set; } /// /// Required. The maximum number of devices to show in a page of results. Must be between 1 and 100 inclusive. /// [Newtonsoft.Json.JsonPropertyAttribute("limit")] public virtual System.Nullable Limit { get; set; } /// A token specifying which result page to return. [Newtonsoft.Json.JsonPropertyAttribute("pageToken")] public virtual string PageToken { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response containing found devices. public class FindDevicesByDeviceIdentifierResponse : Google.Apis.Requests.IDirectResponseSchema { /// Found devices. [Newtonsoft.Json.JsonPropertyAttribute("devices")] public virtual System.Collections.Generic.IList Devices { get; set; } /// /// A token used to access the next page of results. Omitted if no further results are available. /// [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] public virtual string NextPageToken { get; set; } /// The total count of items in the list irrespective of pagination. [Newtonsoft.Json.JsonPropertyAttribute("totalSize")] public virtual System.Nullable TotalSize { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Request to find devices by customers. public class FindDevicesByOwnerRequest : Google.Apis.Requests.IDirectResponseSchema { /// The list of customer IDs to search for. [Newtonsoft.Json.JsonPropertyAttribute("customerId")] public virtual System.Collections.Generic.IList> CustomerId { get; set; } /// The list of IDs of Google Workspace accounts to search for. [Newtonsoft.Json.JsonPropertyAttribute("googleWorkspaceCustomerId")] public virtual System.Collections.Generic.IList GoogleWorkspaceCustomerId { get; set; } /// /// Required. The maximum number of devices to show in a page of results. Must be between 1 and 100 inclusive. /// [Newtonsoft.Json.JsonPropertyAttribute("limit")] public virtual System.Nullable Limit { get; set; } /// A token specifying which result page to return. [Newtonsoft.Json.JsonPropertyAttribute("pageToken")] public virtual string PageToken { get; set; } /// Required. The section type of the device's provisioning record. [Newtonsoft.Json.JsonPropertyAttribute("sectionType")] public virtual string SectionType { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response containing found devices. public class FindDevicesByOwnerResponse : Google.Apis.Requests.IDirectResponseSchema { /// The customer's devices. [Newtonsoft.Json.JsonPropertyAttribute("devices")] public virtual System.Collections.Generic.IList Devices { get; set; } /// /// A token used to access the next page of results. Omitted if no further results are available. /// [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] public virtual string NextPageToken { get; set; } /// The total count of items in the list irrespective of pagination. [Newtonsoft.Json.JsonPropertyAttribute("totalSize")] public virtual System.Nullable TotalSize { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Request to get a device's SIM lock status. public class GetDeviceSimLockStateRequest : Google.Apis.Requests.IDirectResponseSchema { /// Required. Required. The device identifier to search for. [Newtonsoft.Json.JsonPropertyAttribute("deviceIdentifier")] public virtual DeviceIdentifier DeviceIdentifier { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response containing a device's SimLock state. public class GetDeviceSimLockStateResponse : Google.Apis.Requests.IDirectResponseSchema { [Newtonsoft.Json.JsonPropertyAttribute("simLockState")] public virtual string SimLockState { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A Google Workspace customer. public class GoogleWorkspaceAccount : Google.Apis.Requests.IDirectResponseSchema { /// Required. The customer ID. [Newtonsoft.Json.JsonPropertyAttribute("customerId")] public virtual string CustomerId { get; set; } /// Output only. The pre-provisioning tokens previously used to claim devices. [Newtonsoft.Json.JsonPropertyAttribute("preProvisioningTokens")] public virtual System.Collections.Generic.IList PreProvisioningTokens { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response message of all customers related to this partner. public class ListCustomersResponse : Google.Apis.Requests.IDirectResponseSchema { /// List of customers related to this reseller partner. [Newtonsoft.Json.JsonPropertyAttribute("customers")] public virtual System.Collections.Generic.IList Customers { get; set; } /// /// A token to retrieve the next page of results. Omitted if no further results are available. /// [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] public virtual string NextPageToken { get; set; } /// The total count of items in the list irrespective of pagination. [Newtonsoft.Json.JsonPropertyAttribute("totalSize")] public virtual System.Nullable TotalSize { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response message to list customers of the vendor. public class ListVendorCustomersResponse : Google.Apis.Requests.IDirectResponseSchema { /// List of customers of the vendor. [Newtonsoft.Json.JsonPropertyAttribute("customers")] public virtual System.Collections.Generic.IList Customers { get; set; } /// /// A token to retrieve the next page of results. Omitted if no further results are available. /// [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] public virtual string NextPageToken { get; set; } /// The total count of items in the list irrespective of pagination. [Newtonsoft.Json.JsonPropertyAttribute("totalSize")] public virtual System.Nullable TotalSize { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response message to list vendors of the partner. public class ListVendorsResponse : Google.Apis.Requests.IDirectResponseSchema { /// /// A token to retrieve the next page of results. Omitted if no further results are available. /// [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] public virtual string NextPageToken { get; set; } /// The total count of items in the list irrespective of pagination. [Newtonsoft.Json.JsonPropertyAttribute("totalSize")] public virtual System.Nullable TotalSize { get; set; } /// /// List of vendors of the reseller partner. Fields `name`, `companyId` and `companyName` are populated to the /// Company object. /// [Newtonsoft.Json.JsonPropertyAttribute("vendors")] public virtual System.Collections.Generic.IList Vendors { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// This resource represents a long-running operation that is the result of a network API call. public class Operation : Google.Apis.Requests.IDirectResponseSchema { /// /// 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. /// [Newtonsoft.Json.JsonPropertyAttribute("done")] public virtual System.Nullable Done { get; set; } /// /// 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`. /// [Newtonsoft.Json.JsonPropertyAttribute("error")] public virtual Status Error { get; set; } /// /// This field will contain a `DevicesLongRunningOperationMetadata` object if the operation is created by /// `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. /// [Newtonsoft.Json.JsonPropertyAttribute("metadata")] public virtual System.Collections.Generic.IDictionary Metadata { get; set; } /// /// 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}`. /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// /// This field will contain a `DevicesLongRunningOperationResponse` object if the operation is created by /// `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. /// [Newtonsoft.Json.JsonPropertyAttribute("response")] public virtual System.Collections.Generic.IDictionary Response { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A task for each device in the operation. Corresponds to each device change in the request. public class OperationPerDevice : Google.Apis.Requests.IDirectResponseSchema { /// A copy of the original device-claim request received by the server. [Newtonsoft.Json.JsonPropertyAttribute("claim")] public virtual PartnerClaim Claim { get; set; } /// The processing result for each device. [Newtonsoft.Json.JsonPropertyAttribute("result")] public virtual PerDeviceStatusInBatch Result { get; set; } /// A copy of the original device-unclaim request received by the server. [Newtonsoft.Json.JsonPropertyAttribute("unclaim")] public virtual PartnerUnclaim Unclaim { get; set; } /// A copy of the original metadata-update request received by the server. [Newtonsoft.Json.JsonPropertyAttribute("updateMetadata")] public virtual UpdateMetadataArguments UpdateMetadata { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Identifies one claim request. public class PartnerClaim : Google.Apis.Requests.IDirectResponseSchema { /// Optional. The ID of the configuration applied to the device section. [Newtonsoft.Json.JsonPropertyAttribute("configurationId")] public virtual System.Nullable ConfigurationId { get; set; } /// The ID of the customer for whom the device is being claimed. [Newtonsoft.Json.JsonPropertyAttribute("customerId")] public virtual System.Nullable CustomerId { get; set; } /// Required. Required. Device identifier of the device. [Newtonsoft.Json.JsonPropertyAttribute("deviceIdentifier")] public virtual DeviceIdentifier DeviceIdentifier { get; set; } /// Required. The metadata to attach to the device at claim. [Newtonsoft.Json.JsonPropertyAttribute("deviceMetadata")] public virtual DeviceMetadata DeviceMetadata { get; set; } /// The Google Workspace customer ID. [Newtonsoft.Json.JsonPropertyAttribute("googleWorkspaceCustomerId")] public virtual string GoogleWorkspaceCustomerId { get; set; } /// Optional. Must and can only be set for Chrome OS devices. [Newtonsoft.Json.JsonPropertyAttribute("preProvisioningToken")] public virtual string PreProvisioningToken { get; set; } /// Required. The section type of the device's provisioning record. [Newtonsoft.Json.JsonPropertyAttribute("sectionType")] public virtual string SectionType { get; set; } /// /// Optional. Must and can only be set when DeviceProvisioningSectionType is SECTION_TYPE_SIM_LOCK. The unique /// identifier of the SimLock profile. /// [Newtonsoft.Json.JsonPropertyAttribute("simlockProfileId")] public virtual System.Nullable SimlockProfileId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Identifies one unclaim request. public class PartnerUnclaim : Google.Apis.Requests.IDirectResponseSchema { /// Required. Device ID of the device. [Newtonsoft.Json.JsonPropertyAttribute("deviceId")] public virtual System.Nullable DeviceId { get; set; } /// Required. Device identifier of the device. [Newtonsoft.Json.JsonPropertyAttribute("deviceIdentifier")] public virtual DeviceIdentifier DeviceIdentifier { get; set; } /// Required. The section type of the device's provisioning record. [Newtonsoft.Json.JsonPropertyAttribute("sectionType")] public virtual string SectionType { get; set; } /// /// Optional. The duration of the vacation unlock starting from when the request is processed. (1 day is treated /// as 24 hours) /// [Newtonsoft.Json.JsonPropertyAttribute("vacationModeDays")] public virtual System.Nullable VacationModeDays { get; set; } private string _vacationModeExpireTimeRaw; private object _vacationModeExpireTime; /// Optional. The expiration time of the vacation unlock. [Newtonsoft.Json.JsonPropertyAttribute("vacationModeExpireTime")] public virtual string VacationModeExpireTimeRaw { get => _vacationModeExpireTimeRaw; set { _vacationModeExpireTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _vacationModeExpireTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use VacationModeExpireTimeDateTimeOffset instead.")] public virtual object VacationModeExpireTime { get => _vacationModeExpireTime; set { _vacationModeExpireTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _vacationModeExpireTime = value; } } /// /// representation of . /// [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? VacationModeExpireTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(VacationModeExpireTimeRaw); set => VacationModeExpireTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// The ETag of the item. public virtual string ETag { get; set; } } /// Captures the processing status for each device in the operation. public class PerDeviceStatusInBatch : Google.Apis.Requests.IDirectResponseSchema { /// If processing succeeds, the device ID of the device. [Newtonsoft.Json.JsonPropertyAttribute("deviceId")] public virtual System.Nullable DeviceId { get; set; } /// If processing fails, the error type. [Newtonsoft.Json.JsonPropertyAttribute("errorIdentifier")] public virtual string ErrorIdentifier { get; set; } /// If processing fails, a developer message explaining what went wrong. [Newtonsoft.Json.JsonPropertyAttribute("errorMessage")] public virtual string ErrorMessage { get; set; } /// The result status of the device after processing. [Newtonsoft.Json.JsonPropertyAttribute("status")] public virtual string Status { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// 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). /// public class Status : Google.Apis.Requests.IDirectResponseSchema { /// The status code, which should be an enum value of google.rpc.Code. [Newtonsoft.Json.JsonPropertyAttribute("code")] public virtual System.Nullable Code { get; set; } /// /// A list of messages that carry the error details. There is a common set of message types for APIs to use. /// [Newtonsoft.Json.JsonPropertyAttribute("details")] public virtual System.Collections.Generic.IList> Details { get; set; } /// /// 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. /// [Newtonsoft.Json.JsonPropertyAttribute("message")] public virtual string Message { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Request message to unclaim a device. public class UnclaimDeviceRequest : Google.Apis.Requests.IDirectResponseSchema { /// Required. The device ID returned by `ClaimDevice`. [Newtonsoft.Json.JsonPropertyAttribute("deviceId")] public virtual System.Nullable DeviceId { get; set; } /// Required. The device identifier you used when you claimed this device. [Newtonsoft.Json.JsonPropertyAttribute("deviceIdentifier")] public virtual DeviceIdentifier DeviceIdentifier { get; set; } /// Required. The section type of the device's provisioning record. [Newtonsoft.Json.JsonPropertyAttribute("sectionType")] public virtual string SectionType { get; set; } /// /// The duration of the vacation unlock starting from when the request is processed. (1 day is treated as 24 /// hours) /// [Newtonsoft.Json.JsonPropertyAttribute("vacationModeDays")] public virtual System.Nullable VacationModeDays { get; set; } private string _vacationModeExpireTimeRaw; private object _vacationModeExpireTime; /// The expiration time of the vacation unlock. [Newtonsoft.Json.JsonPropertyAttribute("vacationModeExpireTime")] public virtual string VacationModeExpireTimeRaw { get => _vacationModeExpireTimeRaw; set { _vacationModeExpireTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _vacationModeExpireTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use VacationModeExpireTimeDateTimeOffset instead.")] public virtual object VacationModeExpireTime { get => _vacationModeExpireTime; set { _vacationModeExpireTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _vacationModeExpireTime = value; } } /// /// representation of . /// [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? VacationModeExpireTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(VacationModeExpireTimeRaw); set => VacationModeExpireTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// The ETag of the item. public virtual string ETag { get; set; } } /// Request to unclaim devices asynchronously in batch. public class UnclaimDevicesRequest : Google.Apis.Requests.IDirectResponseSchema { /// Required. The list of devices to unclaim. [Newtonsoft.Json.JsonPropertyAttribute("unclaims")] public virtual System.Collections.Generic.IList Unclaims { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Request to update device metadata in batch. public class UpdateDeviceMetadataInBatchRequest : Google.Apis.Requests.IDirectResponseSchema { /// Required. The list of metadata updates. [Newtonsoft.Json.JsonPropertyAttribute("updates")] public virtual System.Collections.Generic.IList Updates { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Request to set metadata for a device. public class UpdateDeviceMetadataRequest : Google.Apis.Requests.IDirectResponseSchema { /// Required. The metadata to attach to the device. [Newtonsoft.Json.JsonPropertyAttribute("deviceMetadata")] public virtual DeviceMetadata DeviceMetadata { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Identifies metadata updates to one device. public class UpdateMetadataArguments : Google.Apis.Requests.IDirectResponseSchema { /// Required. Device ID of the device. [Newtonsoft.Json.JsonPropertyAttribute("deviceId")] public virtual System.Nullable DeviceId { get; set; } /// Required. Device identifier. [Newtonsoft.Json.JsonPropertyAttribute("deviceIdentifier")] public virtual DeviceIdentifier DeviceIdentifier { get; set; } /// Required. The metadata to update. [Newtonsoft.Json.JsonPropertyAttribute("deviceMetadata")] public virtual DeviceMetadata DeviceMetadata { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } }