// 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.AndroidManagement.v1 { /// The AndroidManagement Service. public class AndroidManagementService : 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 AndroidManagementService() : this(new Google.Apis.Services.BaseClientService.Initializer()) { } /// Constructs a new service. /// The service initializer. public AndroidManagementService(Google.Apis.Services.BaseClientService.Initializer initializer) : base(initializer) { Enterprises = new EnterprisesResource(this); ProvisioningInfo = new ProvisioningInfoResource(this); SignupUrls = new SignupUrlsResource(this); BaseUri = GetEffectiveUri(BaseUriOverride, "https://androidmanagement.googleapis.com/"); BatchUri = GetEffectiveUri(null, "https://androidmanagement.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 => "androidmanagement"; /// 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"; /// Available OAuth 2.0 scopes for use with the Android Management API. public class Scope { /// Manage Android devices and apps for your customers public static string Androidmanagement = "https://www.googleapis.com/auth/androidmanagement"; } /// Available OAuth 2.0 scope constants for use with the Android Management API. public static class ScopeConstants { /// Manage Android devices and apps for your customers public const string Androidmanagement = "https://www.googleapis.com/auth/androidmanagement"; } /// Gets the Enterprises resource. public virtual EnterprisesResource Enterprises { get; } /// Gets the ProvisioningInfo resource. public virtual ProvisioningInfoResource ProvisioningInfo { get; } /// Gets the SignupUrls resource. public virtual SignupUrlsResource SignupUrls { get; } } /// A base abstract class for AndroidManagement requests. public abstract class AndroidManagementBaseServiceRequest : Google.Apis.Requests.ClientServiceRequest { /// Constructs a new AndroidManagementBaseServiceRequest instance. protected AndroidManagementBaseServiceRequest(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 AndroidManagement 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 "enterprises" collection of methods. public class EnterprisesResource { private const string Resource = "enterprises"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public EnterprisesResource(Google.Apis.Services.IClientService service) { this.service = service; Applications = new ApplicationsResource(service); Devices = new DevicesResource(service); EnrollmentTokens = new EnrollmentTokensResource(service); MigrationTokens = new MigrationTokensResource(service); Policies = new PoliciesResource(service); WebApps = new WebAppsResource(service); WebTokens = new WebTokensResource(service); } /// Gets the Applications resource. public virtual ApplicationsResource Applications { get; } /// The "applications" collection of methods. public class ApplicationsResource { private const string Resource = "applications"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public ApplicationsResource(Google.Apis.Services.IClientService service) { this.service = service; } /// Gets info about an application. /// /// The name of the application in the form enterprises/{enterpriseId}/applications/{package_name}. /// public virtual GetRequest Get(string name) { return new GetRequest(this.service, name); } /// Gets info about an application. public class GetRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Get request. public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// /// The name of the application in the form enterprises/{enterpriseId}/applications/{package_name}. /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// /// The preferred language for localized application info, as a BCP47 tag (e.g. "en-US", "de"). If not /// specified the default language of the application will be used. /// [Google.Apis.Util.RequestParameterAttribute("languageCode", Google.Apis.Util.RequestParameterType.Query)] public virtual string LanguageCode { get; 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 = @"^enterprises/[^/]+/applications/[^/]+$", }); RequestParameters.Add("languageCode", new Google.Apis.Discovery.Parameter { Name = "languageCode", 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; Operations = new OperationsResource(service); } /// Gets the Operations resource. public virtual OperationsResource Operations { get; } /// 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; } /// /// Starts asynchronous cancellation on a long-running operation. The server makes a best effort to /// cancel the operation, but success is not guaranteed. If the server doesn't support this method, it /// returns google.rpc.Code.UNIMPLEMENTED. Clients can use Operations.GetOperation or other methods to /// check whether the cancellation succeeded or whether the operation completed despite cancellation. On /// successful cancellation, the operation is not deleted; instead, it becomes an operation with an /// Operation.error value with a google.rpc.Status.code of 1, corresponding to Code.CANCELLED. /// /// The name of the operation resource to be cancelled. public virtual CancelRequest Cancel(string name) { return new CancelRequest(this.service, name); } /// /// Starts asynchronous cancellation on a long-running operation. The server makes a best effort to /// cancel the operation, but success is not guaranteed. If the server doesn't support this method, it /// returns google.rpc.Code.UNIMPLEMENTED. Clients can use Operations.GetOperation or other methods to /// check whether the cancellation succeeded or whether the operation completed despite cancellation. On /// successful cancellation, the operation is not deleted; instead, it becomes an operation with an /// Operation.error value with a google.rpc.Status.code of 1, corresponding to Code.CANCELLED. /// public class CancelRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Cancel request. public CancelRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// The name of the operation resource to be cancelled. [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 => "cancel"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/{+name}:cancel"; /// Initializes Cancel 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 = @"^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", }); } } /// /// 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 : AndroidManagementBaseServiceRequest { /// 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 = @"^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", }); } } /// /// Lists operations that match the specified filter in the request. If the server doesn't support this /// method, it returns UNIMPLEMENTED. /// /// The name of the operation's parent resource. public virtual ListRequest List(string name) { return new ListRequest(this.service, name); } /// /// Lists operations that match the specified filter in the request. If the server doesn't support this /// method, it returns UNIMPLEMENTED. /// public class ListRequest : AndroidManagementBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// The name of the operation's parent resource. [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// The standard list filter. [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } /// The standard list page size. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } /// /// When set to true, operations that are reachable are returned as normal, and those that are /// unreachable are returned in the ListOperationsResponse.unreachable field.This can only be true /// when reading across collections. For example, when parent is set to /// "projects/example/locations/-".This field is not supported by default and will result in an /// UNIMPLEMENTED error if set unless explicitly documented otherwise in service or product specific /// documentation. /// [Google.Apis.Util.RequestParameterAttribute("returnPartialSuccess", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable ReturnPartialSuccess { 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/{+name}"; /// Initializes List 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 = @"^enterprises/[^/]+/devices/[^/]+/operations$", }); RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter { Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); 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, }); RequestParameters.Add("returnPartialSuccess", new Google.Apis.Discovery.Parameter { Name = "returnPartialSuccess", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } } /// /// Deletes a device. This operation attempts to wipe the device but this is not guaranteed to succeed if /// the device is offline for an extended period. Deleted devices do not show up in enterprises.devices.list /// calls and a 404 is returned from enterprises.devices.get. /// /// /// The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}. /// public virtual DeleteRequest Delete(string name) { return new DeleteRequest(this.service, name); } /// /// Deletes a device. This operation attempts to wipe the device but this is not guaranteed to succeed if /// the device is offline for an extended period. Deleted devices do not show up in enterprises.devices.list /// calls and a 404 is returned from enterprises.devices.get. /// public class DeleteRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Delete request. public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}. [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// Optional flags that control the device wiping behavior. /// /// Use this property to set a single value for the parameter, or to set /// multiple values. Do not set both properties. /// [Google.Apis.Util.RequestParameterAttribute("wipeDataFlags", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable WipeDataFlags { get; set; } /// Optional flags that control the device wiping behavior. /// /// Use this property to set one or more values for the parameter. Do not set both this property and /// . /// [Google.Apis.Util.RequestParameterAttribute("wipeDataFlags", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable WipeDataFlagsList { get; set; } /// Optional flags that control the device wiping behavior. public enum WipeDataFlagsEnum { /// This value is ignored. [Google.Apis.Util.StringValueAttribute("WIPE_DATA_FLAG_UNSPECIFIED")] WIPEDATAFLAGUNSPECIFIED = 0, /// Preserve the factory reset protection data on the device. [Google.Apis.Util.StringValueAttribute("PRESERVE_RESET_PROTECTION_DATA")] PRESERVERESETPROTECTIONDATA = 1, /// Additionally wipe the device's external storage (such as SD cards). [Google.Apis.Util.StringValueAttribute("WIPE_EXTERNAL_STORAGE")] WIPEEXTERNALSTORAGE = 2, /// /// For company-owned devices, this removes all eSIMs from the device when the device is wiped. In /// personally-owned devices, this will remove managed eSIMs (eSIMs which are added via the ADD_ESIM /// command) on the devices and no personally owned eSIMs will be removed. /// [Google.Apis.Util.StringValueAttribute("WIPE_ESIMS")] WIPEESIMS = 3, } /// /// Optional. A short message displayed to the user before wiping the work profile on personal devices. /// This has no effect on company owned devices. The maximum message length is 200 characters. /// [Google.Apis.Util.RequestParameterAttribute("wipeReasonMessage", Google.Apis.Util.RequestParameterType.Query)] public virtual string WipeReasonMessage { get; 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 = @"^enterprises/[^/]+/devices/[^/]+$", }); RequestParameters.Add("wipeDataFlags", new Google.Apis.Discovery.Parameter { Name = "wipeDataFlags", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("wipeReasonMessage", new Google.Apis.Discovery.Parameter { Name = "wipeReasonMessage", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } /// Gets a device. Deleted devices will respond with a 404 error. /// /// The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}. /// public virtual GetRequest Get(string name) { return new GetRequest(this.service, name); } /// Gets a device. Deleted devices will respond with a 404 error. public class GetRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Get request. public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}. [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 = @"^enterprises/[^/]+/devices/[^/]+$", }); } } /// /// Issues a command to a device. The Operation resource returned contains a Command in its metadata field. /// Use the get operation method to get the status of the command. /// /// The body of the request. /// /// The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}. /// public virtual IssueCommandRequest IssueCommand(Google.Apis.AndroidManagement.v1.Data.Command body, string name) { return new IssueCommandRequest(this.service, body, name); } /// /// Issues a command to a device. The Operation resource returned contains a Command in its metadata field. /// Use the get operation method to get the status of the command. /// public class IssueCommandRequest : AndroidManagementBaseServiceRequest { /// Constructs a new IssueCommand request. public IssueCommandRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidManagement.v1.Data.Command body, string name) : base(service) { Name = name; Body = body; InitParameters(); } /// The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}. [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidManagement.v1.Data.Command Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "issueCommand"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/{+name}:issueCommand"; /// Initializes IssueCommand 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 = @"^enterprises/[^/]+/devices/[^/]+$", }); } } /// /// Lists devices for a given enterprise. Deleted devices are not returned in the response. /// /// The name of the enterprise in the form enterprises/{enterpriseId}. public virtual ListRequest List(string parent) { return new ListRequest(this.service, parent); } /// /// Lists devices for a given enterprise. Deleted devices are not returned in the response. /// public class ListRequest : AndroidManagementBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) { Parent = parent; InitParameters(); } /// The name of the enterprise in the form enterprises/{enterpriseId}. [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// /// The requested page size. If unspecified, at most 10 devices will be returned. The maximum value is /// 100; values above 100 will be coerced to 100. The limits can change over time. /// [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}/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 = @"^enterprises/[^/]+$", }); 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, }); } } /// Updates a device. /// The body of the request. /// /// The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}. /// public virtual PatchRequest Patch(Google.Apis.AndroidManagement.v1.Data.Device body, string name) { return new PatchRequest(this.service, body, name); } /// Updates a device. public class PatchRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Patch request. public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidManagement.v1.Data.Device body, string name) : base(service) { Name = name; Body = body; InitParameters(); } /// The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}. [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// /// The field mask indicating the fields to update. If not set, all modifiable fields will be modified. /// [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.AndroidManagement.v1.Data.Device 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 = @"^enterprises/[^/]+/devices/[^/]+$", }); RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter { Name = "updateMask", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } } /// Gets the EnrollmentTokens resource. public virtual EnrollmentTokensResource EnrollmentTokens { get; } /// The "enrollmentTokens" collection of methods. public class EnrollmentTokensResource { private const string Resource = "enrollmentTokens"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public EnrollmentTokensResource(Google.Apis.Services.IClientService service) { this.service = service; } /// /// Creates an enrollment token for a given enterprise. It's up to the caller's responsibility to manage the /// lifecycle of newly created tokens and deleting them when they're not intended to be used anymore. /// /// The body of the request. /// The name of the enterprise in the form enterprises/{enterpriseId}. public virtual CreateRequest Create(Google.Apis.AndroidManagement.v1.Data.EnrollmentToken body, string parent) { return new CreateRequest(this.service, body, parent); } /// /// Creates an enrollment token for a given enterprise. It's up to the caller's responsibility to manage the /// lifecycle of newly created tokens and deleting them when they're not intended to be used anymore. /// public class CreateRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Create request. public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidManagement.v1.Data.EnrollmentToken body, string parent) : base(service) { Parent = parent; Body = body; InitParameters(); } /// The name of the enterprise in the form enterprises/{enterpriseId}. [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.AndroidManagement.v1.Data.EnrollmentToken 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}/enrollmentTokens"; /// 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 = @"^enterprises/[^/]+$", }); } } /// /// Deletes an enrollment token. This operation invalidates the token, preventing its future use. /// /// /// The name of the enrollment token in the form /// enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}. /// public virtual DeleteRequest Delete(string name) { return new DeleteRequest(this.service, name); } /// /// Deletes an enrollment token. This operation invalidates the token, preventing its future use. /// public class DeleteRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Delete request. public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// /// The name of the enrollment token in the form /// enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}. /// [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 = @"^enterprises/[^/]+/enrollmentTokens/[^/]+$", }); } } /// /// Gets an active, unexpired enrollment token. A partial view of the enrollment token is returned. Only the /// following fields are populated: name, expirationTimestamp, allowPersonalUsage, value, qrCode. This /// method is meant to help manage active enrollment tokens lifecycle. For security reasons, it's /// recommended to delete active enrollment tokens as soon as they're not intended to be used anymore. /// /// /// Required. The name of the enrollment token in the form /// enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}. /// public virtual GetRequest Get(string name) { return new GetRequest(this.service, name); } /// /// Gets an active, unexpired enrollment token. A partial view of the enrollment token is returned. Only the /// following fields are populated: name, expirationTimestamp, allowPersonalUsage, value, qrCode. This /// method is meant to help manage active enrollment tokens lifecycle. For security reasons, it's /// recommended to delete active enrollment tokens as soon as they're not intended to be used anymore. /// public class GetRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Get request. public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// /// Required. The name of the enrollment token in the form /// enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}. /// [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 = @"^enterprises/[^/]+/enrollmentTokens/[^/]+$", }); } } /// /// Lists active, unexpired enrollment tokens for a given enterprise. The list items contain only a partial /// view of EnrollmentToken object. Only the following fields are populated: name, expirationTimestamp, /// allowPersonalUsage, value, qrCode. This method is meant to help manage active enrollment tokens /// lifecycle. For security reasons, it's recommended to delete active enrollment tokens as soon as they're /// not intended to be used anymore. /// /// /// Required. The name of the enterprise in the form enterprises/{enterpriseId}. /// public virtual ListRequest List(string parent) { return new ListRequest(this.service, parent); } /// /// Lists active, unexpired enrollment tokens for a given enterprise. The list items contain only a partial /// view of EnrollmentToken object. Only the following fields are populated: name, expirationTimestamp, /// allowPersonalUsage, value, qrCode. This method is meant to help manage active enrollment tokens /// lifecycle. For security reasons, it's recommended to delete active enrollment tokens as soon as they're /// not intended to be used anymore. /// public class ListRequest : AndroidManagementBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) { Parent = parent; InitParameters(); } /// Required. The name of the enterprise in the form enterprises/{enterpriseId}. [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// /// The requested page size. The service may return fewer than this value. If unspecified, at most 10 /// items will be returned. The maximum value is 100; values above 100 will be coerced to 100. /// [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}/enrollmentTokens"; /// 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 = @"^enterprises/[^/]+$", }); 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 MigrationTokens resource. public virtual MigrationTokensResource MigrationTokens { get; } /// The "migrationTokens" collection of methods. public class MigrationTokensResource { private const string Resource = "migrationTokens"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public MigrationTokensResource(Google.Apis.Services.IClientService service) { this.service = service; } /// /// Creates a migration token, to migrate an existing device from being managed by the EMM's Device Policy /// Controller (DPC) to being managed by the Android Management API. See the guide /// (https://developers.google.com/android/management/dpc-migration) for more details. /// /// The body of the request. /// /// Required. The enterprise in which this migration token is created. This must be the same enterprise /// which already manages the device in the Play EMM API. Format: enterprises/{enterprise} /// public virtual CreateRequest Create(Google.Apis.AndroidManagement.v1.Data.MigrationToken body, string parent) { return new CreateRequest(this.service, body, parent); } /// /// Creates a migration token, to migrate an existing device from being managed by the EMM's Device Policy /// Controller (DPC) to being managed by the Android Management API. See the guide /// (https://developers.google.com/android/management/dpc-migration) for more details. /// public class CreateRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Create request. public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidManagement.v1.Data.MigrationToken body, string parent) : base(service) { Parent = parent; Body = body; InitParameters(); } /// /// Required. The enterprise in which this migration token is created. This must be the same enterprise /// which already manages the device in the Play EMM API. Format: enterprises/{enterprise} /// [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.AndroidManagement.v1.Data.MigrationToken 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}/migrationTokens"; /// 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 = @"^enterprises/[^/]+$", }); } } /// Gets a migration token. /// /// Required. The name of the migration token to retrieve. Format: /// enterprises/{enterprise}/migrationTokens/{migration_token} /// public virtual GetRequest Get(string name) { return new GetRequest(this.service, name); } /// Gets a migration token. public class GetRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Get request. public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// /// Required. The name of the migration token to retrieve. Format: /// enterprises/{enterprise}/migrationTokens/{migration_token} /// [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 = @"^enterprises/[^/]+/migrationTokens/[^/]+$", }); } } /// Lists migration tokens. /// /// Required. The enterprise which the migration tokens belong to. Format: enterprises/{enterprise} /// public virtual ListRequest List(string parent) { return new ListRequest(this.service, parent); } /// Lists migration tokens. public class ListRequest : AndroidManagementBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) { Parent = parent; InitParameters(); } /// /// Required. The enterprise which the migration tokens belong to. Format: enterprises/{enterprise} /// [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// /// The maximum number of migration tokens to return. Fewer migration tokens may be returned. If /// unspecified, at most 100 migration tokens will be returned. The maximum value is 100; values above /// 100 will be coerced to 100. /// [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } /// /// A page token, received from a previous ListMigrationTokens call. Provide this to retrieve the /// subsequent page.When paginating, all other parameters provided to ListMigrationTokens must match the /// call that provided the page token. /// [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}/migrationTokens"; /// 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 = @"^enterprises/[^/]+$", }); 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 Policies resource. public virtual PoliciesResource Policies { get; } /// The "policies" collection of methods. public class PoliciesResource { private const string Resource = "policies"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public PoliciesResource(Google.Apis.Services.IClientService service) { this.service = service; } /// /// Deletes a policy. This operation is only permitted if no devices are currently referencing the policy. /// /// /// The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}. /// public virtual DeleteRequest Delete(string name) { return new DeleteRequest(this.service, name); } /// /// Deletes a policy. This operation is only permitted if no devices are currently referencing the policy. /// public class DeleteRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Delete request. public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// /// The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}. /// [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 = @"^enterprises/[^/]+/policies/[^/]+$", }); } } /// Gets a policy. /// /// The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}. /// public virtual GetRequest Get(string name) { return new GetRequest(this.service, name); } /// Gets a policy. public class GetRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Get request. public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// /// The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}. /// [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 = @"^enterprises/[^/]+/policies/[^/]+$", }); } } /// Lists policies for a given enterprise. /// The name of the enterprise in the form enterprises/{enterpriseId}. public virtual ListRequest List(string parent) { return new ListRequest(this.service, parent); } /// Lists policies for a given enterprise. public class ListRequest : AndroidManagementBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) { Parent = parent; InitParameters(); } /// The name of the enterprise in the form enterprises/{enterpriseId}. [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// The requested page size. The actual page size may be fixed to a min or max value. [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}/policies"; /// 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 = @"^enterprises/[^/]+$", }); 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, }); } } /// Updates or creates applications in a policy. /// The body of the request. /// /// Required. The name of the Policy containing the ApplicationPolicy objects to be updated, in the form /// enterprises/{enterpriseId}/policies/{policyId}. /// public virtual ModifyPolicyApplicationsRequest ModifyPolicyApplications(Google.Apis.AndroidManagement.v1.Data.ModifyPolicyApplicationsRequest body, string name) { return new ModifyPolicyApplicationsRequest(this.service, body, name); } /// Updates or creates applications in a policy. public class ModifyPolicyApplicationsRequest : AndroidManagementBaseServiceRequest { /// Constructs a new ModifyPolicyApplications request. public ModifyPolicyApplicationsRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidManagement.v1.Data.ModifyPolicyApplicationsRequest body, string name) : base(service) { Name = name; Body = body; InitParameters(); } /// /// Required. The name of the Policy containing the ApplicationPolicy objects to be updated, in the form /// enterprises/{enterpriseId}/policies/{policyId}. /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidManagement.v1.Data.ModifyPolicyApplicationsRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "modifyPolicyApplications"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/{+name}:modifyPolicyApplications"; /// Initializes ModifyPolicyApplications 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 = @"^enterprises/[^/]+/policies/[^/]+$", }); } } /// Updates or creates a policy. /// The body of the request. /// /// The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}. /// public virtual PatchRequest Patch(Google.Apis.AndroidManagement.v1.Data.Policy body, string name) { return new PatchRequest(this.service, body, name); } /// Updates or creates a policy. public class PatchRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Patch request. public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidManagement.v1.Data.Policy body, string name) : base(service) { Name = name; Body = body; InitParameters(); } /// /// The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}. /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// /// The field mask indicating the fields to update. If not set, all modifiable fields will be modified. /// [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.AndroidManagement.v1.Data.Policy 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 = @"^enterprises/[^/]+/policies/[^/]+$", }); RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter { Name = "updateMask", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } /// Removes applications in a policy. /// The body of the request. /// /// Required. The name of the policy containing the ApplicationPolicy objects to be removed, in the form /// enterprises/{enterpriseId}/policies/{policyId}. /// public virtual RemovePolicyApplicationsRequest RemovePolicyApplications(Google.Apis.AndroidManagement.v1.Data.RemovePolicyApplicationsRequest body, string name) { return new RemovePolicyApplicationsRequest(this.service, body, name); } /// Removes applications in a policy. public class RemovePolicyApplicationsRequest : AndroidManagementBaseServiceRequest { /// Constructs a new RemovePolicyApplications request. public RemovePolicyApplicationsRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidManagement.v1.Data.RemovePolicyApplicationsRequest body, string name) : base(service) { Name = name; Body = body; InitParameters(); } /// /// Required. The name of the policy containing the ApplicationPolicy objects to be removed, in the form /// enterprises/{enterpriseId}/policies/{policyId}. /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidManagement.v1.Data.RemovePolicyApplicationsRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "removePolicyApplications"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/{+name}:removePolicyApplications"; /// Initializes RemovePolicyApplications 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 = @"^enterprises/[^/]+/policies/[^/]+$", }); } } } /// Gets the WebApps resource. public virtual WebAppsResource WebApps { get; } /// The "webApps" collection of methods. public class WebAppsResource { private const string Resource = "webApps"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public WebAppsResource(Google.Apis.Services.IClientService service) { this.service = service; } /// Creates a web app. /// The body of the request. /// The name of the enterprise in the form enterprises/{enterpriseId}. public virtual CreateRequest Create(Google.Apis.AndroidManagement.v1.Data.WebApp body, string parent) { return new CreateRequest(this.service, body, parent); } /// Creates a web app. public class CreateRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Create request. public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidManagement.v1.Data.WebApp body, string parent) : base(service) { Parent = parent; Body = body; InitParameters(); } /// The name of the enterprise in the form enterprises/{enterpriseId}. [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.AndroidManagement.v1.Data.WebApp 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}/webApps"; /// 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 = @"^enterprises/[^/]+$", }); } } /// Deletes a web app. /// /// The name of the web app in the form enterprises/{enterpriseId}/webApps/{packageName}. /// public virtual DeleteRequest Delete(string name) { return new DeleteRequest(this.service, name); } /// Deletes a web app. public class DeleteRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Delete request. public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// /// The name of the web app in the form enterprises/{enterpriseId}/webApps/{packageName}. /// [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 = @"^enterprises/[^/]+/webApps/[^/]+$", }); } } /// Gets a web app. /// /// The name of the web app in the form enterprises/{enterpriseId}/webApps/{packageName}. /// public virtual GetRequest Get(string name) { return new GetRequest(this.service, name); } /// Gets a web app. public class GetRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Get request. public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// /// The name of the web app in the form enterprises/{enterpriseId}/webApps/{packageName}. /// [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 = @"^enterprises/[^/]+/webApps/[^/]+$", }); } } /// Lists web apps for a given enterprise. /// The name of the enterprise in the form enterprises/{enterpriseId}. public virtual ListRequest List(string parent) { return new ListRequest(this.service, parent); } /// Lists web apps for a given enterprise. public class ListRequest : AndroidManagementBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) { Parent = parent; InitParameters(); } /// The name of the enterprise in the form enterprises/{enterpriseId}. [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } /// /// The requested page size. This is a hint and the actual page size in the response may be different. /// [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}/webApps"; /// 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 = @"^enterprises/[^/]+$", }); 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, }); } } /// Updates a web app. /// The body of the request. /// /// The name of the web app in the form enterprises/{enterpriseId}/webApps/{packageName}. /// public virtual PatchRequest Patch(Google.Apis.AndroidManagement.v1.Data.WebApp body, string name) { return new PatchRequest(this.service, body, name); } /// Updates a web app. public class PatchRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Patch request. public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidManagement.v1.Data.WebApp body, string name) : base(service) { Name = name; Body = body; InitParameters(); } /// /// The name of the web app in the form enterprises/{enterpriseId}/webApps/{packageName}. /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// /// The field mask indicating the fields to update. If not set, all modifiable fields will be modified. /// [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.AndroidManagement.v1.Data.WebApp 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 = @"^enterprises/[^/]+/webApps/[^/]+$", }); RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter { Name = "updateMask", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } } /// Gets the WebTokens resource. public virtual WebTokensResource WebTokens { get; } /// The "webTokens" collection of methods. public class WebTokensResource { private const string Resource = "webTokens"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public WebTokensResource(Google.Apis.Services.IClientService service) { this.service = service; } /// /// Creates a web token to access an embeddable managed Google Play web UI for a given enterprise. /// /// The body of the request. /// The name of the enterprise in the form enterprises/{enterpriseId}. public virtual CreateRequest Create(Google.Apis.AndroidManagement.v1.Data.WebToken body, string parent) { return new CreateRequest(this.service, body, parent); } /// /// Creates a web token to access an embeddable managed Google Play web UI for a given enterprise. /// public class CreateRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Create request. public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidManagement.v1.Data.WebToken body, string parent) : base(service) { Parent = parent; Body = body; InitParameters(); } /// The name of the enterprise in the form enterprises/{enterpriseId}. [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.AndroidManagement.v1.Data.WebToken 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}/webTokens"; /// 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 = @"^enterprises/[^/]+$", }); } } } /// /// Creates an enterprise. This is the last step in the enterprise signup flow. See also: SigninDetail /// /// The body of the request. public virtual CreateRequest Create(Google.Apis.AndroidManagement.v1.Data.Enterprise body) { return new CreateRequest(this.service, body); } /// /// Creates an enterprise. This is the last step in the enterprise signup flow. See also: SigninDetail /// public class CreateRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Create request. public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidManagement.v1.Data.Enterprise body) : base(service) { Body = body; InitParameters(); } /// /// Whether the enterprise admin has seen and agreed to the managed Google Play Agreement /// (https://www.android.com/enterprise/terms/). Do not set this field for any customer-managed enterprise /// (https://developers.google.com/android/management/create-enterprise#customer-managed_enterprises). Set /// this to field to true for all EMM-managed enterprises /// (https://developers.google.com/android/management/create-enterprise#emm-managed_enterprises). /// [Google.Apis.Util.RequestParameterAttribute("agreementAccepted", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable AgreementAccepted { get; set; } /// /// The enterprise token appended to the callback URL. Set this when creating a customer-managed enterprise /// (https://developers.google.com/android/management/create-enterprise#customer-managed_enterprises) and /// not when creating a deprecated EMM-managed enterprise /// (https://developers.google.com/android/management/create-enterprise#emm-managed_enterprises). /// [Google.Apis.Util.RequestParameterAttribute("enterpriseToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string EnterpriseToken { get; set; } /// The ID of the Google Cloud Platform project which will own the enterprise. [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ProjectId { get; set; } /// /// The name of the SignupUrl used to sign up for the enterprise. Set this when creating a customer-managed /// enterprise /// (https://developers.google.com/android/management/create-enterprise#customer-managed_enterprises) and /// not when creating a deprecated EMM-managed enterprise /// (https://developers.google.com/android/management/create-enterprise#emm-managed_enterprises). /// [Google.Apis.Util.RequestParameterAttribute("signupUrlName", Google.Apis.Util.RequestParameterType.Query)] public virtual string SignupUrlName { get; set; } /// Gets or sets the body of this request. Google.Apis.AndroidManagement.v1.Data.Enterprise 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/enterprises"; /// Initializes Create parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("agreementAccepted", new Google.Apis.Discovery.Parameter { Name = "agreementAccepted", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("enterpriseToken", new Google.Apis.Discovery.Parameter { Name = "enterpriseToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("projectId", new Google.Apis.Discovery.Parameter { Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("signupUrlName", new Google.Apis.Discovery.Parameter { Name = "signupUrlName", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } /// /// Permanently deletes an enterprise and all accounts and data associated with it. Warning: this will result in /// a cascaded deletion of all AM API devices associated with the deleted enterprise. Only available for /// EMM-managed enterprises. /// /// The name of the enterprise in the form enterprises/{enterpriseId}. public virtual DeleteRequest Delete(string name) { return new DeleteRequest(this.service, name); } /// /// Permanently deletes an enterprise and all accounts and data associated with it. Warning: this will result in /// a cascaded deletion of all AM API devices associated with the deleted enterprise. Only available for /// EMM-managed enterprises. /// public class DeleteRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Delete request. public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// The name of the enterprise in the form enterprises/{enterpriseId}. [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 = @"^enterprises/[^/]+$", }); } } /// /// Generates an enterprise upgrade URL to upgrade an existing managed Google Play Accounts enterprise to a /// managed Google domain. See the guide /// (https://developers.google.com/android/management/upgrade-an-enterprise) for more details. /// /// The body of the request. /// /// Required. The name of the enterprise to be upgraded in the form enterprises/{enterpriseId}. /// public virtual GenerateEnterpriseUpgradeUrlRequest GenerateEnterpriseUpgradeUrl(Google.Apis.AndroidManagement.v1.Data.GenerateEnterpriseUpgradeUrlRequest body, string name) { return new GenerateEnterpriseUpgradeUrlRequest(this.service, body, name); } /// /// Generates an enterprise upgrade URL to upgrade an existing managed Google Play Accounts enterprise to a /// managed Google domain. See the guide /// (https://developers.google.com/android/management/upgrade-an-enterprise) for more details. /// public class GenerateEnterpriseUpgradeUrlRequest : AndroidManagementBaseServiceRequest { /// Constructs a new GenerateEnterpriseUpgradeUrl request. public GenerateEnterpriseUpgradeUrlRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidManagement.v1.Data.GenerateEnterpriseUpgradeUrlRequest body, string name) : base(service) { Name = name; Body = body; InitParameters(); } /// /// Required. The name of the enterprise to be upgraded in the form enterprises/{enterpriseId}. /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// Gets or sets the body of this request. Google.Apis.AndroidManagement.v1.Data.GenerateEnterpriseUpgradeUrlRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. public override string MethodName => "generateEnterpriseUpgradeUrl"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. public override string RestPath => "v1/{+name}:generateEnterpriseUpgradeUrl"; /// Initializes GenerateEnterpriseUpgradeUrl 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 = @"^enterprises/[^/]+$", }); } } /// Gets an enterprise. /// The name of the enterprise in the form enterprises/{enterpriseId}. public virtual GetRequest Get(string name) { return new GetRequest(this.service, name); } /// Gets an enterprise. public class GetRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Get request. public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// The name of the enterprise in the form enterprises/{enterpriseId}. [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 = @"^enterprises/[^/]+$", }); } } /// Lists EMM-managed enterprises. Only BASIC fields are returned. public virtual ListRequest List() { return new ListRequest(this.service); } /// Lists EMM-managed enterprises. Only BASIC fields are returned. public class ListRequest : AndroidManagementBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service) : base(service) { InitParameters(); } /// The requested page size. The actual page size may be fixed to a min or max value. [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; } /// Required. The Cloud project ID of the EMM managing the enterprises. [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ProjectId { get; set; } /// Specifies which Enterprise fields to return. This method only supports BASIC. [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable View { get; set; } /// Specifies which Enterprise fields to return. This method only supports BASIC. public enum ViewEnum { /// The API will default to the BASIC view for the List method. [Google.Apis.Util.StringValueAttribute("ENTERPRISE_VIEW_UNSPECIFIED")] ENTERPRISEVIEWUNSPECIFIED = 0, /// Includes name and enterprise_display_name fields. [Google.Apis.Util.StringValueAttribute("BASIC")] BASIC = 1, } /// 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/enterprises"; /// 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, }); RequestParameters.Add("projectId", new Google.Apis.Discovery.Parameter { Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("view", new Google.Apis.Discovery.Parameter { Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } /// Updates an enterprise. See also: SigninDetail /// The body of the request. /// The name of the enterprise in the form enterprises/{enterpriseId}. public virtual PatchRequest Patch(Google.Apis.AndroidManagement.v1.Data.Enterprise body, string name) { return new PatchRequest(this.service, body, name); } /// Updates an enterprise. See also: SigninDetail public class PatchRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Patch request. public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.AndroidManagement.v1.Data.Enterprise body, string name) : base(service) { Name = name; Body = body; InitParameters(); } /// The name of the enterprise in the form enterprises/{enterpriseId}. [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } /// /// The field mask indicating the fields to update. If not set, all modifiable fields will be modified. /// [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.AndroidManagement.v1.Data.Enterprise 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 = @"^enterprises/[^/]+$", }); RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter { Name = "updateMask", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } } /// The "provisioningInfo" collection of methods. public class ProvisioningInfoResource { private const string Resource = "provisioningInfo"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public ProvisioningInfoResource(Google.Apis.Services.IClientService service) { this.service = service; } /// Get the device provisioning information by the identifier provided in the sign-in url. /// /// Required. The identifier that Android Device Policy passes to the 3P sign-in page in the form of /// provisioningInfo/{provisioning_info}. /// public virtual GetRequest Get(string name) { return new GetRequest(this.service, name); } /// Get the device provisioning information by the identifier provided in the sign-in url. public class GetRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Get request. public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; InitParameters(); } /// /// Required. The identifier that Android Device Policy passes to the 3P sign-in page in the form of /// provisioningInfo/{provisioning_info}. /// [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 = @"^provisioningInfo/[^/]+$", }); } } } /// The "signupUrls" collection of methods. public class SignupUrlsResource { private const string Resource = "signupUrls"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. public SignupUrlsResource(Google.Apis.Services.IClientService service) { this.service = service; } /// Creates an enterprise signup URL. public virtual CreateRequest Create() { return new CreateRequest(this.service); } /// Creates an enterprise signup URL. public class CreateRequest : AndroidManagementBaseServiceRequest { /// Constructs a new Create request. public CreateRequest(Google.Apis.Services.IClientService service) : base(service) { InitParameters(); } /// /// Optional. Email address used to prefill the admin field of the enterprise signup form. This value is a /// hint only and can be altered by the user. If allowedDomains is non-empty then this must belong to one of /// the allowedDomains. /// [Google.Apis.Util.RequestParameterAttribute("adminEmail", Google.Apis.Util.RequestParameterType.Query)] public virtual string AdminEmail { get; set; } /// /// Optional. A list of domains that are permitted for the admin email. The IT admin cannot enter an email /// address with a domain name that is not in this list. Subdomains of domains in this list are not allowed /// but can be allowed by adding a second entry which has *. prefixed to the domain name (e.g. /// *.example.com). If the field is not present or is an empty list then the IT admin is free to use any /// valid domain name. Personal email domains are always allowed, but will result in the creation of a /// managed Google Play Accounts enterprise. /// [Google.Apis.Util.RequestParameterAttribute("allowedDomains", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable AllowedDomains { get; set; } /// /// The callback URL that the admin will be redirected to after successfully creating an enterprise. Before /// redirecting there the system will add a query parameter to this URL named enterpriseToken which will /// contain an opaque token to be used for the create enterprise request. The URL will be parsed then /// reformatted in order to add the enterpriseToken parameter, so there may be some minor formatting /// changes. /// [Google.Apis.Util.RequestParameterAttribute("callbackUrl", Google.Apis.Util.RequestParameterType.Query)] public virtual string CallbackUrl { get; set; } /// The ID of the Google Cloud Platform project which will own the enterprise. [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ProjectId { get; set; } /// 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/signupUrls"; /// Initializes Create parameter list. protected override void InitParameters() { base.InitParameters(); RequestParameters.Add("adminEmail", new Google.Apis.Discovery.Parameter { Name = "adminEmail", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("allowedDomains", new Google.Apis.Discovery.Parameter { Name = "allowedDomains", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("callbackUrl", new Google.Apis.Discovery.Parameter { Name = "callbackUrl", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add("projectId", new Google.Apis.Discovery.Parameter { Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); } } } } namespace Google.Apis.AndroidManagement.v1.Data { /// A shell command was issued over ADB via “adb shell command”. public class AdbShellCommandEvent : Google.Apis.Requests.IDirectResponseSchema { /// /// Shell command that was issued over ADB via "adb shell command". Redacted to empty string on /// organization-owned managed profile devices. /// [Newtonsoft.Json.JsonPropertyAttribute("shellCmd")] public virtual string ShellCmd { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// An ADB interactive shell was opened via “adb shell”. Intentionally empty. public class AdbShellInteractiveEvent : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } /// Parameters associated with the ADD_ESIM command to add an eSIM profile to the device. public class AddEsimParams : Google.Apis.Requests.IDirectResponseSchema { /// Required. The activation code for the eSIM profile. [Newtonsoft.Json.JsonPropertyAttribute("activationCode")] public virtual string ActivationCode { get; set; } /// Required. The activation state of the eSIM profile once it is downloaded. [Newtonsoft.Json.JsonPropertyAttribute("activationState")] public virtual string ActivationState { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Advanced security settings. In most cases, setting these is not needed. public class AdvancedSecurityOverrides : Google.Apis.Requests.IDirectResponseSchema { /// /// Controls Common Criteria Mode—security standards defined in the Common Criteria for Information Technology /// Security Evaluation (https://www.commoncriteriaportal.org/) (CC). Enabling Common Criteria Mode increases /// certain security components on a device, see CommonCriteriaMode for details.Warning: Common Criteria Mode /// enforces a strict security model typically only required for IT products used in national security systems /// and other highly sensitive organizations. Standard device use may be affected. Only enabled if required. If /// Common Criteria Mode is turned off after being enabled previously, all user-configured Wi-Fi networks may be /// lost and any enterprise-configured Wi-Fi networks that require user input may need to be reconfigured. /// [Newtonsoft.Json.JsonPropertyAttribute("commonCriteriaMode")] public virtual string CommonCriteriaMode { get; set; } /// /// Optional. Controls whether content protection, which scans for deceptive apps, is enabled. This is supported /// on Android 15 and above. /// [Newtonsoft.Json.JsonPropertyAttribute("contentProtectionPolicy")] public virtual string ContentProtectionPolicy { get; set; } /// /// Controls access to developer settings: developer options and safe boot. Replaces safeBootDisabled /// (deprecated) and debuggingFeaturesAllowed (deprecated). On personally-owned devices with a work profile, /// setting this policy will not disable safe boot. In this case, a NonComplianceDetail with MANAGEMENT_MODE is /// reported. /// [Newtonsoft.Json.JsonPropertyAttribute("developerSettings")] public virtual string DeveloperSettings { get; set; } /// /// Whether Google Play Protect verification (https://support.google.com/accounts/answer/2812853) is enforced. /// Replaces ensureVerifyAppsEnabled (deprecated). /// [Newtonsoft.Json.JsonPropertyAttribute("googlePlayProtectVerifyApps")] public virtual string GooglePlayProtectVerifyApps { get; set; } /// /// Optional. Controls Memory Tagging Extension (MTE) /// (https://source.android.com/docs/security/test/memory-safety/arm-mte) on the device. The device needs to be /// rebooted to apply changes to the MTE policy. On Android 15 and above, a NonComplianceDetail with PENDING is /// reported if the policy change is pending a device reboot. /// [Newtonsoft.Json.JsonPropertyAttribute("mtePolicy")] public virtual string MtePolicy { get; set; } /// /// Personal apps that can read work profile notifications using a NotificationListenerService /// (https://developer.android.com/reference/android/service/notification/NotificationListenerService). By /// default, no personal apps (aside from system apps) can read work notifications. Each value in the list must /// be a package name. /// [Newtonsoft.Json.JsonPropertyAttribute("personalAppsThatCanReadWorkNotifications")] public virtual System.Collections.Generic.IList PersonalAppsThatCanReadWorkNotifications { get; set; } /// /// The policy for untrusted apps (apps from unknown sources) enforced on the device. Replaces /// install_unknown_sources_allowed (deprecated). /// [Newtonsoft.Json.JsonPropertyAttribute("untrustedAppsPolicy")] public virtual string UntrustedAppsPolicy { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Configuration for an always-on VPN connection. public class AlwaysOnVpnPackage : Google.Apis.Requests.IDirectResponseSchema { /// Disallows networking when the VPN is not connected. [Newtonsoft.Json.JsonPropertyAttribute("lockdownEnabled")] public virtual System.Nullable LockdownEnabled { get; set; } /// The package name of the VPN app. [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A compliance rule condition which is satisfied if the Android Framework API level on the device doesn't meet a /// minimum requirement. There can only be one rule with this type of condition per policy. /// public class ApiLevelCondition : Google.Apis.Requests.IDirectResponseSchema { /// /// The minimum desired Android Framework API level. If the device doesn't meet the minimum requirement, this /// condition is satisfied. Must be greater than zero. /// [Newtonsoft.Json.JsonPropertyAttribute("minApiLevel")] public virtual System.Nullable MinApiLevel { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Access Point Name (APN) policy. Configuration for Access Point Names (APNs) which may override any other APNs on /// the device. See OVERRIDE_APNS_ENABLED and overrideApns for details. /// public class ApnPolicy : Google.Apis.Requests.IDirectResponseSchema { /// /// Optional. APN settings for override APNs. There must not be any conflict between any of APN settings /// provided, otherwise the policy will be rejected. Two ApnSettings are considered to conflict when all of the /// following fields match on both: numericOperatorId, apn, proxyAddress, proxyPort, mmsProxyAddress, /// mmsProxyPort, mmsc, mvnoType, protocol, roamingProtocol. If some of the APN settings result in /// non-compliance of INVALID_VALUE , they will be ignored. This can be set on fully managed devices on Android /// 10 and above. This can also be set on work profiles on Android 13 and above and only with ApnSetting's with /// ENTERPRISE APN type. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than /// 10. A NonComplianceDetail with MANAGEMENT_MODE is reported for work profiles on Android versions less than /// 13. /// [Newtonsoft.Json.JsonPropertyAttribute("apnSettings")] public virtual System.Collections.Generic.IList ApnSettings { get; set; } /// /// Optional. Whether override APNs are disabled or enabled. See DevicePolicyManager.setOverrideApnsEnabled /// (https://developer.android.com/reference/android/app/admin/DevicePolicyManager#setOverrideApnsEnabled) for /// more details. /// [Newtonsoft.Json.JsonPropertyAttribute("overrideApns")] public virtual string OverrideApns { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// An Access Point Name (APN) configuration for a carrier data connection. The APN provides configuration to /// connect a cellular network device to an IP data network. A carrier uses this setting to decide which IP address /// to assign, any security methods to apply, and how the device might be connected to private networks. /// public class ApnSetting : Google.Apis.Requests.IDirectResponseSchema { /// /// Optional. Whether User Plane resources have to be activated during every transition from CM-IDLE mode to /// CM-CONNECTED state for this APN. See 3GPP TS 23.501 section 5.6.13. /// [Newtonsoft.Json.JsonPropertyAttribute("alwaysOnSetting")] public virtual string AlwaysOnSetting { get; set; } /// Required. Name of the APN. Policy will be rejected if this field is empty. [Newtonsoft.Json.JsonPropertyAttribute("apn")] public virtual string Apn { get; set; } /// /// Required. Usage categories for the APN. Policy will be rejected if this field is empty or contains /// APN_TYPE_UNSPECIFIED or duplicates. Multiple APN types can be set on fully managed devices. ENTERPRISE is /// the only allowed APN type on work profiles. A NonComplianceDetail with MANAGEMENT_MODE is reported for any /// other value on work profiles. APN types that are not supported on the device or management mode will be /// ignored. If this results in the empty list, the APN setting will be ignored, because apnTypes is a required /// field. A NonComplianceDetail with INVALID_VALUE is reported if none of the APN types are supported on the /// device or management mode. /// [Newtonsoft.Json.JsonPropertyAttribute("apnTypes")] public virtual System.Collections.Generic.IList ApnTypes { get; set; } /// Optional. Authentication type of the APN. [Newtonsoft.Json.JsonPropertyAttribute("authType")] public virtual string AuthType { get; set; } /// /// Optional. Carrier ID for the APN. A value of 0 (default) means not set and negative values are rejected. /// [Newtonsoft.Json.JsonPropertyAttribute("carrierId")] public virtual System.Nullable CarrierId { get; set; } /// /// Required. Human-readable name that describes the APN. Policy will be rejected if this field is empty. /// [Newtonsoft.Json.JsonPropertyAttribute("displayName")] public virtual string DisplayName { get; set; } /// /// Optional. MMS (Multimedia Messaging Service) proxy address of the APN which can be an IP address or hostname /// (not a URL). /// [Newtonsoft.Json.JsonPropertyAttribute("mmsProxyAddress")] public virtual string MmsProxyAddress { get; set; } /// /// Optional. MMS (Multimedia Messaging Service) proxy port of the APN. A value of 0 (default) means not set and /// negative values are rejected. /// [Newtonsoft.Json.JsonPropertyAttribute("mmsProxyPort")] public virtual System.Nullable MmsProxyPort { get; set; } /// Optional. MMSC (Multimedia Messaging Service Center) URI of the APN. [Newtonsoft.Json.JsonPropertyAttribute("mmsc")] public virtual string Mmsc { get; set; } /// /// Optional. The default MTU (Maximum Transmission Unit) size in bytes of the IPv4 routes brought up by this /// APN setting. A value of 0 (default) means not set and negative values are rejected. Supported on Android 13 /// and above. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 13. /// [Newtonsoft.Json.JsonPropertyAttribute("mtuV4")] public virtual System.Nullable MtuV4 { get; set; } /// /// Optional. The MTU (Maximum Transmission Unit) size of the IPv6 mobile interface to which the APN connected. /// A value of 0 (default) means not set and negative values are rejected. Supported on Android 13 and above. A /// NonComplianceDetail with API_LEVEL is reported if the Android version is less than 13. /// [Newtonsoft.Json.JsonPropertyAttribute("mtuV6")] public virtual System.Nullable MtuV6 { get; set; } /// Optional. MVNO match type for the APN. [Newtonsoft.Json.JsonPropertyAttribute("mvnoType")] public virtual string MvnoType { get; set; } /// /// Optional. Radio technologies (network types) the APN may use. Policy will be rejected if this field contains /// NETWORK_TYPE_UNSPECIFIED or duplicates. /// [Newtonsoft.Json.JsonPropertyAttribute("networkTypes")] public virtual System.Collections.Generic.IList NetworkTypes { get; set; } /// /// Optional. The numeric operator ID of the APN. Numeric operator ID is defined as MCC (Mobile Country Code) + /// MNC (Mobile Network Code). /// [Newtonsoft.Json.JsonPropertyAttribute("numericOperatorId")] public virtual string NumericOperatorId { get; set; } /// Optional. APN password of the APN. [Newtonsoft.Json.JsonPropertyAttribute("password")] public virtual string Password { get; set; } /// Optional. The protocol to use to connect to this APN. [Newtonsoft.Json.JsonPropertyAttribute("protocol")] public virtual string Protocol { get; set; } /// Optional. The proxy address of the APN. [Newtonsoft.Json.JsonPropertyAttribute("proxyAddress")] public virtual string ProxyAddress { get; set; } /// /// Optional. The proxy port of the APN. A value of 0 (default) means not set and negative values are rejected. /// [Newtonsoft.Json.JsonPropertyAttribute("proxyPort")] public virtual System.Nullable ProxyPort { get; set; } /// Optional. The protocol to use to connect to this APN while the device is roaming. [Newtonsoft.Json.JsonPropertyAttribute("roamingProtocol")] public virtual string RoamingProtocol { get; set; } /// Optional. APN username of the APN. [Newtonsoft.Json.JsonPropertyAttribute("username")] public virtual string Username { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Information about a process. It contains process name, start time, app Uid, app Pid, seinfo tag, hash of the /// base APK. /// public class AppProcessInfo : Google.Apis.Requests.IDirectResponseSchema { /// SHA-256 hash of the base APK, in hexadecimal format. [Newtonsoft.Json.JsonPropertyAttribute("apkSha256Hash")] public virtual string ApkSha256Hash { get; set; } /// /// Package names of all packages that are associated with the particular user ID. In most cases, this will be a /// single package name, the package that has been assigned that user ID. If multiple application share a UID /// then all packages sharing UID will be included. /// [Newtonsoft.Json.JsonPropertyAttribute("packageNames")] public virtual System.Collections.Generic.IList PackageNames { get; set; } /// Process ID. [Newtonsoft.Json.JsonPropertyAttribute("pid")] public virtual System.Nullable Pid { get; set; } /// Process name. [Newtonsoft.Json.JsonPropertyAttribute("processName")] public virtual string ProcessName { get; set; } /// SELinux policy info. [Newtonsoft.Json.JsonPropertyAttribute("seinfo")] public virtual string Seinfo { get; set; } private string _startTimeRaw; private object _startTime; /// Process start time. [Newtonsoft.Json.JsonPropertyAttribute("startTime")] public virtual string StartTimeRaw { get => _startTimeRaw; set { _startTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _startTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use StartTimeDateTimeOffset instead.")] public virtual object StartTime { get => _startTime; set { _startTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _startTime = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? StartTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(StartTimeRaw); set => StartTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// UID of the package. [Newtonsoft.Json.JsonPropertyAttribute("uid")] public virtual System.Nullable Uid { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// An app process was started. This is available device-wide on fully managed devices and within the work profile /// on organization-owned devices with a work profile. /// public class AppProcessStartEvent : Google.Apis.Requests.IDirectResponseSchema { /// Information about a process. [Newtonsoft.Json.JsonPropertyAttribute("processInfo")] public virtual AppProcessInfo ProcessInfo { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Id to name association of a app track. public class AppTrackInfo : Google.Apis.Requests.IDirectResponseSchema { /// /// The track name associated with the trackId, set in the Play Console. The name is modifiable from Play /// Console. /// [Newtonsoft.Json.JsonPropertyAttribute("trackAlias")] public virtual string TrackAlias { get; set; } /// /// The unmodifiable unique track identifier, taken from the releaseTrackId in the URL of the Play Console page /// that displays the app’s track information. /// [Newtonsoft.Json.JsonPropertyAttribute("trackId")] public virtual string TrackId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// This represents a single version of the app. public class AppVersion : Google.Apis.Requests.IDirectResponseSchema { /// If the value is True, it indicates that this version is a production track. [Newtonsoft.Json.JsonPropertyAttribute("production")] public virtual System.Nullable Production { get; set; } /// /// Track identifiers that the app version is published in. This does not include the production track (see /// production instead). /// [Newtonsoft.Json.JsonPropertyAttribute("trackIds")] public virtual System.Collections.Generic.IList TrackIds { get; set; } /// Unique increasing identifier for the app version. [Newtonsoft.Json.JsonPropertyAttribute("versionCode")] public virtual System.Nullable VersionCode { get; set; } /// /// The string used in the Play store by the app developer to identify the version. The string is not /// necessarily unique or localized (for example, the string could be "1.4"). /// [Newtonsoft.Json.JsonPropertyAttribute("versionString")] public virtual string VersionString { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Information about an app. public class Application : Google.Apis.Requests.IDirectResponseSchema { /// /// Whether this app is free, free with in-app purchases, or paid. If the pricing is unspecified, this means the /// app is not generally available anymore (even though it might still be available to people who own it). /// [Newtonsoft.Json.JsonPropertyAttribute("appPricing")] public virtual string AppPricing { get; set; } /// Application tracks visible to the enterprise. [Newtonsoft.Json.JsonPropertyAttribute("appTracks")] public virtual System.Collections.Generic.IList AppTracks { get; set; } /// Versions currently available for this app. [Newtonsoft.Json.JsonPropertyAttribute("appVersions")] public virtual System.Collections.Generic.IList AppVersions { get; set; } /// The name of the author of the apps (for example, the app developer). [Newtonsoft.Json.JsonPropertyAttribute("author")] public virtual string Author { get; set; } /// The countries which this app is available in as per ISO 3166-1 alpha-2. [Newtonsoft.Json.JsonPropertyAttribute("availableCountries")] public virtual System.Collections.Generic.IList AvailableCountries { get; set; } /// The app category (e.g. RACING, SOCIAL, etc.) [Newtonsoft.Json.JsonPropertyAttribute("category")] public virtual string Category { get; set; } /// The content rating for this app. [Newtonsoft.Json.JsonPropertyAttribute("contentRating")] public virtual string ContentRating { get; set; } /// The localized promotional description, if available. [Newtonsoft.Json.JsonPropertyAttribute("description")] public virtual string Description { get; set; } /// How and to whom the package is made available. [Newtonsoft.Json.JsonPropertyAttribute("distributionChannel")] public virtual string DistributionChannel { get; set; } /// Noteworthy features (if any) of this app. [Newtonsoft.Json.JsonPropertyAttribute("features")] public virtual System.Collections.Generic.IList Features { get; set; } /// Full app description, if available. [Newtonsoft.Json.JsonPropertyAttribute("fullDescription")] public virtual string FullDescription { get; set; } /// /// A link to an image that can be used as an icon for the app. This image is suitable for use up to a pixel /// size of 512 x 512. /// [Newtonsoft.Json.JsonPropertyAttribute("iconUrl")] public virtual string IconUrl { get; set; } /// The set of managed properties available to be pre-configured for the app. [Newtonsoft.Json.JsonPropertyAttribute("managedProperties")] public virtual System.Collections.Generic.IList ManagedProperties { get; set; } /// The minimum Android SDK necessary to run the app. [Newtonsoft.Json.JsonPropertyAttribute("minAndroidSdkVersion")] public virtual System.Nullable MinAndroidSdkVersion { get; set; } /// The name of the app in the form enterprises/{enterprise}/applications/{package_name}. [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// The permissions required by the app. [Newtonsoft.Json.JsonPropertyAttribute("permissions")] public virtual System.Collections.Generic.IList Permissions { get; set; } /// A link to the (consumer) Google Play details page for the app. [Newtonsoft.Json.JsonPropertyAttribute("playStoreUrl")] public virtual string PlayStoreUrl { get; set; } /// A localised description of the recent changes made to the app. [Newtonsoft.Json.JsonPropertyAttribute("recentChanges")] public virtual string RecentChanges { get; set; } /// A list of screenshot links representing the app. [Newtonsoft.Json.JsonPropertyAttribute("screenshotUrls")] public virtual System.Collections.Generic.IList ScreenshotUrls { get; set; } /// /// A link to a smaller image that can be used as an icon for the app. This image is suitable for use up to a /// pixel size of 128 x 128. /// [Newtonsoft.Json.JsonPropertyAttribute("smallIconUrl")] public virtual string SmallIconUrl { get; set; } /// The title of the app. Localized. [Newtonsoft.Json.JsonPropertyAttribute("title")] public virtual string Title { get; set; } private string _updateTimeRaw; private object _updateTime; /// Output only. The approximate time (within 7 days) the app was last published. [Newtonsoft.Json.JsonPropertyAttribute("updateTime")] public virtual string UpdateTimeRaw { get => _updateTimeRaw; set { _updateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _updateTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use UpdateTimeDateTimeOffset instead.")] public virtual object UpdateTime { get => _updateTime; set { _updateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _updateTime = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(UpdateTimeRaw); set => UpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// The ETag of the item. public virtual string ETag { get; set; } } /// An app-related event. public class ApplicationEvent : Google.Apis.Requests.IDirectResponseSchema { private string _createTimeRaw; private object _createTime; /// The creation time of the event. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { get => _createTimeRaw; set { _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _createTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] public virtual object CreateTime { get => _createTime; set { _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _createTime = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? CreateTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// App event type. [Newtonsoft.Json.JsonPropertyAttribute("eventType")] public virtual string EventType { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A permission required by the app. public class ApplicationPermission : Google.Apis.Requests.IDirectResponseSchema { /// /// A longer description of the permission, providing more detail on what it affects. Localized. /// [Newtonsoft.Json.JsonPropertyAttribute("description")] public virtual string Description { get; set; } /// The name of the permission. Localized. [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// An opaque string uniquely identifying the permission. Not localized. [Newtonsoft.Json.JsonPropertyAttribute("permissionId")] public virtual string PermissionId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Policy for an individual app. Note: Application availability on a given device cannot be changed using this /// policy if installAppsDisabled is enabled. The maximum number of applications that you can specify per policy is /// 3,000. /// public class ApplicationPolicy : Google.Apis.Requests.IDirectResponseSchema { /// /// List of the app’s track IDs that a device belonging to the enterprise can access. If the list contains /// multiple track IDs, devices receive the latest version among all accessible tracks. If the list contains no /// track IDs, devices only have access to the app’s production track. More details about each track are /// available in AppTrackInfo. /// [Newtonsoft.Json.JsonPropertyAttribute("accessibleTrackIds")] public virtual System.Collections.Generic.IList AccessibleTrackIds { get; set; } /// /// Specifies whether the app is allowed networking when the VPN is not connected and /// alwaysOnVpnPackage.lockdownEnabled is enabled. If set to VPN_LOCKDOWN_ENFORCED, the app is not allowed /// networking, and if set to VPN_LOCKDOWN_EXEMPTION, the app is allowed networking. Only supported on devices /// running Android 10 and above. If this is not supported by the device, the device will contain a /// NonComplianceDetail with non_compliance_reason set to API_LEVEL and a fieldPath. If this is not applicable /// to the app, the device will contain a NonComplianceDetail with non_compliance_reason set to UNSUPPORTED and /// a fieldPath. The fieldPath is set to applications[i].alwaysOnVpnLockdownExemption, where i is the index of /// the package in the applications policy. /// [Newtonsoft.Json.JsonPropertyAttribute("alwaysOnVpnLockdownExemption")] public virtual string AlwaysOnVpnLockdownExemption { get; set; } /// Controls the auto-update mode for the app. [Newtonsoft.Json.JsonPropertyAttribute("autoUpdateMode")] public virtual string AutoUpdateMode { get; set; } /// /// Controls whether the app can communicate with itself across a device’s work and personal profiles, subject /// to user consent. /// [Newtonsoft.Json.JsonPropertyAttribute("connectedWorkAndPersonalApp")] public virtual string ConnectedWorkAndPersonalApp { get; set; } /// /// Optional. Whether the app is allowed to act as a credential provider on Android 14 and above. /// [Newtonsoft.Json.JsonPropertyAttribute("credentialProviderPolicy")] public virtual string CredentialProviderPolicy { get; set; } /// /// Optional. Configuration for this custom app.install_type must be set to CUSTOM for this to be set. /// [Newtonsoft.Json.JsonPropertyAttribute("customAppConfig")] public virtual CustomAppConfig CustomAppConfig { get; set; } /// /// The default policy for all permissions requested by the app. If specified, this overrides the policy-level /// default_permission_policy which applies to all apps. It does not override the permission_grants which /// applies to all apps. /// [Newtonsoft.Json.JsonPropertyAttribute("defaultPermissionPolicy")] public virtual string DefaultPermissionPolicy { get; set; } /// /// The scopes delegated to the app from Android Device Policy. These provide additional privileges for the /// applications they are applied to. /// [Newtonsoft.Json.JsonPropertyAttribute("delegatedScopes")] public virtual System.Collections.Generic.IList DelegatedScopes { get; set; } /// Whether the app is disabled. When disabled, the app data is still preserved. [Newtonsoft.Json.JsonPropertyAttribute("disabled")] public virtual System.Nullable Disabled { get; set; } /// /// Configuration to enable this app as an extension app, with the capability of interacting with Android Device /// Policy offline.This field can be set for at most one app. If there is any app with COMPANION_APP role, this /// field cannot be set.The signing key certificate fingerprint of the app on the device must match one of the /// entries in ApplicationPolicy.signingKeyCerts or ExtensionConfig.signingKeyFingerprintsSha256 (deprecated) or /// the signing key certificate fingerprints obtained from Play Store for the app to be able to communicate with /// Android Device Policy. If the app is not on Play Store and if ApplicationPolicy.signingKeyCerts and /// ExtensionConfig.signingKeyFingerprintsSha256 (deprecated) are not set, a NonComplianceDetail with /// INVALID_VALUE is reported. /// [Newtonsoft.Json.JsonPropertyAttribute("extensionConfig")] public virtual ExtensionConfig ExtensionConfig { get; set; } /// /// Optional. The constraints for installing the app. You can specify a maximum of one InstallConstraint. /// Multiple constraints are rejected. /// [Newtonsoft.Json.JsonPropertyAttribute("installConstraint")] public virtual System.Collections.Generic.IList InstallConstraint { get; set; } /// /// Optional. Amongst apps with installType set to: FORCE_INSTALLED PREINSTALLEDthis controls the relative /// priority of installation. A value of 0 (default) means this app has no priority over other apps. For values /// between 1 and 10,000, a lower value means a higher priority. Values outside of the range 0 to 10,000 /// inclusive are rejected. /// [Newtonsoft.Json.JsonPropertyAttribute("installPriority")] public virtual System.Nullable InstallPriority { get; set; } /// The type of installation to perform. [Newtonsoft.Json.JsonPropertyAttribute("installType")] public virtual string InstallType { get; set; } /// /// Whether the app is allowed to lock itself in full-screen mode. DEPRECATED. Use InstallType KIOSK or /// kioskCustomLauncherEnabled to configure a dedicated device. /// [Newtonsoft.Json.JsonPropertyAttribute("lockTaskAllowed")] public virtual System.Nullable LockTaskAllowed { get; set; } /// /// Managed configuration applied to the app. The format for the configuration is dictated by the /// ManagedProperty values supported by the app. Each field name in the managed configuration must match the key /// field of the ManagedProperty. The field value must be compatible with the type of the ManagedProperty: /// *type* *JSON value* BOOL true or false STRING string INTEGER number CHOICE string MULTISELECT array of /// strings HIDDEN string BUNDLE_ARRAY array of objects /// [Newtonsoft.Json.JsonPropertyAttribute("managedConfiguration")] public virtual System.Collections.Generic.IDictionary ManagedConfiguration { get; set; } /// /// The managed configurations template for the app, saved from the managed configurations iframe. This field is /// ignored if managed_configuration is set. /// [Newtonsoft.Json.JsonPropertyAttribute("managedConfigurationTemplate")] public virtual ManagedConfigurationTemplate ManagedConfigurationTemplate { get; set; } /// /// The minimum version of the app that runs on the device. If set, the device attempts to update the app to at /// least this version code. If the app is not up-to-date, the device will contain a NonComplianceDetail with /// non_compliance_reason set to APP_NOT_UPDATED. The app must already be published to Google Play with a /// version code greater than or equal to this value. At most 20 apps may specify a minimum version code per /// policy. /// [Newtonsoft.Json.JsonPropertyAttribute("minimumVersionCode")] public virtual System.Nullable MinimumVersionCode { get; set; } /// The package name of the app. For example, com.google.android.youtube for the YouTube app. [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } /// /// Explicit permission grants or denials for the app. These values override the default_permission_policy and /// permission_grants which apply to all apps. /// [Newtonsoft.Json.JsonPropertyAttribute("permissionGrants")] public virtual System.Collections.Generic.IList PermissionGrants { get; set; } /// /// Optional. ID of the preferential network the application uses. There must be a configuration for the /// specified network ID in preferentialNetworkServiceConfigs. If set to PREFERENTIAL_NETWORK_ID_UNSPECIFIED, /// the application will use the default network ID specified in defaultPreferentialNetworkId. See the /// documentation of defaultPreferentialNetworkId for the list of apps excluded from this defaulting. This /// applies on both work profiles and fully managed devices on Android 13 and above. /// [Newtonsoft.Json.JsonPropertyAttribute("preferentialNetworkId")] public virtual string PreferentialNetworkId { get; set; } /// /// Optional. Roles the app has.Apps having certain roles can be exempted from power and background execution /// restrictions, suspension and hibernation on Android 14 and above. The user control can also be disallowed /// for apps with certain roles on Android 11 and above. Refer to the documentation of each RoleType for more /// details.The app is notified about the roles that are set for it if the app has a notification receiver /// service with . The app is notified whenever its roles are updated or after the app is installed when it has /// nonempty list of roles. The app can use this notification to bootstrap itself after the installation. See /// Integrate with the AMAPI SDK (https://developers.google.com/android/management/sdk-integration) and Manage /// app roles (https://developers.google.com/android/management/app-roles) guides for more details on the /// requirements for the service.For the exemptions to be applied and the app to be notified about the roles, /// the signing key certificate fingerprint of the app on the device must match one of the signing key /// certificate fingerprints obtained from Play Store or one of the entries in /// ApplicationPolicy.signingKeyCerts. Otherwise, a NonComplianceDetail with APP_SIGNING_CERT_MISMATCH is /// reported.There must not be duplicate roles with the same roleType. Multiple apps cannot hold a role with the /// same roleType. A role with type ROLE_TYPE_UNSPECIFIED is not allowed. /// [Newtonsoft.Json.JsonPropertyAttribute("roles")] public virtual System.Collections.Generic.IList Roles { get; set; } /// /// Optional. Signing key certificates of the app.This field is required in the following cases: The app has /// installType set to CUSTOM (i.e. a custom app). The app has roles set to a nonempty list and the app does not /// exist on the Play Store. The app has extensionConfig set (i.e. an extension app) but /// ExtensionConfig.signingKeyFingerprintsSha256 (deprecated) is not set and the app does not exist on the Play /// Store.If this field is not set for a custom app, the policy is rejected. If it is not set when required for /// a non-custom app, a NonComplianceDetail with INVALID_VALUE is reported.For other cases, this field is /// optional and the signing key certificates obtained from Play Store are used.See following policy settings to /// see how this field is used: choosePrivateKeyRules ApplicationPolicy.InstallType.CUSTOM /// ApplicationPolicy.extensionConfig ApplicationPolicy.roles /// [Newtonsoft.Json.JsonPropertyAttribute("signingKeyCerts")] public virtual System.Collections.Generic.IList SigningKeyCerts { get; set; } /// /// Optional. Specifies whether user control is permitted for the app. User control includes user actions like /// force-stopping and clearing app data. Certain types of apps have special treatment, see /// USER_CONTROL_SETTINGS_UNSPECIFIED and USER_CONTROL_ALLOWED for more details. /// [Newtonsoft.Json.JsonPropertyAttribute("userControlSettings")] public virtual string UserControlSettings { get; set; } /// /// Specifies whether the app installed in the work profile is allowed to add widgets to the home screen. /// [Newtonsoft.Json.JsonPropertyAttribute("workProfileWidgets")] public virtual string WorkProfileWidgets { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A change to be made to a single ApplicationPolicy object. public class ApplicationPolicyChange : Google.Apis.Requests.IDirectResponseSchema { /// /// If ApplicationPolicy.packageName matches an existing ApplicationPolicy object within the Policy being /// modified, then that object will be updated. Otherwise, it will be added to the end of the /// Policy.applications. /// [Newtonsoft.Json.JsonPropertyAttribute("application")] public virtual ApplicationPolicy Application { get; set; } /// /// The field mask indicating the fields to update. If omitted, all modifiable fields are updated. /// [Newtonsoft.Json.JsonPropertyAttribute("updateMask")] public virtual object UpdateMask { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Information reported about an installed app. public class ApplicationReport : Google.Apis.Requests.IDirectResponseSchema { /// The source of the package. [Newtonsoft.Json.JsonPropertyAttribute("applicationSource")] public virtual string ApplicationSource { get; set; } /// The display name of the app. [Newtonsoft.Json.JsonPropertyAttribute("displayName")] public virtual string DisplayName { get; set; } /// The list of app events which have occurred in the last 30 hours. [Newtonsoft.Json.JsonPropertyAttribute("events")] public virtual System.Collections.Generic.IList Events { get; set; } /// The package name of the app that installed this app. [Newtonsoft.Json.JsonPropertyAttribute("installerPackageName")] public virtual string InstallerPackageName { get; set; } /// List of keyed app states reported by the app. [Newtonsoft.Json.JsonPropertyAttribute("keyedAppStates")] public virtual System.Collections.Generic.IList KeyedAppStates { get; set; } /// Package name of the app. [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } /// /// The SHA-256 hash of the app's APK file, which can be used to verify the app hasn't been modified. Each byte /// of the hash value is represented as a two-digit hexadecimal number. /// [Newtonsoft.Json.JsonPropertyAttribute("packageSha256Hash")] public virtual string PackageSha256Hash { get; set; } /// /// The SHA-1 hash of each android.content.pm.Signature /// (https://developer.android.com/reference/android/content/pm/Signature.html) associated with the app package. /// Each byte of each hash value is represented as a two-digit hexadecimal number. /// [Newtonsoft.Json.JsonPropertyAttribute("signingKeyCertFingerprints")] public virtual System.Collections.Generic.IList SigningKeyCertFingerprints { get; set; } /// Application state. [Newtonsoft.Json.JsonPropertyAttribute("state")] public virtual string State { get; set; } /// Whether the app is user facing. [Newtonsoft.Json.JsonPropertyAttribute("userFacingType")] public virtual string UserFacingType { get; set; } /// /// The app version code, which can be used to determine whether one version is more recent than another. /// [Newtonsoft.Json.JsonPropertyAttribute("versionCode")] public virtual System.Nullable VersionCode { get; set; } /// The app version as displayed to the user. [Newtonsoft.Json.JsonPropertyAttribute("versionName")] public virtual string VersionName { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Settings controlling the behavior of application reports. public class ApplicationReportingSettings : Google.Apis.Requests.IDirectResponseSchema { /// Whether removed apps are included in application reports. [Newtonsoft.Json.JsonPropertyAttribute("includeRemovedApps")] public virtual System.Nullable IncludeRemovedApps { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// The application signing key certificate. public class ApplicationSigningKeyCert : Google.Apis.Requests.IDirectResponseSchema { /// /// Required. The SHA-256 hash value of the signing key certificate of the app. This must be a valid SHA-256 /// hash value, i.e. 32 bytes. Otherwise, the policy is rejected. /// [Newtonsoft.Json.JsonPropertyAttribute("signingKeyCertFingerprintSha256")] public virtual string SigningKeyCertFingerprintSha256 { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// An admin has enabled or disabled backup service. public class BackupServiceToggledEvent : Google.Apis.Requests.IDirectResponseSchema { /// Package name of the admin app requesting the change. [Newtonsoft.Json.JsonPropertyAttribute("adminPackageName")] public virtual string AdminPackageName { get; set; } /// User ID of the admin app from the which the change was requested. [Newtonsoft.Json.JsonPropertyAttribute("adminUserId")] public virtual System.Nullable AdminUserId { get; set; } /// Whether the backup service is enabled [Newtonsoft.Json.JsonPropertyAttribute("backupServiceState")] public virtual string BackupServiceState { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Batched event logs of events from the device. public class BatchUsageLogEvents : Google.Apis.Requests.IDirectResponseSchema { /// /// If present, the name of the device in the form ‘enterprises/{enterpriseId}/devices/{deviceId}’ /// [Newtonsoft.Json.JsonPropertyAttribute("device")] public virtual string Device { get; set; } private string _retrievalTimeRaw; private object _retrievalTime; /// The device timestamp when the batch of events were collected from the device. [Newtonsoft.Json.JsonPropertyAttribute("retrievalTime")] public virtual string RetrievalTimeRaw { get => _retrievalTimeRaw; set { _retrievalTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _retrievalTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use RetrievalTimeDateTimeOffset instead.")] public virtual object RetrievalTime { get => _retrievalTime; set { _retrievalTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _retrievalTime = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? RetrievalTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(RetrievalTimeRaw); set => RetrievalTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// /// The list of UsageLogEvent that were reported by the device, sorted chronologically by the event time. /// [Newtonsoft.Json.JsonPropertyAttribute("usageLogEvents")] public virtual System.Collections.Generic.IList UsageLogEvents { get; set; } /// /// If present, the resource name of the user that owns this device in the form /// ‘enterprises/{enterpriseId}/users/{userId}’. /// [Newtonsoft.Json.JsonPropertyAttribute("user")] public virtual string User { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// An action to block access to apps and data on a fully managed device or in a work profile. This action also /// triggers a device or work profile to displays a user-facing notification with information (where possible) on /// how to correct the compliance issue. Note: wipeAction must also be specified. /// public class BlockAction : Google.Apis.Requests.IDirectResponseSchema { /// /// Number of days the policy is non-compliant before the device or work profile is blocked. To block access /// immediately, set to 0. blockAfterDays must be less than wipeAfterDays. /// [Newtonsoft.Json.JsonPropertyAttribute("blockAfterDays")] public virtual System.Nullable BlockAfterDays { get; set; } /// /// Specifies the scope of this BlockAction. Only applicable to devices that are company-owned. /// [Newtonsoft.Json.JsonPropertyAttribute("blockScope")] public virtual string BlockScope { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A new root certificate was installed into the system's trusted credential storage. This is available device-wide /// on fully managed devices and within the work profile on organization-owned devices with a work profile. /// public class CertAuthorityInstalledEvent : Google.Apis.Requests.IDirectResponseSchema { /// Subject of the certificate. [Newtonsoft.Json.JsonPropertyAttribute("certificate")] public virtual string Certificate { get; set; } /// Whether the installation event succeeded. [Newtonsoft.Json.JsonPropertyAttribute("success")] public virtual System.Nullable Success { get; set; } /// /// The user in which the certificate install event happened. Only available for devices running Android 11 and /// above. /// [Newtonsoft.Json.JsonPropertyAttribute("userId")] public virtual System.Nullable UserId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A root certificate was removed from the system's trusted credential storage. This is available device-wide on /// fully managed devices and within the work profile on organization-owned devices with a work profile. /// public class CertAuthorityRemovedEvent : Google.Apis.Requests.IDirectResponseSchema { /// Subject of the certificate. [Newtonsoft.Json.JsonPropertyAttribute("certificate")] public virtual string Certificate { get; set; } /// Whether the removal succeeded. [Newtonsoft.Json.JsonPropertyAttribute("success")] public virtual System.Nullable Success { get; set; } /// /// The user in which the certificate removal event occurred. Only available for devices running Android 11 and /// above. /// [Newtonsoft.Json.JsonPropertyAttribute("userId")] public virtual System.Nullable UserId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// An X.509v3 certificate failed to validate, currently this validation is performed on the Wi-FI access point and /// failure may be due to a mismatch upon server certificate validation. However it may in the future include other /// validation events of an X.509v3 certificate. /// public class CertValidationFailureEvent : Google.Apis.Requests.IDirectResponseSchema { /// The reason why certification validation failed. [Newtonsoft.Json.JsonPropertyAttribute("failureReason")] public virtual string FailureReason { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Controls apps' access to private keys. The rule determines which private key, if any, Android Device Policy /// grants to the specified app. Access is granted either when the app calls KeyChain.choosePrivateKeyAlias /// (https://developer.android.com/reference/android/security/KeyChain#choosePrivateKeyAlias%28android.app.Activity,%20android.security.KeyChainAliasCallback,%20java.lang.String[],%20java.security.Principal[],%20java.lang.String,%20int,%20java.lang.String%29) /// (or any overloads) to request a private key alias for a given URL, or for rules that are not URL-specific (that /// is, if urlPattern is not set, or set to the empty string or .*) on Android 11 and above, directly so that the /// app can call KeyChain.getPrivateKey /// (https://developer.android.com/reference/android/security/KeyChain#getPrivateKey%28android.content.Context,%20java.lang.String%29), /// without first having to call KeyChain.choosePrivateKeyAlias.When an app calls KeyChain.choosePrivateKeyAlias if /// more than one choosePrivateKeyRules matches, the last matching rule defines which key alias to return. /// public class ChoosePrivateKeyRule : Google.Apis.Requests.IDirectResponseSchema { /// /// The package names to which this rule applies. The signing key certificate fingerprint of the app is verified /// against the signing key certificate fingerprints provided by Play Store and /// ApplicationPolicy.signingKeyCerts . If no package names are specified, then the alias is provided to all /// apps that call KeyChain.choosePrivateKeyAlias /// (https://developer.android.com/reference/android/security/KeyChain#choosePrivateKeyAlias%28android.app.Activity,%20android.security.KeyChainAliasCallback,%20java.lang.String[],%20java.security.Principal[],%20java.lang.String,%20int,%20java.lang.String%29) /// or any overloads (but not without calling KeyChain.choosePrivateKeyAlias, even on Android 11 and above). Any /// app with the same Android UID as a package specified here will have access when they call /// KeyChain.choosePrivateKeyAlias. /// [Newtonsoft.Json.JsonPropertyAttribute("packageNames")] public virtual System.Collections.Generic.IList PackageNames { get; set; } /// The alias of the private key to be used. [Newtonsoft.Json.JsonPropertyAttribute("privateKeyAlias")] public virtual string PrivateKeyAlias { get; set; } /// /// The URL pattern to match against the URL of the request. If not set or empty, it matches all URLs. This uses /// the regular expression syntax of java.util.regex.Pattern. /// [Newtonsoft.Json.JsonPropertyAttribute("urlPattern")] public virtual string UrlPattern { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Parameters associated with the CLEAR_APP_DATA command to clear the data of specified apps from the device. /// public class ClearAppsDataParams : Google.Apis.Requests.IDirectResponseSchema { /// The package names of the apps whose data will be cleared when the command is executed. [Newtonsoft.Json.JsonPropertyAttribute("packageNames")] public virtual System.Collections.Generic.IList PackageNames { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Status of the CLEAR_APP_DATA command to clear the data of specified apps from the device. public class ClearAppsDataStatus : Google.Apis.Requests.IDirectResponseSchema { /// The per-app results, a mapping from package names to the respective clearing result. [Newtonsoft.Json.JsonPropertyAttribute("results")] public virtual System.Collections.Generic.IDictionary Results { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A command. public class Command : Google.Apis.Requests.IDirectResponseSchema { /// /// Optional. Parameters for the ADD_ESIM command to add an eSIM profile to the device. If this is set, then it /// is suggested that type should not be set. In this case, the server automatically sets it to ADD_ESIM. It is /// also acceptable to explicitly set type to ADD_ESIM. /// [Newtonsoft.Json.JsonPropertyAttribute("addEsimParams")] public virtual AddEsimParams AddEsimParams { get; set; } /// /// Parameters for the CLEAR_APP_DATA command to clear the data of specified apps from the device. See /// ClearAppsDataParams. If this is set, then it is suggested that type should not be set. In this case, the /// server automatically sets it to CLEAR_APP_DATA. It is also acceptable to explicitly set type to /// CLEAR_APP_DATA. /// [Newtonsoft.Json.JsonPropertyAttribute("clearAppsDataParams")] public virtual ClearAppsDataParams ClearAppsDataParams { get; set; } /// /// Output only. Status of the CLEAR_APP_DATA command to clear the data of specified apps from the device. See /// ClearAppsDataStatus. /// [Newtonsoft.Json.JsonPropertyAttribute("clearAppsDataStatus")] public virtual ClearAppsDataStatus ClearAppsDataStatus { get; set; } private string _createTimeRaw; private object _createTime; /// /// The timestamp at which the command was created. The timestamp is automatically generated by the server. /// [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { get => _createTimeRaw; set { _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _createTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] public virtual object CreateTime { get => _createTime; set { _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _createTime = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? CreateTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// /// The duration for which the command is valid. The command will expire if not executed by the device during /// this time. The default duration if unspecified is ten minutes. There is no maximum duration. /// [Newtonsoft.Json.JsonPropertyAttribute("duration")] public virtual object Duration { get; set; } /// /// If the command failed, an error code explaining the failure. This is not set when the command is cancelled /// by the caller. For reasoning about command errors, prefer fields in the following order (most preferred /// first): 1. Command-specific fields like clearAppsDataStatus, startLostModeStatus, or similar, if they exist. /// 2. This field, if set. 3. The generic error field in the Operation that wraps the command. /// [Newtonsoft.Json.JsonPropertyAttribute("errorCode")] public virtual string ErrorCode { get; set; } /// Output only. Status of an ADD_ESIM or REMOVE_ESIM command. [Newtonsoft.Json.JsonPropertyAttribute("esimStatus")] public virtual EsimCommandStatus EsimStatus { get; set; } /// /// For commands of type RESET_PASSWORD, optionally specifies the new password. Note: The new password must be /// at least 6 characters long if it is numeric in case of Android 14 devices. Else the command will fail with /// INVALID_VALUE. /// [Newtonsoft.Json.JsonPropertyAttribute("newPassword")] public virtual string NewPassword { get; set; } /// /// Optional. Parameters for the REMOVE_ESIM command to remove an eSIM profile from the device. If this is set, /// then it is suggested that type should not be set. In this case, the server automatically sets it to /// REMOVE_ESIM. It is also acceptable to explicitly set type to REMOVE_ESIM. /// [Newtonsoft.Json.JsonPropertyAttribute("removeEsimParams")] public virtual RemoveEsimParams RemoveEsimParams { get; set; } /// /// Optional. Parameters for the REQUEST_DEVICE_INFO command to get device related information. If this is set, /// then it is suggested that type should not be set. In this case, the server automatically sets it to /// REQUEST_DEVICE_INFO . It is also acceptable to explicitly set type to REQUEST_DEVICE_INFO. /// [Newtonsoft.Json.JsonPropertyAttribute("requestDeviceInfoParams")] public virtual RequestDeviceInfoParams RequestDeviceInfoParams { get; set; } /// Output only. Status of the REQUEST_DEVICE_INFO command. [Newtonsoft.Json.JsonPropertyAttribute("requestDeviceInfoStatus")] public virtual RequestDeviceInfoStatus RequestDeviceInfoStatus { get; set; } /// For commands of type RESET_PASSWORD, optionally specifies flags. [Newtonsoft.Json.JsonPropertyAttribute("resetPasswordFlags")] public virtual System.Collections.Generic.IList ResetPasswordFlags { get; set; } /// /// Parameters for the START_LOST_MODE command to put the device into lost mode. See StartLostModeParams. If /// this is set, then it is suggested that type should not be set. In this case, the server automatically sets /// it to START_LOST_MODE. It is also acceptable to explicitly set type to START_LOST_MODE. /// [Newtonsoft.Json.JsonPropertyAttribute("startLostModeParams")] public virtual StartLostModeParams StartLostModeParams { get; set; } /// /// Output only. Status of the START_LOST_MODE command to put the device into lost mode. See /// StartLostModeStatus. /// [Newtonsoft.Json.JsonPropertyAttribute("startLostModeStatus")] public virtual StartLostModeStatus StartLostModeStatus { get; set; } /// /// Parameters for the STOP_LOST_MODE command to take the device out of lost mode. See StopLostModeParams. If /// this is set, then it is suggested that type should not be set. In this case, the server automatically sets /// it to STOP_LOST_MODE. It is also acceptable to explicitly set type to STOP_LOST_MODE. /// [Newtonsoft.Json.JsonPropertyAttribute("stopLostModeParams")] public virtual StopLostModeParams StopLostModeParams { get; set; } /// /// Output only. Status of the STOP_LOST_MODE command to take the device out of lost mode. See /// StopLostModeStatus. /// [Newtonsoft.Json.JsonPropertyAttribute("stopLostModeStatus")] public virtual StopLostModeStatus StopLostModeStatus { get; set; } /// The type of the command. [Newtonsoft.Json.JsonPropertyAttribute("type")] public virtual string Type { get; set; } /// /// The resource name of the user that owns the device in the form enterprises/{enterpriseId}/users/{userId}. /// This is automatically generated by the server based on the device the command is sent to. /// [Newtonsoft.Json.JsonPropertyAttribute("userName")] public virtual string UserName { get; set; } /// /// Optional. Parameters for the WIPE command to wipe the device. If this is set, then it is suggested that type /// should not be set. In this case, the server automatically sets it to WIPE. It is also acceptable to /// explicitly set type to WIPE. /// [Newtonsoft.Json.JsonPropertyAttribute("wipeParams")] public virtual WipeParams WipeParams { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Information about Common Criteria Mode—security standards defined in the Common Criteria for Information /// Technology Security Evaluation (https://www.commoncriteriaportal.org/) (CC).This information is only available /// if statusReportingSettings.commonCriteriaModeEnabled is true in the device's policy. /// public class CommonCriteriaModeInfo : Google.Apis.Requests.IDirectResponseSchema { /// Whether Common Criteria Mode is enabled. [Newtonsoft.Json.JsonPropertyAttribute("commonCriteriaModeStatus")] public virtual string CommonCriteriaModeStatus { get; set; } /// Output only. The status of policy signature verification. [Newtonsoft.Json.JsonPropertyAttribute("policySignatureVerificationStatus")] public virtual string PolicySignatureVerificationStatus { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A rule declaring which mitigating actions to take when a device is not compliant with its policy. For every /// rule, there is always an implicit mitigating action to set policy_compliant to false for the Device resource, /// and display a message on the device indicating that the device is not compliant with its policy. Other /// mitigating actions may optionally be taken as well, depending on the field values in the rule. /// public class ComplianceRule : Google.Apis.Requests.IDirectResponseSchema { /// /// A condition which is satisfied if the Android Framework API level on the device doesn't meet a minimum /// requirement. /// [Newtonsoft.Json.JsonPropertyAttribute("apiLevelCondition")] public virtual ApiLevelCondition ApiLevelCondition { get; set; } /// /// If set to true, the rule includes a mitigating action to disable apps so that the device is effectively /// disabled, but app data is preserved. If the device is running an app in locked task mode, the app will be /// closed and a UI showing the reason for non-compliance will be displayed. /// [Newtonsoft.Json.JsonPropertyAttribute("disableApps")] public virtual System.Nullable DisableApps { get; set; } /// /// A condition which is satisfied if there exists any matching NonComplianceDetail for the device. /// [Newtonsoft.Json.JsonPropertyAttribute("nonComplianceDetailCondition")] public virtual NonComplianceDetailCondition NonComplianceDetailCondition { get; set; } /// /// If set, the rule includes a mitigating action to disable apps specified in the list, but app data is /// preserved. /// [Newtonsoft.Json.JsonPropertyAttribute("packageNamesToDisable")] public virtual System.Collections.Generic.IList PackageNamesToDisable { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A TCP connect event was initiated through the standard network stack. public class ConnectEvent : Google.Apis.Requests.IDirectResponseSchema { /// The destination IP address of the connect call. [Newtonsoft.Json.JsonPropertyAttribute("destinationIpAddress")] public virtual string DestinationIpAddress { get; set; } /// The destination port of the connect call. [Newtonsoft.Json.JsonPropertyAttribute("destinationPort")] public virtual System.Nullable DestinationPort { get; set; } /// The package name of the UID that performed the connect call. [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Contact details for managed Google Play enterprises. public class ContactInfo : Google.Apis.Requests.IDirectResponseSchema { /// /// Email address for a point of contact, which will be used to send important announcements related to managed /// Google Play. /// [Newtonsoft.Json.JsonPropertyAttribute("contactEmail")] public virtual string ContactEmail { get; set; } /// The email of the data protection officer. The email is validated but not verified. [Newtonsoft.Json.JsonPropertyAttribute("dataProtectionOfficerEmail")] public virtual string DataProtectionOfficerEmail { get; set; } /// The name of the data protection officer. [Newtonsoft.Json.JsonPropertyAttribute("dataProtectionOfficerName")] public virtual string DataProtectionOfficerName { get; set; } /// /// The phone number of the data protection officer The phone number is validated but not verified. /// [Newtonsoft.Json.JsonPropertyAttribute("dataProtectionOfficerPhone")] public virtual string DataProtectionOfficerPhone { get; set; } /// The email of the EU representative. The email is validated but not verified. [Newtonsoft.Json.JsonPropertyAttribute("euRepresentativeEmail")] public virtual string EuRepresentativeEmail { get; set; } /// The name of the EU representative. [Newtonsoft.Json.JsonPropertyAttribute("euRepresentativeName")] public virtual string EuRepresentativeName { get; set; } /// /// The phone number of the EU representative. The phone number is validated but not verified. /// [Newtonsoft.Json.JsonPropertyAttribute("euRepresentativePhone")] public virtual string EuRepresentativePhone { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// This feature is not generally available. public class ContentProviderEndpoint : Google.Apis.Requests.IDirectResponseSchema { /// This feature is not generally available. [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } /// Required. This feature is not generally available. [Newtonsoft.Json.JsonPropertyAttribute("signingCertsSha256")] public virtual System.Collections.Generic.IList SigningCertsSha256 { get; set; } /// This feature is not generally available. [Newtonsoft.Json.JsonPropertyAttribute("uri")] public virtual string Uri { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Controls the data from the work profile that can be accessed from the personal profile and vice versa. A /// NonComplianceDetail with MANAGEMENT_MODE is reported if the device does not have a work profile. /// public class CrossProfilePolicies : Google.Apis.Requests.IDirectResponseSchema { /// /// Optional. Controls whether personal profile apps can invoke app functions exposed by apps in the work /// profile. /// [Newtonsoft.Json.JsonPropertyAttribute("crossProfileAppFunctions")] public virtual string CrossProfileAppFunctions { get; set; } /// /// Whether text copied from one profile (personal or work) can be pasted in the other profile. /// [Newtonsoft.Json.JsonPropertyAttribute("crossProfileCopyPaste")] public virtual string CrossProfileCopyPaste { get; set; } /// /// Whether data from one profile (personal or work) can be shared with apps in the other profile. Specifically /// controls simple data sharing via intents. Management of other cross-profile communication channels, such as /// contact search, copy/paste, or connected work & personal apps, are configured separately. /// [Newtonsoft.Json.JsonPropertyAttribute("crossProfileDataSharing")] public virtual string CrossProfileDataSharing { get; set; } /// /// List of apps which are excluded from the ShowWorkContactsInPersonalProfile setting. For this to be set, /// ShowWorkContactsInPersonalProfile must be set to one of the following values: /// SHOW_WORK_CONTACTS_IN_PERSONAL_PROFILE_ALLOWED. In this case, these exemptions act as a blocklist. /// SHOW_WORK_CONTACTS_IN_PERSONAL_PROFILE_DISALLOWED. In this case, these exemptions act as an allowlist. /// SHOW_WORK_CONTACTS_IN_PERSONAL_PROFILE_DISALLOWED_EXCEPT_SYSTEM. In this case, these exemptions act as an /// allowlist, in addition to the already allowlisted system apps.Supported on Android 14 and above. A /// NonComplianceDetail with API_LEVEL is reported if the Android version is less than 14. /// [Newtonsoft.Json.JsonPropertyAttribute("exemptionsToShowWorkContactsInPersonalProfile")] public virtual PackageNameList ExemptionsToShowWorkContactsInPersonalProfile { get; set; } /// /// Whether personal apps can access contacts stored in the work profile.See also /// exemptions_to_show_work_contacts_in_personal_profile. /// [Newtonsoft.Json.JsonPropertyAttribute("showWorkContactsInPersonalProfile")] public virtual string ShowWorkContactsInPersonalProfile { get; set; } /// /// Specifies the default behaviour for work profile widgets. If the policy does not specify /// work_profile_widgets for a specific application, it will behave according to the value specified here. /// [Newtonsoft.Json.JsonPropertyAttribute("workProfileWidgetsDefault")] public virtual string WorkProfileWidgetsDefault { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Validates whether Android’s built-in cryptographic library (BoringSSL) is valid. Should always succeed on device /// boot, if it fails, the device should be considered untrusted. /// public class CryptoSelfTestCompletedEvent : Google.Apis.Requests.IDirectResponseSchema { /// Whether the test succeeded. [Newtonsoft.Json.JsonPropertyAttribute("success")] public virtual System.Nullable Success { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Configuration for a custom app. public class CustomAppConfig : Google.Apis.Requests.IDirectResponseSchema { /// Optional. User uninstall settings of the custom app. [Newtonsoft.Json.JsonPropertyAttribute("userUninstallSettings")] public virtual string UserUninstallSettings { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either /// specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one /// of the following: A full date, with non-zero year, month, and day values. A month and day, with a zero year (for /// example, an anniversary). A year on its own, with a zero month and a zero day. A year and month, with a zero day /// (for example, a credit card expiration date).Related types: google.type.TimeOfDay google.type.DateTime /// google.protobuf.Timestamp /// public class Date : Google.Apis.Requests.IDirectResponseSchema { /// /// Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a /// year and month where the day isn't significant. /// [Newtonsoft.Json.JsonPropertyAttribute("day")] public virtual System.Nullable Day { get; set; } /// Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. [Newtonsoft.Json.JsonPropertyAttribute("month")] public virtual System.Nullable Month { get; set; } /// Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. [Newtonsoft.Json.JsonPropertyAttribute("year")] public virtual System.Nullable Year { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Information about the application to be set as the default. public class DefaultApplication : Google.Apis.Requests.IDirectResponseSchema { /// /// Required. The package name that should be set as the default application. The policy is rejected if the /// package name is invalid. /// [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Additional context for non-compliance related to default application settings. public class DefaultApplicationContext : Google.Apis.Requests.IDirectResponseSchema { /// Output only. The scope of non-compliant default application setting. [Newtonsoft.Json.JsonPropertyAttribute("defaultApplicationScope")] public virtual string DefaultApplicationScope { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// The default application information for a specific DefaultApplicationType. public class DefaultApplicationInfo : Google.Apis.Requests.IDirectResponseSchema { /// /// Output only. Details on the default application setting attempts, in the same order as listed in /// defaultApplications. /// [Newtonsoft.Json.JsonPropertyAttribute("defaultApplicationSettingAttempts")] public virtual System.Collections.Generic.IList DefaultApplicationSettingAttempts { get; set; } /// Output only. The default application type. [Newtonsoft.Json.JsonPropertyAttribute("defaultApplicationType")] public virtual string DefaultApplicationType { get; set; } /// Output only. The package name of the current default application. [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// The default application setting for a DefaultApplicationType. public class DefaultApplicationSetting : Google.Apis.Requests.IDirectResponseSchema { /// /// Required. The scopes to which the policy should be applied. This list must not be empty or contain /// duplicates.A NonComplianceDetail with MANAGEMENT_MODE reason and /// DEFAULT_APPLICATION_SETTING_UNSUPPORTED_SCOPES specific reason is reported if none of the specified scopes /// can be applied to the management mode (e.g. a fully managed device receives a policy with only /// SCOPE_PERSONAL_PROFILE in the list). /// [Newtonsoft.Json.JsonPropertyAttribute("defaultApplicationScopes")] public virtual System.Collections.Generic.IList DefaultApplicationScopes { get; set; } /// Required. The app type to set the default application. [Newtonsoft.Json.JsonPropertyAttribute("defaultApplicationType")] public virtual string DefaultApplicationType { get; set; } /// /// Required. The list of applications that can be set as the default app for a given type. This list must not /// be empty or contain duplicates. The first app in the list that is installed and qualified for the /// defaultApplicationType (e.g. SMS app for DEFAULT_SMS) is set as the default app. The signing key certificate /// fingerprint of the app on the device must also match one of the signing key certificate fingerprints /// obtained from Play Store or one of the entries in ApplicationPolicy.signingKeyCerts in order to be set as /// the default.If the defaultApplicationScopes contains SCOPE_FULLY_MANAGED or SCOPE_WORK_PROFILE, the app must /// have an entry in applications with installType set to a value other than BLOCKED.A NonComplianceDetail with /// APP_NOT_INSTALLED reason and DEFAULT_APPLICATION_SETTING_FAILED_FOR_SCOPE specific reason is reported if /// none of the apps in the list are installed. A NonComplianceDetail with INVALID_VALUE reason and /// DEFAULT_APPLICATION_SETTING_FAILED_FOR_SCOPE specific reason is reported if at least one app is installed /// but the policy fails to apply due to other reasons (e.g. the app is not of the right type).When applying to /// SCOPE_PERSONAL_PROFILE on a company-owned device with a work profile, only pre-installed system apps can be /// set as the default. A NonComplianceDetail with INVALID_VALUE reason and /// DEFAULT_APPLICATION_SETTING_FAILED_FOR_SCOPE specific reason is reported if the policy fails to apply to the /// personal profile. /// [Newtonsoft.Json.JsonPropertyAttribute("defaultApplications")] public virtual System.Collections.Generic.IList DefaultApplications { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Details on a default application setting attempt. public class DefaultApplicationSettingAttempt : Google.Apis.Requests.IDirectResponseSchema { /// Output only. The outcome of setting the app as the default. [Newtonsoft.Json.JsonPropertyAttribute("attemptOutcome")] public virtual string AttemptOutcome { get; set; } /// Output only. The package name of the attempted application. [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A device owned by an enterprise. Unless otherwise noted, all fields are read-only and can't be modified by /// enterprises.devices.patch. /// public class Device : Google.Apis.Requests.IDirectResponseSchema { /// The API level of the Android platform version running on the device. [Newtonsoft.Json.JsonPropertyAttribute("apiLevel")] public virtual System.Nullable ApiLevel { get; set; } /// /// Reports for apps installed on the device. This information is only available when /// application_reports_enabled is true in the device's policy. /// [Newtonsoft.Json.JsonPropertyAttribute("applicationReports")] public virtual System.Collections.Generic.IList ApplicationReports { get; set; } /// /// The password requirements currently applied to the device. This field exists because the applied /// requirements may be slightly different from those specified in passwordPolicies in some cases. Note that /// this field does not provide information about password compliance. For non-compliance information, see /// nonComplianceDetails. NonComplianceDetail.fieldPath, is set based on passwordPolicies, not based on this /// field. /// [Newtonsoft.Json.JsonPropertyAttribute("appliedPasswordPolicies")] public virtual System.Collections.Generic.IList AppliedPasswordPolicies { get; set; } /// The name of the policy currently applied to the device. [Newtonsoft.Json.JsonPropertyAttribute("appliedPolicyName")] public virtual string AppliedPolicyName { get; set; } /// The version of the policy currently applied to the device. [Newtonsoft.Json.JsonPropertyAttribute("appliedPolicyVersion")] public virtual System.Nullable AppliedPolicyVersion { get; set; } /// The state currently applied to the device. [Newtonsoft.Json.JsonPropertyAttribute("appliedState")] public virtual string AppliedState { get; set; } /// /// Information about Common Criteria Mode—security standards defined in the Common Criteria for Information /// Technology Security Evaluation (https://www.commoncriteriaportal.org/) (CC).This information is only /// available if statusReportingSettings.commonCriteriaModeEnabled is true in the device's policy the device is /// company-owned. /// [Newtonsoft.Json.JsonPropertyAttribute("commonCriteriaModeInfo")] public virtual CommonCriteriaModeInfo CommonCriteriaModeInfo { get; set; } /// /// Output only. The default application information for the DefaultApplicationType. This information is only /// available if defaultApplicationInfoReportingEnabled is true in the device's policy. Available on Android 16 /// and above.All app types are reported on fully managed devices. DEFAULT_BROWSER, DEFAULT_CALL_REDIRECTION, /// DEFAULT_CALL_SCREENING and DEFAULT_DIALER types are reported for the work profiles on company-owned devices /// with a work profile and personally-owned devices. DEFAULT_WALLET is also reported for company-owned devices /// with a work profile, but will only include work profile information. /// [Newtonsoft.Json.JsonPropertyAttribute("defaultApplicationInfo")] public virtual System.Collections.Generic.IList DefaultApplicationInfo { get; set; } /// /// Device settings information. This information is only available if deviceSettingsEnabled is true in the /// device's policy. /// [Newtonsoft.Json.JsonPropertyAttribute("deviceSettings")] public virtual DeviceSettings DeviceSettings { get; set; } /// /// If the device state is DISABLED, an optional message that is displayed on the device indicating the reason /// the device is disabled. This field can be modified by a patch request. /// [Newtonsoft.Json.JsonPropertyAttribute("disabledReason")] public virtual UserFacingMessage DisabledReason { get; set; } /// /// Detailed information about displays on the device. This information is only available if displayInfoEnabled /// is true in the device's policy. /// [Newtonsoft.Json.JsonPropertyAttribute("displays")] public virtual System.Collections.Generic.IList Displays { get; set; } /// /// Output only. Information related to whether this device was migrated from being managed by another Device /// Policy Controller (DPC). /// [Newtonsoft.Json.JsonPropertyAttribute("dpcMigrationInfo")] public virtual DpcMigrationInfo DpcMigrationInfo { get; set; } private string _enrollmentTimeRaw; private object _enrollmentTime; /// The time of device enrollment. [Newtonsoft.Json.JsonPropertyAttribute("enrollmentTime")] public virtual string EnrollmentTimeRaw { get => _enrollmentTimeRaw; set { _enrollmentTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _enrollmentTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EnrollmentTimeDateTimeOffset instead.")] public virtual object EnrollmentTime { get => _enrollmentTime; set { _enrollmentTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _enrollmentTime = value; } } /// /// representation of . /// [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? EnrollmentTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EnrollmentTimeRaw); set => EnrollmentTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// /// If the device was enrolled with an enrollment token with additional data provided, this field contains that /// data. /// [Newtonsoft.Json.JsonPropertyAttribute("enrollmentTokenData")] public virtual string EnrollmentTokenData { get; set; } /// /// If the device was enrolled with an enrollment token, this field contains the name of the token. /// [Newtonsoft.Json.JsonPropertyAttribute("enrollmentTokenName")] public virtual string EnrollmentTokenName { get; set; } /// Detailed information about the device hardware. [Newtonsoft.Json.JsonPropertyAttribute("hardwareInfo")] public virtual HardwareInfo HardwareInfo { get; set; } /// /// Hardware status samples in chronological order. This information is only available if hardwareStatusEnabled /// is true in the device's policy. /// [Newtonsoft.Json.JsonPropertyAttribute("hardwareStatusSamples")] public virtual System.Collections.Generic.IList HardwareStatusSamples { get; set; } private string _lastPolicyComplianceReportTimeRaw; private object _lastPolicyComplianceReportTime; /// Deprecated. [Newtonsoft.Json.JsonPropertyAttribute("lastPolicyComplianceReportTime")] public virtual string LastPolicyComplianceReportTimeRaw { get => _lastPolicyComplianceReportTimeRaw; set { _lastPolicyComplianceReportTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _lastPolicyComplianceReportTimeRaw = value; } } /// /// representation of . /// [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use LastPolicyComplianceReportTimeDateTimeOffset instead.")] public virtual object LastPolicyComplianceReportTime { get => _lastPolicyComplianceReportTime; set { _lastPolicyComplianceReportTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _lastPolicyComplianceReportTime = value; } } /// /// representation of . /// [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? LastPolicyComplianceReportTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(LastPolicyComplianceReportTimeRaw); set => LastPolicyComplianceReportTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } private string _lastPolicySyncTimeRaw; private object _lastPolicySyncTime; /// The last time the device fetched its policy. [Newtonsoft.Json.JsonPropertyAttribute("lastPolicySyncTime")] public virtual string LastPolicySyncTimeRaw { get => _lastPolicySyncTimeRaw; set { _lastPolicySyncTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _lastPolicySyncTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use LastPolicySyncTimeDateTimeOffset instead.")] public virtual object LastPolicySyncTime { get => _lastPolicySyncTime; set { _lastPolicySyncTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _lastPolicySyncTime = value; } } /// /// representation of . /// [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? LastPolicySyncTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(LastPolicySyncTimeRaw); set => LastPolicySyncTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } private string _lastStatusReportTimeRaw; private object _lastStatusReportTime; /// The last time the device sent a status report. [Newtonsoft.Json.JsonPropertyAttribute("lastStatusReportTime")] public virtual string LastStatusReportTimeRaw { get => _lastStatusReportTimeRaw; set { _lastStatusReportTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _lastStatusReportTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use LastStatusReportTimeDateTimeOffset instead.")] public virtual object LastStatusReportTime { get => _lastStatusReportTime; set { _lastStatusReportTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _lastStatusReportTime = value; } } /// /// representation of . /// [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? LastStatusReportTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(LastStatusReportTimeRaw); set => LastStatusReportTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// /// The type of management mode Android Device Policy takes on the device. This influences which policy settings /// are supported. /// [Newtonsoft.Json.JsonPropertyAttribute("managementMode")] public virtual string ManagementMode { get; set; } /// /// Events related to memory and storage measurements in chronological order. This information is only available /// if memoryInfoEnabled is true in the device's policy.Events are retained for a certain period of time and old /// events are deleted. /// [Newtonsoft.Json.JsonPropertyAttribute("memoryEvents")] public virtual System.Collections.Generic.IList MemoryEvents { get; set; } /// Memory information: contains information about device memory and storage. [Newtonsoft.Json.JsonPropertyAttribute("memoryInfo")] public virtual MemoryInfo MemoryInfo { get; set; } /// The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}. [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// /// Device network information. This information is only available if networkInfoEnabled is true in the device's /// policy. /// [Newtonsoft.Json.JsonPropertyAttribute("networkInfo")] public virtual NetworkInfo NetworkInfo { get; set; } /// Details about policy settings that the device is not compliant with. [Newtonsoft.Json.JsonPropertyAttribute("nonComplianceDetails")] public virtual System.Collections.Generic.IList NonComplianceDetails { get; set; } /// Ownership of the managed device. [Newtonsoft.Json.JsonPropertyAttribute("ownership")] public virtual string Ownership { get; set; } /// Whether the device is compliant with its policy. [Newtonsoft.Json.JsonPropertyAttribute("policyCompliant")] public virtual System.Nullable PolicyCompliant { get; set; } /// /// The name of the policy applied to the device, in the form enterprises/{enterpriseId}/policies/{policyId}. If /// not specified, the policy_name for the device's user is applied. This field can be modified by a patch /// request. You can specify only the policyId when calling enterprises.devices.patch, as long as the policyId /// doesn’t contain any slashes. The rest of the policy name is inferred. /// [Newtonsoft.Json.JsonPropertyAttribute("policyName")] public virtual string PolicyName { get; set; } /// /// Power management events on the device in chronological order. This information is only available if /// powerManagementEventsEnabled is true in the device's policy. /// [Newtonsoft.Json.JsonPropertyAttribute("powerManagementEvents")] public virtual System.Collections.Generic.IList PowerManagementEvents { get; set; } /// /// If the same physical device has been enrolled multiple times, this field contains its previous device names. /// The serial number is used as the unique identifier to determine if the same physical device has enrolled /// previously. The names are in chronological order. /// [Newtonsoft.Json.JsonPropertyAttribute("previousDeviceNames")] public virtual System.Collections.Generic.IList PreviousDeviceNames { get; set; } /// Device's security posture value that reflects how secure the device is. [Newtonsoft.Json.JsonPropertyAttribute("securityPosture")] public virtual SecurityPosture SecurityPosture { get; set; } /// /// Detailed information about the device software. This information is only available if softwareInfoEnabled is /// true in the device's policy. /// [Newtonsoft.Json.JsonPropertyAttribute("softwareInfo")] public virtual SoftwareInfo SoftwareInfo { get; set; } /// /// The state to be applied to the device. This field can be modified by a patch request. Note that when calling /// enterprises.devices.patch, ACTIVE and DISABLED are the only allowable values. To enter the device into a /// DELETED state, call enterprises.devices.delete. /// [Newtonsoft.Json.JsonPropertyAttribute("state")] public virtual string State { get; set; } /// /// Map of selected system properties name and value related to the device. This information is only available /// if systemPropertiesEnabled is true in the device's policy. /// [Newtonsoft.Json.JsonPropertyAttribute("systemProperties")] public virtual System.Collections.Generic.IDictionary SystemProperties { get; set; } /// The user who owns the device. [Newtonsoft.Json.JsonPropertyAttribute("user")] public virtual User User { get; set; } /// /// The resource name of the user that owns this device in the form enterprises/{enterpriseId}/users/{userId}. /// [Newtonsoft.Json.JsonPropertyAttribute("userName")] public virtual string UserName { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Covers controls for device connectivity such as Wi-Fi, USB data access, keyboard/mouse connections, and more. /// public class DeviceConnectivityManagement : Google.Apis.Requests.IDirectResponseSchema { /// /// Optional. Access Point Name (APN) policy. Configuration for Access Point Names (APNs) which may override any /// other APNs on the device. See OVERRIDE_APNS_ENABLED and overrideApns for details. /// [Newtonsoft.Json.JsonPropertyAttribute("apnPolicy")] public virtual ApnPolicy ApnPolicy { get; set; } /// Optional. Controls whether Bluetooth sharing is allowed. [Newtonsoft.Json.JsonPropertyAttribute("bluetoothSharing")] public virtual string BluetoothSharing { get; set; } /// /// Controls Wi-Fi configuring privileges. Based on the option set, user will have either full or limited or no /// control in configuring Wi-Fi networks. /// [Newtonsoft.Json.JsonPropertyAttribute("configureWifi")] public virtual string ConfigureWifi { get; set; } /// /// Optional. Preferential network service configuration. Setting this field will override /// preferentialNetworkService. This can be set on both work profiles and fully managed devices on Android 13 /// and above. See 5G network slicing (https://developers.google.com/android/management/5g-network-slicing) /// guide for more details. /// [Newtonsoft.Json.JsonPropertyAttribute("preferentialNetworkServiceSettings")] public virtual PreferentialNetworkServiceSettings PreferentialNetworkServiceSettings { get; set; } /// /// Controls tethering settings. Based on the value set, the user is partially or fully disallowed from using /// different forms of tethering. /// [Newtonsoft.Json.JsonPropertyAttribute("tetheringSettings")] public virtual string TetheringSettings { get; set; } /// /// Controls what files and/or data can be transferred via USB. Supported only on company-owned devices. /// [Newtonsoft.Json.JsonPropertyAttribute("usbDataAccess")] public virtual string UsbDataAccess { get; set; } /// /// Controls configuring and using Wi-Fi direct settings. Supported on company-owned devices running Android 13 /// and above. /// [Newtonsoft.Json.JsonPropertyAttribute("wifiDirectSettings")] public virtual string WifiDirectSettings { get; set; } /// Optional. Wi-Fi roaming policy. [Newtonsoft.Json.JsonPropertyAttribute("wifiRoamingPolicy")] public virtual WifiRoamingPolicy WifiRoamingPolicy { get; set; } /// /// Restrictions on which Wi-Fi SSIDs the device can connect to. Note that this does not affect which networks /// can be configured on the device. Supported on company-owned devices running Android 13 and above. /// [Newtonsoft.Json.JsonPropertyAttribute("wifiSsidPolicy")] public virtual WifiSsidPolicy WifiSsidPolicy { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Controls for device radio settings. public class DeviceRadioState : Google.Apis.Requests.IDirectResponseSchema { /// Controls whether airplane mode can be toggled by the user or not. [Newtonsoft.Json.JsonPropertyAttribute("airplaneModeState")] public virtual string AirplaneModeState { get; set; } /// Controls whether cellular 2G setting can be toggled by the user or not. [Newtonsoft.Json.JsonPropertyAttribute("cellularTwoGState")] public virtual string CellularTwoGState { get; set; } /// The minimum required security level of Wi-Fi networks that the device can connect to. [Newtonsoft.Json.JsonPropertyAttribute("minimumWifiSecurityLevel")] public virtual string MinimumWifiSecurityLevel { get; set; } /// /// Controls the state of the ultra wideband setting and whether the user can toggle it on or off. /// [Newtonsoft.Json.JsonPropertyAttribute("ultraWidebandState")] public virtual string UltraWidebandState { get; set; } /// Controls current state of Wi-Fi and if user can change its state. [Newtonsoft.Json.JsonPropertyAttribute("wifiState")] public virtual string WifiState { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Information about security related device settings on device. public class DeviceSettings : Google.Apis.Requests.IDirectResponseSchema { /// /// Whether ADB (https://developer.android.com/studio/command-line/adb.html) is enabled on the device. /// [Newtonsoft.Json.JsonPropertyAttribute("adbEnabled")] public virtual System.Nullable AdbEnabled { get; set; } /// Whether developer mode is enabled on the device. [Newtonsoft.Json.JsonPropertyAttribute("developmentSettingsEnabled")] public virtual System.Nullable DevelopmentSettingsEnabled { get; set; } /// Encryption status from DevicePolicyManager. [Newtonsoft.Json.JsonPropertyAttribute("encryptionStatus")] public virtual string EncryptionStatus { get; set; } /// Whether the device is secured with PIN/password. [Newtonsoft.Json.JsonPropertyAttribute("isDeviceSecure")] public virtual System.Nullable IsDeviceSecure { get; set; } /// Whether the storage encryption is enabled. [Newtonsoft.Json.JsonPropertyAttribute("isEncrypted")] public virtual System.Nullable IsEncrypted { get; set; } /// Whether installing apps from unknown sources is enabled. [Newtonsoft.Json.JsonPropertyAttribute("unknownSourcesEnabled")] public virtual System.Nullable UnknownSourcesEnabled { get; set; } /// /// Whether Google Play Protect verification (https://support.google.com/accounts/answer/2812853) is enforced on /// the device. /// [Newtonsoft.Json.JsonPropertyAttribute("verifyAppsEnabled")] public virtual System.Nullable VerifyAppsEnabled { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Device display information. public class Display : Google.Apis.Requests.IDirectResponseSchema { /// Display density expressed as dots-per-inch. [Newtonsoft.Json.JsonPropertyAttribute("density")] public virtual System.Nullable Density { get; set; } /// Unique display id. [Newtonsoft.Json.JsonPropertyAttribute("displayId")] public virtual System.Nullable DisplayId { get; set; } /// Display height in pixels. [Newtonsoft.Json.JsonPropertyAttribute("height")] public virtual System.Nullable Height { get; set; } /// Name of the display. [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// Refresh rate of the display in frames per second. [Newtonsoft.Json.JsonPropertyAttribute("refreshRate")] public virtual System.Nullable RefreshRate { get; set; } /// State of the display. [Newtonsoft.Json.JsonPropertyAttribute("state")] public virtual string State { get; set; } /// Display width in pixels. [Newtonsoft.Json.JsonPropertyAttribute("width")] public virtual System.Nullable Width { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Controls for the display settings. public class DisplaySettings : Google.Apis.Requests.IDirectResponseSchema { /// Optional. Controls the screen brightness settings. [Newtonsoft.Json.JsonPropertyAttribute("screenBrightnessSettings")] public virtual ScreenBrightnessSettings ScreenBrightnessSettings { get; set; } /// Optional. Controls the screen timeout settings. [Newtonsoft.Json.JsonPropertyAttribute("screenTimeoutSettings")] public virtual ScreenTimeoutSettings ScreenTimeoutSettings { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A DNS lookup event was initiated through the standard network stack. public class DnsEvent : Google.Apis.Requests.IDirectResponseSchema { /// The hostname that was looked up. [Newtonsoft.Json.JsonPropertyAttribute("hostname")] public virtual string Hostname { get; set; } /// /// The (possibly truncated) list of the IP addresses returned for DNS lookup (max 10 IPv4 or IPv6 addresses). /// [Newtonsoft.Json.JsonPropertyAttribute("ipAddresses")] public virtual System.Collections.Generic.IList IpAddresses { get; set; } /// The package name of the UID that performed the DNS lookup. [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } /// /// The number of IP addresses returned from the DNS lookup event. May be higher than the amount of ip_addresses /// if there were too many addresses to log. /// [Newtonsoft.Json.JsonPropertyAttribute("totalIpAddressesReturned")] public virtual System.Nullable TotalIpAddressesReturned { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Information related to whether this device was migrated from being managed by another Device Policy Controller /// (DPC). /// public class DpcMigrationInfo : Google.Apis.Requests.IDirectResponseSchema { /// /// Output only. If this device was migrated from another DPC, the additionalData field of the migration token /// is populated here. /// [Newtonsoft.Json.JsonPropertyAttribute("additionalData")] public virtual string AdditionalData { get; set; } /// /// Output only. If this device was migrated from another DPC, this is its package name. Not populated /// otherwise. /// [Newtonsoft.Json.JsonPropertyAttribute("previousDpc")] public virtual string PreviousDpc { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// EID information for each eUICC chip. public class Eid : Google.Apis.Requests.IDirectResponseSchema { /// Output only. The EID [Newtonsoft.Json.JsonPropertyAttribute("eid")] public virtual string EidValue { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Information related to the EIDs of the device. public class EidInfo : Google.Apis.Requests.IDirectResponseSchema { /// Output only. EID information for each eUICC chip. [Newtonsoft.Json.JsonPropertyAttribute("eids")] public virtual System.Collections.Generic.IList Eids { 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; } } /// /// Represents that the device has completed enrollment. User should be in the launcher at this point, device at /// this point will be compliant and all setup steps have been completed. Intentionally empty. /// public class EnrollmentCompleteEvent : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } /// An enrollment token. public class EnrollmentToken : Google.Apis.Requests.IDirectResponseSchema { /// /// Optional, arbitrary data associated with the enrollment token. This could contain, for example, the ID of an /// org unit the device is assigned to after enrollment. After a device enrolls with the token, this data will /// be exposed in the enrollment_token_data field of the Device resource. The data must be 1024 characters or /// less; otherwise, the creation request will fail. /// [Newtonsoft.Json.JsonPropertyAttribute("additionalData")] public virtual string AdditionalData { get; set; } /// /// Controls whether personal usage is allowed on a device provisioned with this enrollment token.For /// company-owned devices: Enabling personal usage allows the user to set up a work profile on the device. /// Disabling personal usage requires the user provision the device as a fully managed device.For /// personally-owned devices: Enabling personal usage allows the user to set up a work profile on the device. /// Disabling personal usage will prevent the device from provisioning. Personal usage cannot be disabled on /// personally-owned device. /// [Newtonsoft.Json.JsonPropertyAttribute("allowPersonalUsage")] public virtual string AllowPersonalUsage { get; set; } /// /// The length of time the enrollment token is valid, ranging from 1 minute to Durations.MAX_VALUE /// (https://developers.google.com/protocol-buffers/docs/reference/java/com/google/protobuf/util/Durations.html#MAX_VALUE), /// approximately 10,000 years. If not specified, the default duration is 1 hour. Please note that if requested /// duration causes the resulting expiration_timestamp to exceed Timestamps.MAX_VALUE /// (https://developers.google.com/protocol-buffers/docs/reference/java/com/google/protobuf/util/Timestamps.html#MAX_VALUE), /// then expiration_timestamp is coerced to Timestamps.MAX_VALUE. /// [Newtonsoft.Json.JsonPropertyAttribute("duration")] public virtual object Duration { get; set; } private string _expirationTimestampRaw; private object _expirationTimestamp; /// The expiration time of the token. This is a read-only field generated by the server. [Newtonsoft.Json.JsonPropertyAttribute("expirationTimestamp")] public virtual string ExpirationTimestampRaw { get => _expirationTimestampRaw; set { _expirationTimestamp = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _expirationTimestampRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use ExpirationTimestampDateTimeOffset instead.")] public virtual object ExpirationTimestamp { get => _expirationTimestamp; set { _expirationTimestampRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _expirationTimestamp = value; } } /// /// representation of . /// [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? ExpirationTimestampDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(ExpirationTimestampRaw); set => ExpirationTimestampRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// /// The name of the enrollment token, which is generated by the server during creation, in the form /// enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}. /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// /// Whether the enrollment token is for one time use only. If the flag is set to true, only one device can use /// it for registration. /// [Newtonsoft.Json.JsonPropertyAttribute("oneTimeOnly")] public virtual System.Nullable OneTimeOnly { get; set; } /// /// The name of the policy initially applied to the enrolled device, in the form /// enterprises/{enterpriseId}/policies/{policyId}. If not specified, the policy_name for the device’s user is /// applied. If user_name is also not specified, enterprises/{enterpriseId}/policies/default is applied by /// default. When updating this field, you can specify only the policyId as long as the policyId doesn’t contain /// any slashes. The rest of the policy name will be inferred. /// [Newtonsoft.Json.JsonPropertyAttribute("policyName")] public virtual string PolicyName { get; set; } /// /// A JSON string whose UTF-8 representation can be used to generate a QR code to enroll a device with this /// enrollment token. To enroll a device using NFC, the NFC record must contain a serialized /// java.util.Properties representation of the properties in the JSON. /// [Newtonsoft.Json.JsonPropertyAttribute("qrCode")] public virtual string QrCode { get; set; } /// This field is deprecated and the value is ignored. [Newtonsoft.Json.JsonPropertyAttribute("user")] public virtual User User { get; set; } /// /// The token value that's passed to the device and authorizes the device to enroll. This is a read-only field /// generated by the server. /// [Newtonsoft.Json.JsonPropertyAttribute("value")] public virtual string Value { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// The configuration applied to an enterprise. public class Enterprise : Google.Apis.Requests.IDirectResponseSchema { /// Deprecated and unused. [Newtonsoft.Json.JsonPropertyAttribute("appAutoApprovalEnabled")] public virtual System.Nullable AppAutoApprovalEnabled { get; set; } /// The enterprise contact info of an EMM-managed enterprise. [Newtonsoft.Json.JsonPropertyAttribute("contactInfo")] public virtual ContactInfo ContactInfo { get; set; } /// The types of Google Pub/Sub notifications enabled for the enterprise. [Newtonsoft.Json.JsonPropertyAttribute("enabledNotificationTypes")] public virtual System.Collections.Generic.IList EnabledNotificationTypes { get; set; } /// /// The name of the enterprise displayed to users. This field has a maximum length of 100 characters. /// [Newtonsoft.Json.JsonPropertyAttribute("enterpriseDisplayName")] public virtual string EnterpriseDisplayName { get; set; } /// Output only. The type of the enterprise. [Newtonsoft.Json.JsonPropertyAttribute("enterpriseType")] public virtual string EnterpriseType { get; set; } /// Settings for Google-provided user authentication. [Newtonsoft.Json.JsonPropertyAttribute("googleAuthenticationSettings")] public virtual GoogleAuthenticationSettings GoogleAuthenticationSettings { get; set; } /// /// An image displayed as a logo during device provisioning. Supported types are: image/bmp, image/gif, /// image/x-ico, image/jpeg, image/png, image/webp, image/vnd.wap.wbmp, image/x-adobe-dng. /// [Newtonsoft.Json.JsonPropertyAttribute("logo")] public virtual ExternalData Logo { get; set; } /// Output only. The type of managed Google domain. [Newtonsoft.Json.JsonPropertyAttribute("managedGoogleDomainType")] public virtual string ManagedGoogleDomainType { get; set; } /// Output only. The type of a managed Google Play Accounts enterprise. [Newtonsoft.Json.JsonPropertyAttribute("managedGooglePlayAccountsEnterpriseType")] public virtual string ManagedGooglePlayAccountsEnterpriseType { get; set; } /// /// The name of the enterprise which is generated by the server during creation, in the form /// enterprises/{enterpriseId}. /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// /// A color in RGB format that indicates the predominant color to display in the device management app UI. The /// color components are stored as follows: (red << 16) | (green << 8) | blue, where /// the value of each component is between 0 and 255, inclusive. /// [Newtonsoft.Json.JsonPropertyAttribute("primaryColor")] public virtual System.Nullable PrimaryColor { get; set; } /// /// The topic which Pub/Sub notifications are published to, in the form projects/{project}/topics/{topic}. This /// field is only required if Pub/Sub notifications are enabled. /// [Newtonsoft.Json.JsonPropertyAttribute("pubsubTopic")] public virtual string PubsubTopic { get; set; } /// Sign-in details of the enterprise. [Newtonsoft.Json.JsonPropertyAttribute("signinDetails")] public virtual System.Collections.Generic.IList SigninDetails { get; set; } /// /// Terms and conditions that must be accepted when provisioning a device for this enterprise. A page of terms /// is generated for each value in this list. /// [Newtonsoft.Json.JsonPropertyAttribute("termsAndConditions")] public virtual System.Collections.Generic.IList TermsAndConditions { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// An event sent for an enterprise upgrade. An enterprise upgrade is a process that upgrades a managed Google Play /// Accounts enterprise to a managed Google domain. /// public class EnterpriseUpgradeEvent : Google.Apis.Requests.IDirectResponseSchema { /// The name of upgraded enterprise in the format "enterprises/{enterprise}" [Newtonsoft.Json.JsonPropertyAttribute("enterprise")] public virtual string Enterprise { get; set; } /// Output only. The upgrade state of the enterprise. [Newtonsoft.Json.JsonPropertyAttribute("upgradeState")] public virtual string UpgradeState { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Status and error details (if present) of an ADD_ESIM or REMOVE_ESIM command. public class EsimCommandStatus : Google.Apis.Requests.IDirectResponseSchema { /// /// Output only. Information about the eSIM added or removed. This is populated only when the eSIM operation /// status is SUCCESS. /// [Newtonsoft.Json.JsonPropertyAttribute("esimInfo")] public virtual EsimInfo EsimInfo { get; set; } /// Output only. Details of the error if the status is set to INTERNAL_ERROR. [Newtonsoft.Json.JsonPropertyAttribute("internalErrorDetails")] public virtual InternalErrorDetails InternalErrorDetails { get; set; } /// Output only. Status of an ADD_ESIM or REMOVE_ESIM command. [Newtonsoft.Json.JsonPropertyAttribute("status")] public virtual string Status { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Details of the eSIM added or removed. public class EsimInfo : Google.Apis.Requests.IDirectResponseSchema { /// Output only. ICC ID of the eSIM. [Newtonsoft.Json.JsonPropertyAttribute("iccId")] public virtual string IccId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Information related to the eUICC chip. public class EuiccChipInfo : Google.Apis.Requests.IDirectResponseSchema { /// /// Output only. The Embedded Identity Document (EID) that identifies the eUICC chip for each eUICC chip on the /// device. This is available on company owned devices running Android 13 and above. /// [Newtonsoft.Json.JsonPropertyAttribute("eid")] public virtual string Eid { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Configuration to enable an app as an extension app, with the capability of interacting with Android Device /// Policy offline. For Android versions 11 and above, extension apps are exempt from battery restrictions so will /// not be placed into the restricted App Standby Bucket /// (https://developer.android.com/topic/performance/appstandby#restricted-bucket). Extensions apps are also /// protected against users clearing their data or force-closing the application, although admins can continue to /// use the clear app data command on extension apps if needed for Android 11 and above. /// public class ExtensionConfig : Google.Apis.Requests.IDirectResponseSchema { /// /// Fully qualified class name of the receiver service class for Android Device Policy to notify the extension /// app of any local command status updates. The service must be exported in the extension app's /// AndroidManifest.xml and extend NotificationReceiverService /// (https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/notification/NotificationReceiverService) /// (see Integrate with the AMAPI SDK (https://developers.google.com/android/management/sdk-integration) guide /// for more details). /// [Newtonsoft.Json.JsonPropertyAttribute("notificationReceiver")] public virtual string NotificationReceiver { get; set; } /// /// Hex-encoded SHA-256 hashes of the signing key certificates of the extension app. Only hexadecimal string /// representations of 64 characters are valid.The signing key certificate fingerprints are always obtained from /// the Play Store and this field is used to provide additional signing key certificate fingerprints. However, /// if the application is not available on the Play Store, this field needs to be set. A NonComplianceDetail /// with INVALID_VALUE is reported if this field is not set when the application is not available on the Play /// Store.The signing key certificate fingerprint of the extension app on the device must match one of the /// signing key certificate fingerprints obtained from the Play Store or the ones provided in this field for the /// app to be able to communicate with Android Device Policy.In production use cases, it is recommended to leave /// this empty. /// [Newtonsoft.Json.JsonPropertyAttribute("signingKeyFingerprintsSha256")] public virtual System.Collections.Generic.IList SigningKeyFingerprintsSha256 { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Data hosted at an external location. The data is to be downloaded by Android Device Policy and verified against /// the hash. /// public class ExternalData : Google.Apis.Requests.IDirectResponseSchema { /// /// The base-64 encoded SHA-256 hash of the content hosted at url. If the content doesn't match this hash, /// Android Device Policy won't use the data. /// [Newtonsoft.Json.JsonPropertyAttribute("sha256Hash")] public virtual string Sha256Hash { get; set; } /// /// The absolute URL to the data, which must use either the http or https scheme. Android Device Policy doesn't /// provide any credentials in the GET request, so the URL must be publicly accessible. Including a long, random /// component in the URL may be used to prevent attackers from discovering the URL. /// [Newtonsoft.Json.JsonPropertyAttribute("url")] public virtual string Url { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A file was downloaded from the device. public class FilePulledEvent : Google.Apis.Requests.IDirectResponseSchema { /// The path of the file being pulled. [Newtonsoft.Json.JsonPropertyAttribute("filePath")] public virtual string FilePath { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A file was uploaded onto the device. public class FilePushedEvent : Google.Apis.Requests.IDirectResponseSchema { /// The path of the file being pushed. [Newtonsoft.Json.JsonPropertyAttribute("filePath")] public virtual string FilePath { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A system freeze period. When a device’s clock is within the freeze period, all incoming system updates /// (including security patches) are blocked and won’t be installed.When the device is outside any set freeze /// periods, the normal policy behavior (automatic, windowed, or postponed) applies.Leap years are ignored in freeze /// period calculations, in particular: If Feb. 29th is set as the start or end date of a freeze period, the freeze /// period will start or end on Feb. 28th instead. When a device’s system clock reads Feb. 29th, it’s treated as /// Feb. 28th. When calculating the number of days in a freeze period or the time between two freeze periods, Feb. /// 29th is ignored and not counted as a day.Note: For Freeze Periods to take effect, SystemUpdateType cannot be /// specified as SYSTEM_UPDATE_TYPE_UNSPECIFIED, because freeze periods require a defined policy to be specified. /// public class FreezePeriod : Google.Apis.Requests.IDirectResponseSchema { /// /// The end date (inclusive) of the freeze period. Must be no later than 90 days from the start date. If the end /// date is earlier than the start date, the freeze period is considered wrapping year-end. Note: day and month /// must be set. year should not be set as it is not used. For example, {"month": 1,"date": 30}. /// [Newtonsoft.Json.JsonPropertyAttribute("endDate")] public virtual Date EndDate { get; set; } /// /// The start date (inclusive) of the freeze period. Note: day and month must be set. year should not be set as /// it is not used. For example, {"month": 1,"date": 30}. /// [Newtonsoft.Json.JsonPropertyAttribute("startDate")] public virtual Date StartDate { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Request message for generating a URL to upgrade an existing managed Google Play Accounts enterprise to a managed /// Google domain.Note: This feature is not generally available. /// public class GenerateEnterpriseUpgradeUrlRequest : Google.Apis.Requests.IDirectResponseSchema { /// /// Optional. Email address used to prefill the admin field of the enterprise signup form as part of the upgrade /// process. This value is a hint only and can be altered by the user. Personal email addresses are not allowed. /// If allowedDomains is non-empty then this must belong to one of the allowedDomains. /// [Newtonsoft.Json.JsonPropertyAttribute("adminEmail")] public virtual string AdminEmail { get; set; } /// /// Optional. A list of domains that are permitted for the admin email. The IT admin cannot enter an email /// address with a domain name that is not in this list. Subdomains of domains in this list are not allowed but /// can be allowed by adding a second entry which has *. prefixed to the domain name (e.g. *.example.com). If /// the field is not present or is an empty list then the IT admin is free to use any valid domain name. /// Personal email domains are not allowed. /// [Newtonsoft.Json.JsonPropertyAttribute("allowedDomains")] public virtual System.Collections.Generic.IList AllowedDomains { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Response message for generating a URL to upgrade an existing managed Google Play Accounts enterprise to a /// managed Google domain.Note: This feature is not generally available. /// public class GenerateEnterpriseUpgradeUrlResponse : Google.Apis.Requests.IDirectResponseSchema { /// /// A URL for an enterprise admin to upgrade their enterprise. The page can't be rendered in an iframe. /// [Newtonsoft.Json.JsonPropertyAttribute("url")] public virtual string Url { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Contains settings for Google-provided user authentication. public class GoogleAuthenticationSettings : Google.Apis.Requests.IDirectResponseSchema { /// /// Output only. Whether users need to be authenticated by Google during the enrollment process. IT admin can /// specify if Google authentication is enabled for the enterprise for knowledge worker devices. This value can /// be set only via the Google Admin Console. Google authentication can be used with signin_url In the case /// where Google authentication is required and a signin_url is specified, Google authentication will be /// launched before signin_url. /// [Newtonsoft.Json.JsonPropertyAttribute("googleAuthenticationRequired")] public virtual string GoogleAuthenticationRequired { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Information about device hardware. The fields related to temperature thresholds are only available if /// hardwareStatusEnabled is true in the device's policy. /// public class HardwareInfo : Google.Apis.Requests.IDirectResponseSchema { /// Battery shutdown temperature thresholds in Celsius for each battery on the device. [Newtonsoft.Json.JsonPropertyAttribute("batteryShutdownTemperatures")] public virtual System.Collections.Generic.IList> BatteryShutdownTemperatures { get; set; } /// Battery throttling temperature thresholds in Celsius for each battery on the device. [Newtonsoft.Json.JsonPropertyAttribute("batteryThrottlingTemperatures")] public virtual System.Collections.Generic.IList> BatteryThrottlingTemperatures { get; set; } /// Brand of the device. For example, Google. [Newtonsoft.Json.JsonPropertyAttribute("brand")] public virtual string Brand { get; set; } /// CPU shutdown temperature thresholds in Celsius for each CPU on the device. [Newtonsoft.Json.JsonPropertyAttribute("cpuShutdownTemperatures")] public virtual System.Collections.Generic.IList> CpuShutdownTemperatures { get; set; } /// CPU throttling temperature thresholds in Celsius for each CPU on the device. [Newtonsoft.Json.JsonPropertyAttribute("cpuThrottlingTemperatures")] public virtual System.Collections.Generic.IList> CpuThrottlingTemperatures { get; set; } /// Baseband version. For example, MDM9625_104662.22.05.34p. [Newtonsoft.Json.JsonPropertyAttribute("deviceBasebandVersion")] public virtual string DeviceBasebandVersion { get; set; } /// /// Output only. ID that uniquely identifies a personally-owned device in a particular organization. On the same /// physical device when enrolled with the same organization, this ID persists across setups and even factory /// resets. This ID is available on personally-owned devices with a work profile on devices running Android 12 /// and above. /// [Newtonsoft.Json.JsonPropertyAttribute("enterpriseSpecificId")] public virtual string EnterpriseSpecificId { get; set; } /// Output only. Information related to the eUICC chip. [Newtonsoft.Json.JsonPropertyAttribute("euiccChipInfo")] public virtual System.Collections.Generic.IList EuiccChipInfo { get; set; } /// GPU shutdown temperature thresholds in Celsius for each GPU on the device. [Newtonsoft.Json.JsonPropertyAttribute("gpuShutdownTemperatures")] public virtual System.Collections.Generic.IList> GpuShutdownTemperatures { get; set; } /// GPU throttling temperature thresholds in Celsius for each GPU on the device. [Newtonsoft.Json.JsonPropertyAttribute("gpuThrottlingTemperatures")] public virtual System.Collections.Generic.IList> GpuThrottlingTemperatures { get; set; } /// Name of the hardware. For example, Angler. [Newtonsoft.Json.JsonPropertyAttribute("hardware")] public virtual string Hardware { get; set; } /// Manufacturer. For example, Motorola. [Newtonsoft.Json.JsonPropertyAttribute("manufacturer")] public virtual string Manufacturer { get; set; } /// The model of the device. For example, Asus Nexus 7. [Newtonsoft.Json.JsonPropertyAttribute("model")] public virtual string Model { get; set; } /// /// The device serial number. However, for personally-owned devices running Android 12 and above, this is the /// same as the enterpriseSpecificId. /// [Newtonsoft.Json.JsonPropertyAttribute("serialNumber")] public virtual string SerialNumber { get; set; } /// Device skin shutdown temperature thresholds in Celsius. [Newtonsoft.Json.JsonPropertyAttribute("skinShutdownTemperatures")] public virtual System.Collections.Generic.IList> SkinShutdownTemperatures { get; set; } /// Device skin throttling temperature thresholds in Celsius. [Newtonsoft.Json.JsonPropertyAttribute("skinThrottlingTemperatures")] public virtual System.Collections.Generic.IList> SkinThrottlingTemperatures { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Hardware status. Temperatures may be compared to the temperature thresholds available in hardwareInfo to /// determine hardware health. /// public class HardwareStatus : Google.Apis.Requests.IDirectResponseSchema { /// Current battery temperatures in Celsius for each battery on the device. [Newtonsoft.Json.JsonPropertyAttribute("batteryTemperatures")] public virtual System.Collections.Generic.IList> BatteryTemperatures { get; set; } /// Current CPU temperatures in Celsius for each CPU on the device. [Newtonsoft.Json.JsonPropertyAttribute("cpuTemperatures")] public virtual System.Collections.Generic.IList> CpuTemperatures { get; set; } /// /// CPU usages in percentage for each core available on the device. Usage is 0 for each unplugged core. Empty /// array implies that CPU usage is not supported in the system. /// [Newtonsoft.Json.JsonPropertyAttribute("cpuUsages")] public virtual System.Collections.Generic.IList> CpuUsages { get; set; } private string _createTimeRaw; private object _createTime; /// The time the measurements were taken. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { get => _createTimeRaw; set { _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _createTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] public virtual object CreateTime { get => _createTime; set { _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _createTime = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? CreateTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// /// Fan speeds in RPM for each fan on the device. Empty array means that there are no fans or fan speed is not /// supported on the system. /// [Newtonsoft.Json.JsonPropertyAttribute("fanSpeeds")] public virtual System.Collections.Generic.IList> FanSpeeds { get; set; } /// Current GPU temperatures in Celsius for each GPU on the device. [Newtonsoft.Json.JsonPropertyAttribute("gpuTemperatures")] public virtual System.Collections.Generic.IList> GpuTemperatures { get; set; } /// Current device skin temperatures in Celsius. [Newtonsoft.Json.JsonPropertyAttribute("skinTemperatures")] public virtual System.Collections.Generic.IList> SkinTemperatures { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Amongst apps with InstallType set to: FORCE_INSTALLED PREINSTALLEDthis defines a set of restrictions for the app /// installation. At least one of the fields must be set. When multiple fields are set, then all the constraints /// need to be satisfied for the app to be installed. /// public class InstallConstraint : Google.Apis.Requests.IDirectResponseSchema { /// Optional. Charging constraint. [Newtonsoft.Json.JsonPropertyAttribute("chargingConstraint")] public virtual string ChargingConstraint { get; set; } /// Optional. Device idle constraint. [Newtonsoft.Json.JsonPropertyAttribute("deviceIdleConstraint")] public virtual string DeviceIdleConstraint { get; set; } /// Optional. Network type constraint. [Newtonsoft.Json.JsonPropertyAttribute("networkTypeConstraint")] public virtual string NetworkTypeConstraint { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Internal error details if present for the ADD_ESIM or REMOVE_ESIM command. public class InternalErrorDetails : Google.Apis.Requests.IDirectResponseSchema { /// /// Output only. Integer representation of the error code as specified here /// (https://developer.android.com/reference/android/telephony/euicc/EuiccManager#EXTRA_EMBEDDED_SUBSCRIPTION_DETAILED_CODE). /// See also, OPERATION_SMDX_SUBJECT_REASON_CODE. See error_code_detail for more details. /// [Newtonsoft.Json.JsonPropertyAttribute("errorCode")] public virtual System.Nullable ErrorCode { get; set; } /// Output only. The error code detail corresponding to the error_code. [Newtonsoft.Json.JsonPropertyAttribute("errorCodeDetail")] public virtual string ErrorCodeDetail { get; set; } /// /// Output only. Integer representation of the operation code as specified here /// (https://developer.android.com/reference/android/telephony/euicc/EuiccManager#EXTRA_EMBEDDED_SUBSCRIPTION_DETAILED_CODE). /// See operation_code_detail for more details. /// [Newtonsoft.Json.JsonPropertyAttribute("operationCode")] public virtual System.Nullable OperationCode { get; set; } /// Output only. The operation code detail corresponding to the operation_code. [Newtonsoft.Json.JsonPropertyAttribute("operationCodeDetail")] public virtual string OperationCodeDetail { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response on issuing a command. This is currently empty as a placeholder. public class IssueCommandResponse : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A cryptographic key including user installed, admin installed and system maintained private key is removed from /// the device either by the user or management. This is available device-wide on fully managed devices and within /// the work profile on organization-owned devices with a work profile. /// public class KeyDestructionEvent : Google.Apis.Requests.IDirectResponseSchema { /// UID of the application which owns the key. [Newtonsoft.Json.JsonPropertyAttribute("applicationUid")] public virtual System.Nullable ApplicationUid { get; set; } /// Alias of the key. [Newtonsoft.Json.JsonPropertyAttribute("keyAlias")] public virtual string KeyAlias { get; set; } /// Whether the operation was successful. [Newtonsoft.Json.JsonPropertyAttribute("success")] public virtual System.Nullable Success { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A cryptographic key including user installed, admin installed and system maintained private key is installed on /// the device either by the user or management.This is available device-wide on fully managed devices and within /// the work profile on organization-owned devices with a work profile. /// public class KeyGeneratedEvent : Google.Apis.Requests.IDirectResponseSchema { /// UID of the application which generated the key. [Newtonsoft.Json.JsonPropertyAttribute("applicationUid")] public virtual System.Nullable ApplicationUid { get; set; } /// Alias of the key. [Newtonsoft.Json.JsonPropertyAttribute("keyAlias")] public virtual string KeyAlias { get; set; } /// Whether the operation was successful. [Newtonsoft.Json.JsonPropertyAttribute("success")] public virtual System.Nullable Success { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A cryptographic key including user installed, admin installed and system maintained private key is imported on /// the device either by the user or management. This is available device-wide on fully managed devices and within /// the work profile on organization-owned devices with a work profile. /// public class KeyImportEvent : Google.Apis.Requests.IDirectResponseSchema { /// UID of the application which imported the key [Newtonsoft.Json.JsonPropertyAttribute("applicationUid")] public virtual System.Nullable ApplicationUid { get; set; } /// Alias of the key. [Newtonsoft.Json.JsonPropertyAttribute("keyAlias")] public virtual string KeyAlias { get; set; } /// Whether the operation was successful. [Newtonsoft.Json.JsonPropertyAttribute("success")] public virtual System.Nullable Success { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A cryptographic key including user installed, admin installed and system maintained private key is determined to /// be corrupted due to storage corruption, hardware failure or some OS issue. This is available device-wide on /// fully managed devices and within the work profile on organization-owned devices with a work profile. /// public class KeyIntegrityViolationEvent : Google.Apis.Requests.IDirectResponseSchema { /// UID of the application which owns the key [Newtonsoft.Json.JsonPropertyAttribute("applicationUid")] public virtual System.Nullable ApplicationUid { get; set; } /// Alias of the key. [Newtonsoft.Json.JsonPropertyAttribute("keyAlias")] public virtual string KeyAlias { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Keyed app state reported by the app. public class KeyedAppState : Google.Apis.Requests.IDirectResponseSchema { private string _createTimeRaw; private object _createTime; /// The creation time of the app state on the device. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { get => _createTimeRaw; set { _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _createTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] public virtual object CreateTime { get => _createTime; set { _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _createTime = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? CreateTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// /// Optionally, a machine-readable value to be read by the EMM. For example, setting values that the admin can /// choose to query against in the EMM console (e.g. “notify me if the battery_warning data < 10”). /// [Newtonsoft.Json.JsonPropertyAttribute("data")] public virtual string Data { get; set; } /// /// The key for the app state. Acts as a point of reference for what the app is providing state for. For /// example, when providing managed configuration feedback, this key could be the managed configuration key. /// [Newtonsoft.Json.JsonPropertyAttribute("key")] public virtual string Key { get; set; } private string _lastUpdateTimeRaw; private object _lastUpdateTime; /// The time the app state was most recently updated. [Newtonsoft.Json.JsonPropertyAttribute("lastUpdateTime")] public virtual string LastUpdateTimeRaw { get => _lastUpdateTimeRaw; set { _lastUpdateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _lastUpdateTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use LastUpdateTimeDateTimeOffset instead.")] public virtual object LastUpdateTime { get => _lastUpdateTime; set { _lastUpdateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _lastUpdateTime = value; } } /// /// representation of . /// [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? LastUpdateTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(LastUpdateTimeRaw); set => LastUpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// /// Optionally, a free-form message string to explain the app state. If the state was triggered by a particular /// value (e.g. a managed configuration value), it should be included in the message. /// [Newtonsoft.Json.JsonPropertyAttribute("message")] public virtual string Message { get; set; } /// The severity of the app state. [Newtonsoft.Json.JsonPropertyAttribute("severity")] public virtual string Severity { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// An attempt was made to unlock the device. public class KeyguardDismissAuthAttemptEvent : Google.Apis.Requests.IDirectResponseSchema { /// /// Whether a strong form of authentication (password, PIN, or pattern) was used to unlock device. /// [Newtonsoft.Json.JsonPropertyAttribute("strongAuthMethodUsed")] public virtual System.Nullable StrongAuthMethodUsed { get; set; } /// Whether the unlock attempt was successful. [Newtonsoft.Json.JsonPropertyAttribute("success")] public virtual System.Nullable Success { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// The keyguard was dismissed. Intentionally empty. public class KeyguardDismissedEvent : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } /// The device was locked either by user or timeout. Intentionally empty. public class KeyguardSecuredEvent : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Settings controlling the behavior of a device in kiosk mode. To enable kiosk mode, set /// kioskCustomLauncherEnabled to true or specify an app in the policy with installType KIOSK. /// public class KioskCustomization : Google.Apis.Requests.IDirectResponseSchema { /// Specifies whether the Settings app is allowed in kiosk mode. [Newtonsoft.Json.JsonPropertyAttribute("deviceSettings")] public virtual string DeviceSettings { get; set; } /// /// Sets the behavior of a device in kiosk mode when a user presses and holds (long-presses) the Power button. /// [Newtonsoft.Json.JsonPropertyAttribute("powerButtonActions")] public virtual string PowerButtonActions { get; set; } /// Specifies whether system info and notifications are disabled in kiosk mode. [Newtonsoft.Json.JsonPropertyAttribute("statusBar")] public virtual string StatusBar { get; set; } /// /// Specifies whether system error dialogs for crashed or unresponsive apps are blocked in kiosk mode. When /// blocked, the system will force-stop the app as if the user chooses the "close app" option on the UI. /// [Newtonsoft.Json.JsonPropertyAttribute("systemErrorWarnings")] public virtual string SystemErrorWarnings { get; set; } /// /// Specifies which navigation features are enabled (e.g. Home, Overview buttons) in kiosk mode. /// [Newtonsoft.Json.JsonPropertyAttribute("systemNavigation")] public virtual string SystemNavigation { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// An action to launch an app. public class LaunchAppAction : Google.Apis.Requests.IDirectResponseSchema { /// Package name of app to be launched [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response to a request to list devices for a given enterprise. public class ListDevicesResponse : Google.Apis.Requests.IDirectResponseSchema { /// The list of devices. [Newtonsoft.Json.JsonPropertyAttribute("devices")] public virtual System.Collections.Generic.IList Devices { get; set; } /// If there are more results, a token to retrieve next page of results. [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] public virtual string NextPageToken { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response to a request to list enrollment tokens for a given enterprise. public class ListEnrollmentTokensResponse : Google.Apis.Requests.IDirectResponseSchema { /// The list of enrollment tokens. [Newtonsoft.Json.JsonPropertyAttribute("enrollmentTokens")] public virtual System.Collections.Generic.IList EnrollmentTokens { get; set; } /// If there are more results, a token to retrieve next page of results. [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] public virtual string NextPageToken { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response to a request to list enterprises. public class ListEnterprisesResponse : Google.Apis.Requests.IDirectResponseSchema { /// The list of enterprises. [Newtonsoft.Json.JsonPropertyAttribute("enterprises")] public virtual System.Collections.Generic.IList Enterprises { get; set; } /// If there are more results, a token to retrieve next page of results. [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] public virtual string NextPageToken { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response to a request to list migration tokens for a given enterprise. public class ListMigrationTokensResponse : Google.Apis.Requests.IDirectResponseSchema { /// The migration tokens from the specified enterprise. [Newtonsoft.Json.JsonPropertyAttribute("migrationTokens")] public virtual System.Collections.Generic.IList MigrationTokens { get; set; } /// /// A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no /// subsequent pages. /// [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] public virtual string NextPageToken { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// The response message for Operations.ListOperations. public class ListOperationsResponse : Google.Apis.Requests.IDirectResponseSchema { /// The standard List next-page token. [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] public virtual string NextPageToken { get; set; } /// A list of operations that matches the specified filter in the request. [Newtonsoft.Json.JsonPropertyAttribute("operations")] public virtual System.Collections.Generic.IList Operations { get; set; } /// /// Unordered list. Unreachable resources. Populated when the request sets /// ListOperationsRequest.return_partial_success and reads across collections. For example, when attempting to /// list all resources across all supported locations. /// [Newtonsoft.Json.JsonPropertyAttribute("unreachable")] public virtual System.Collections.Generic.IList Unreachable { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response to a request to list policies for a given enterprise. public class ListPoliciesResponse : Google.Apis.Requests.IDirectResponseSchema { /// If there are more results, a token to retrieve next page of results. [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] public virtual string NextPageToken { get; set; } /// The list of policies. [Newtonsoft.Json.JsonPropertyAttribute("policies")] public virtual System.Collections.Generic.IList Policies { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response to a request to list web apps for a given enterprise. public class ListWebAppsResponse : Google.Apis.Requests.IDirectResponseSchema { /// If there are more results, a token to retrieve next page of results. [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] public virtual string NextPageToken { get; set; } /// The list of web apps. [Newtonsoft.Json.JsonPropertyAttribute("webApps")] public virtual System.Collections.Generic.IList WebApps { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// The device location containing the latitude and longitude. public class Location : Google.Apis.Requests.IDirectResponseSchema { /// The latitude position of the location [Newtonsoft.Json.JsonPropertyAttribute("latitude")] public virtual System.Nullable Latitude { get; set; } /// The longitude position of the location [Newtonsoft.Json.JsonPropertyAttribute("longitude")] public virtual System.Nullable Longitude { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// The usageLog buffer on the device has reached 90% of its capacity, therefore older events may be dropped. /// Intentionally empty. /// public class LogBufferSizeCriticalEvent : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } /// usageLog policy has been enabled. Intentionally empty. public class LoggingStartedEvent : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } /// usageLog policy has been disabled. Intentionally empty. public class LoggingStoppedEvent : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } /// A lost mode event containing the device location and battery level as a percentage. public class LostModeLocationEvent : Google.Apis.Requests.IDirectResponseSchema { /// The battery level as a number between 0 and 100 inclusive [Newtonsoft.Json.JsonPropertyAttribute("batteryLevel")] public virtual System.Nullable BatteryLevel { get; set; } /// The device location [Newtonsoft.Json.JsonPropertyAttribute("location")] public virtual Location Location { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// An event indicating an outgoing phone call has been made when a device is in lost mode. Intentionally empty. /// public class LostModeOutgoingPhoneCallEvent : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } /// /// The managed configurations template for the app, saved from the managed configurations iframe. /// public class ManagedConfigurationTemplate : Google.Apis.Requests.IDirectResponseSchema { /// Optional, a map containing configuration variables defined for the configuration. [Newtonsoft.Json.JsonPropertyAttribute("configurationVariables")] public virtual System.Collections.Generic.IDictionary ConfigurationVariables { get; set; } /// The ID of the managed configurations template. [Newtonsoft.Json.JsonPropertyAttribute("templateId")] public virtual string TemplateId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Managed property. public class ManagedProperty : Google.Apis.Requests.IDirectResponseSchema { /// The default value of the property. BUNDLE_ARRAY properties don't have a default value. [Newtonsoft.Json.JsonPropertyAttribute("defaultValue")] public virtual object DefaultValue { get; set; } /// /// A longer description of the property, providing more detail of what it affects. Localized. /// [Newtonsoft.Json.JsonPropertyAttribute("description")] public virtual string Description { get; set; } /// For CHOICE or MULTISELECT properties, the list of possible entries. [Newtonsoft.Json.JsonPropertyAttribute("entries")] public virtual System.Collections.Generic.IList Entries { get; set; } /// /// The unique key that the app uses to identify the property, e.g. "com.google.android.gm.fieldname". /// [Newtonsoft.Json.JsonPropertyAttribute("key")] public virtual string Key { get; set; } /// /// For BUNDLE_ARRAY properties, the list of nested properties. A BUNDLE_ARRAY property is at most two levels /// deep. /// [Newtonsoft.Json.JsonPropertyAttribute("nestedProperties")] public virtual System.Collections.Generic.IList NestedProperties { get; set; } /// The name of the property. Localized. [Newtonsoft.Json.JsonPropertyAttribute("title")] public virtual string Title { get; set; } /// The type of the property. [Newtonsoft.Json.JsonPropertyAttribute("type")] public virtual string Type { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// An entry of a managed property. public class ManagedPropertyEntry : Google.Apis.Requests.IDirectResponseSchema { /// The human-readable name of the value. Localized. [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// /// The machine-readable value of the entry, which should be used in the configuration. Not localized. /// [Newtonsoft.Json.JsonPropertyAttribute("value")] public virtual string Value { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Removable media was mounted. public class MediaMountEvent : Google.Apis.Requests.IDirectResponseSchema { /// Mount point. [Newtonsoft.Json.JsonPropertyAttribute("mountPoint")] public virtual string MountPoint { get; set; } /// Volume label. Redacted to empty string on organization-owned managed profile devices. [Newtonsoft.Json.JsonPropertyAttribute("volumeLabel")] public virtual string VolumeLabel { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Removable media was unmounted. public class MediaUnmountEvent : Google.Apis.Requests.IDirectResponseSchema { /// Mount point. [Newtonsoft.Json.JsonPropertyAttribute("mountPoint")] public virtual string MountPoint { get; set; } /// Volume label. Redacted to empty string on organization-owned managed profile devices. [Newtonsoft.Json.JsonPropertyAttribute("volumeLabel")] public virtual string VolumeLabel { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// An event related to memory and storage measurements.To distinguish between new and old events, we recommend /// using the createTime field. /// public class MemoryEvent : Google.Apis.Requests.IDirectResponseSchema { /// /// The number of free bytes in the medium, or for EXTERNAL_STORAGE_DETECTED, the total capacity in bytes of the /// storage medium. /// [Newtonsoft.Json.JsonPropertyAttribute("byteCount")] public virtual System.Nullable ByteCount { get; set; } private string _createTimeRaw; private object _createTime; /// The creation time of the event. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { get => _createTimeRaw; set { _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _createTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] public virtual object CreateTime { get => _createTime; set { _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _createTime = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? CreateTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// Event type. [Newtonsoft.Json.JsonPropertyAttribute("eventType")] public virtual string EventType { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Information about device memory and storage. public class MemoryInfo : Google.Apis.Requests.IDirectResponseSchema { /// Total internal storage on device in bytes. [Newtonsoft.Json.JsonPropertyAttribute("totalInternalStorage")] public virtual System.Nullable TotalInternalStorage { get; set; } /// Total RAM on device in bytes. [Newtonsoft.Json.JsonPropertyAttribute("totalRam")] public virtual System.Nullable TotalRam { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A token to initiate the migration of a device from being managed by a third-party DPC to being managed by /// Android Management API. A migration token is valid only for a single device. See the guide /// (https://developers.google.com/android/management/dpc-migration) for more details. /// public class MigrationToken : Google.Apis.Requests.IDirectResponseSchema { /// /// Immutable. Optional EMM-specified additional data. Once the device is migrated this will be populated in the /// migrationAdditionalData field of the Device resource. This must be at most 1024 characters. /// [Newtonsoft.Json.JsonPropertyAttribute("additionalData")] public virtual string AdditionalData { get; set; } private string _createTimeRaw; private object _createTime; /// Output only. Time when this migration token was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { get => _createTimeRaw; set { _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _createTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] public virtual object CreateTime { get => _createTime; set { _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _createTime = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? CreateTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// /// Output only. Once this migration token is used to migrate a device, the name of the resulting Device /// resource will be populated here, in the form enterprises/{enterprise}/devices/{device}. /// [Newtonsoft.Json.JsonPropertyAttribute("device")] public virtual string Device { get; set; } /// /// Required. Immutable. The id of the device, as in the Play EMM API. This corresponds to the deviceId /// parameter in Play EMM API's Devices.get /// (https://developers.google.com/android/work/play/emm-api/v1/devices/get#parameters) call. /// [Newtonsoft.Json.JsonPropertyAttribute("deviceId")] public virtual string DeviceId { get; set; } private string _expireTimeRaw; private object _expireTime; /// /// Immutable. The time when this migration token expires. This can be at most seven days from the time of /// creation. The migration token is deleted seven days after it expires. /// [Newtonsoft.Json.JsonPropertyAttribute("expireTime")] public virtual string ExpireTimeRaw { get => _expireTimeRaw; set { _expireTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _expireTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use ExpireTimeDateTimeOffset instead.")] public virtual object ExpireTime { get => _expireTime; set { _expireTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _expireTime = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? ExpireTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(ExpireTimeRaw); set => ExpireTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// Required. Immutable. The management mode of the device or profile being migrated. [Newtonsoft.Json.JsonPropertyAttribute("managementMode")] public virtual string ManagementMode { get; set; } /// /// Output only. The name of the migration token, which is generated by the server during creation, in the form /// enterprises/{enterprise}/migrationTokens/{migration_token}. /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// /// Required. Immutable. The name of the policy initially applied to the enrolled device, in the form /// enterprises/{enterprise}/policies/{policy}. /// [Newtonsoft.Json.JsonPropertyAttribute("policy")] public virtual string Policy { get; set; } /// /// Input only. The time that this migration token is valid for. This is input-only, and for returning a /// migration token the server will populate the expireTime field. This can be at most seven days. The default /// is seven days. /// [Newtonsoft.Json.JsonPropertyAttribute("ttl")] public virtual object Ttl { get; set; } /// /// Required. Immutable. The user id of the Managed Google Play account on the device, as in the Play EMM API. /// This corresponds to the userId parameter in Play EMM API's Devices.get /// (https://developers.google.com/android/work/play/emm-api/v1/devices/get#parameters) call. /// [Newtonsoft.Json.JsonPropertyAttribute("userId")] public virtual string UserId { get; set; } /// Output only. The value of the migration token. [Newtonsoft.Json.JsonPropertyAttribute("value")] public virtual string Value { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Request to update or create ApplicationPolicy objects in the given Policy. public class ModifyPolicyApplicationsRequest : Google.Apis.Requests.IDirectResponseSchema { /// /// Required. The changes to be made to the ApplicationPolicy objects. There must be at least one /// ApplicationPolicyChange. /// [Newtonsoft.Json.JsonPropertyAttribute("changes")] public virtual System.Collections.Generic.IList Changes { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response to a request to update or create ApplicationPolicy objects in the given policy. public class ModifyPolicyApplicationsResponse : Google.Apis.Requests.IDirectResponseSchema { /// The updated policy. [Newtonsoft.Json.JsonPropertyAttribute("policy")] public virtual Policy Policy { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Device network info. public class NetworkInfo : Google.Apis.Requests.IDirectResponseSchema { /// IMEI number of the GSM device. For example, A1000031212. [Newtonsoft.Json.JsonPropertyAttribute("imei")] public virtual string Imei { get; set; } /// MEID number of the CDMA device. For example, A00000292788E1. [Newtonsoft.Json.JsonPropertyAttribute("meid")] public virtual string Meid { get; set; } /// Alphabetic name of current registered operator. For example, Vodafone. [Newtonsoft.Json.JsonPropertyAttribute("networkOperatorName")] public virtual string NetworkOperatorName { get; set; } /// /// Provides telephony information associated with each SIM card on the device. Only supported on fully managed /// devices starting from Android API level 23. /// [Newtonsoft.Json.JsonPropertyAttribute("telephonyInfos")] public virtual System.Collections.Generic.IList TelephonyInfos { get; set; } /// Wi-Fi MAC address of the device. For example, 7c:11:11:11:11:11. [Newtonsoft.Json.JsonPropertyAttribute("wifiMacAddress")] public virtual string WifiMacAddress { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Provides detail about non-compliance with a policy setting. public class NonComplianceDetail : Google.Apis.Requests.IDirectResponseSchema { /// /// If the policy setting could not be applied, the current value of the setting on the device. /// [Newtonsoft.Json.JsonPropertyAttribute("currentValue")] public virtual object CurrentValue { get; set; } /// /// For settings with nested fields, if a particular nested field is out of compliance, this specifies the full /// path to the offending field. The path is formatted in the same way the policy JSON field would be referenced /// in JavaScript, that is: 1) For object-typed fields, the field name is followed by a dot then by a subfield /// name. 2) For array-typed fields, the field name is followed by the array index enclosed in brackets. For /// example, to indicate a problem with the url field in the externalData field in the 3rd application, the path /// would be applications[2].externalData.url /// [Newtonsoft.Json.JsonPropertyAttribute("fieldPath")] public virtual string FieldPath { get; set; } /// /// If package_name is set and the non-compliance reason is APP_NOT_INSTALLED or APP_NOT_UPDATED, the detailed /// reason the app can't be installed or updated. /// [Newtonsoft.Json.JsonPropertyAttribute("installationFailureReason")] public virtual string InstallationFailureReason { get; set; } /// The reason the device is not in compliance with the setting. [Newtonsoft.Json.JsonPropertyAttribute("nonComplianceReason")] public virtual string NonComplianceReason { get; set; } /// The package name indicating which app is out of compliance, if applicable. [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } /// The name of the policy setting. This is the JSON field name of a top-level Policy field. [Newtonsoft.Json.JsonPropertyAttribute("settingName")] public virtual string SettingName { get; set; } /// Additional context for specific_non_compliance_reason. [Newtonsoft.Json.JsonPropertyAttribute("specificNonComplianceContext")] public virtual SpecificNonComplianceContext SpecificNonComplianceContext { get; set; } /// The policy-specific reason the device is not in compliance with the setting. [Newtonsoft.Json.JsonPropertyAttribute("specificNonComplianceReason")] public virtual string SpecificNonComplianceReason { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A compliance rule condition which is satisfied if there exists any matching NonComplianceDetail for the device. /// A NonComplianceDetail matches a NonComplianceDetailCondition if all the fields which are set within the /// NonComplianceDetailCondition match the corresponding NonComplianceDetail fields. /// public class NonComplianceDetailCondition : Google.Apis.Requests.IDirectResponseSchema { /// /// The reason the device is not in compliance with the setting. If not set, then this condition matches any /// reason. /// [Newtonsoft.Json.JsonPropertyAttribute("nonComplianceReason")] public virtual string NonComplianceReason { get; set; } /// /// The package name of the app that's out of compliance. If not set, then this condition matches any package /// name. /// [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } /// /// The name of the policy setting. This is the JSON field name of a top-level Policy field. If not set, then /// this condition matches any setting name. /// [Newtonsoft.Json.JsonPropertyAttribute("settingName")] public virtual string SettingName { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// This feature is not generally available. public class OncCertificateProvider : Google.Apis.Requests.IDirectResponseSchema { /// This feature is not generally available. [Newtonsoft.Json.JsonPropertyAttribute("certificateReferences")] public virtual System.Collections.Generic.IList CertificateReferences { get; set; } /// This feature is not generally available. [Newtonsoft.Json.JsonPropertyAttribute("contentProviderEndpoint")] public virtual ContentProviderEndpoint ContentProviderEndpoint { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Additional context for non-compliance related to Wi-Fi configuration. public class OncWifiContext : Google.Apis.Requests.IDirectResponseSchema { /// The GUID of non-compliant Wi-Fi configuration. [Newtonsoft.Json.JsonPropertyAttribute("wifiGuid")] public virtual string WifiGuid { 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; } /// The error result of the operation in case of failure or cancellation. [Newtonsoft.Json.JsonPropertyAttribute("error")] public virtual Status Error { get; set; } /// /// Service-specific metadata associated with the operation. It typically contains progress information and /// common metadata such as create time. Some services might not provide such metadata. Any method that returns /// a long-running operation should document the metadata type, if any. /// [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; } /// /// The normal, successful response of the operation. If the original method returns no data on success, such as /// Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the /// response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx /// is the original method name. For example, if the original method name is TakeSnapshot(), the inferred /// response type is TakeSnapshotResponse. /// [Newtonsoft.Json.JsonPropertyAttribute("response")] public virtual System.Collections.Generic.IDictionary Response { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Device was shutdown. Intentionally empty. public class OsShutdownEvent : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } /// Device was started. public class OsStartupEvent : Google.Apis.Requests.IDirectResponseSchema { /// Verified Boot state. [Newtonsoft.Json.JsonPropertyAttribute("verifiedBootState")] public virtual string VerifiedBootState { get; set; } /// dm-verity mode. [Newtonsoft.Json.JsonPropertyAttribute("verityMode")] public virtual string VerityMode { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A list of package names. public class PackageNameList : Google.Apis.Requests.IDirectResponseSchema { /// A list of package names. [Newtonsoft.Json.JsonPropertyAttribute("packageNames")] public virtual System.Collections.Generic.IList PackageNames { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Additional context for non-compliance related to password policies. public class PasswordPoliciesContext : Google.Apis.Requests.IDirectResponseSchema { /// The scope of non-compliant password. [Newtonsoft.Json.JsonPropertyAttribute("passwordPolicyScope")] public virtual string PasswordPolicyScope { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Requirements for the password used to unlock a device. public class PasswordRequirements : Google.Apis.Requests.IDirectResponseSchema { /// /// Number of incorrect device-unlock passwords that can be entered before a device is wiped. A value of 0 means /// there is no restriction. /// [Newtonsoft.Json.JsonPropertyAttribute("maximumFailedPasswordsForWipe")] public virtual System.Nullable MaximumFailedPasswordsForWipe { get; set; } /// Password expiration timeout. [Newtonsoft.Json.JsonPropertyAttribute("passwordExpirationTimeout")] public virtual object PasswordExpirationTimeout { get; set; } /// /// The length of the password history. After setting this field, the user won't be able to enter a new password /// that is the same as any password in the history. A value of 0 means there is no restriction. /// [Newtonsoft.Json.JsonPropertyAttribute("passwordHistoryLength")] public virtual System.Nullable PasswordHistoryLength { get; set; } /// /// The minimum allowed password length. A value of 0 means there is no restriction. Only enforced when /// password_quality is NUMERIC, NUMERIC_COMPLEX, ALPHABETIC, ALPHANUMERIC, or COMPLEX. /// [Newtonsoft.Json.JsonPropertyAttribute("passwordMinimumLength")] public virtual System.Nullable PasswordMinimumLength { get; set; } /// /// Minimum number of letters required in the password. Only enforced when password_quality is COMPLEX. /// [Newtonsoft.Json.JsonPropertyAttribute("passwordMinimumLetters")] public virtual System.Nullable PasswordMinimumLetters { get; set; } /// /// Minimum number of lower case letters required in the password. Only enforced when password_quality is /// COMPLEX. /// [Newtonsoft.Json.JsonPropertyAttribute("passwordMinimumLowerCase")] public virtual System.Nullable PasswordMinimumLowerCase { get; set; } /// /// Minimum number of non-letter characters (numerical digits or symbols) required in the password. Only /// enforced when password_quality is COMPLEX. /// [Newtonsoft.Json.JsonPropertyAttribute("passwordMinimumNonLetter")] public virtual System.Nullable PasswordMinimumNonLetter { get; set; } /// /// Minimum number of numerical digits required in the password. Only enforced when password_quality is COMPLEX. /// [Newtonsoft.Json.JsonPropertyAttribute("passwordMinimumNumeric")] public virtual System.Nullable PasswordMinimumNumeric { get; set; } /// /// Minimum number of symbols required in the password. Only enforced when password_quality is COMPLEX. /// [Newtonsoft.Json.JsonPropertyAttribute("passwordMinimumSymbols")] public virtual System.Nullable PasswordMinimumSymbols { get; set; } /// /// Minimum number of upper case letters required in the password. Only enforced when password_quality is /// COMPLEX. /// [Newtonsoft.Json.JsonPropertyAttribute("passwordMinimumUpperCase")] public virtual System.Nullable PasswordMinimumUpperCase { get; set; } /// The required password quality. [Newtonsoft.Json.JsonPropertyAttribute("passwordQuality")] public virtual string PasswordQuality { get; set; } /// The scope that the password requirement applies to. [Newtonsoft.Json.JsonPropertyAttribute("passwordScope")] public virtual string PasswordScope { get; set; } /// /// The length of time after a device or work profile is unlocked using a strong form of authentication /// (password, PIN, pattern) that it can be unlocked using any other authentication method (e.g. fingerprint, /// trust agents, face). After the specified time period elapses, only strong forms of authentication can be /// used to unlock the device or work profile. /// [Newtonsoft.Json.JsonPropertyAttribute("requirePasswordUnlock")] public virtual string RequirePasswordUnlock { get; set; } /// /// Controls whether a unified lock is allowed for the device and the work profile, on devices running Android 9 /// and above with a work profile. This can be set only if password_scope is set to SCOPE_PROFILE, the policy /// will be rejected otherwise. If user has not set a separate work lock and this field is set to /// REQUIRE_SEPARATE_WORK_LOCK, a NonComplianceDetail is reported with nonComplianceReason set to USER_ACTION. /// [Newtonsoft.Json.JsonPropertyAttribute("unifiedLockSettings")] public virtual string UnifiedLockSettings { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// The result of an attempt to clear the data of a single app. public class PerAppResult : Google.Apis.Requests.IDirectResponseSchema { /// The result of an attempt to clear the data of a single app. [Newtonsoft.Json.JsonPropertyAttribute("clearingResult")] public virtual string ClearingResult { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Configuration for an Android permission and its grant state. public class PermissionGrant : Google.Apis.Requests.IDirectResponseSchema { /// /// The Android permission or group, e.g. android.permission.READ_CALENDAR or android.permission_group.CALENDAR. /// [Newtonsoft.Json.JsonPropertyAttribute("permission")] public virtual string Permission { get; set; } /// The policy for granting the permission. [Newtonsoft.Json.JsonPropertyAttribute("policy")] public virtual string Policy { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A default activity for handling intents that match a particular intent filter. Note: To set up a kiosk, use /// InstallType to KIOSK rather than use persistent preferred activities. /// public class PersistentPreferredActivity : Google.Apis.Requests.IDirectResponseSchema { /// /// The intent actions to match in the filter. If any actions are included in the filter, then an intent's /// action must be one of those values for it to match. If no actions are included, the intent action is /// ignored. /// [Newtonsoft.Json.JsonPropertyAttribute("actions")] public virtual System.Collections.Generic.IList Actions { get; set; } /// /// The intent categories to match in the filter. An intent includes the categories that it requires, all of /// which must be included in the filter in order to match. In other words, adding a category to the filter has /// no impact on matching unless that category is specified in the intent. /// [Newtonsoft.Json.JsonPropertyAttribute("categories")] public virtual System.Collections.Generic.IList Categories { get; set; } /// /// The activity that should be the default intent handler. This should be an Android component name, e.g. /// com.android.enterprise.app/.MainActivity. Alternatively, the value may be the package name of an app, which /// causes Android Device Policy to choose an appropriate activity from the app to handle the intent. /// [Newtonsoft.Json.JsonPropertyAttribute("receiverActivity")] public virtual string ReceiverActivity { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Policies for apps in the personal profile of a company-owned device with a work profile. public class PersonalApplicationPolicy : Google.Apis.Requests.IDirectResponseSchema { /// The type of installation to perform. [Newtonsoft.Json.JsonPropertyAttribute("installType")] public virtual string InstallType { get; set; } /// The package name of the application. [Newtonsoft.Json.JsonPropertyAttribute("packageName")] public virtual string PackageName { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Policies controlling personal usage on a company-owned device with a work profile. public class PersonalUsagePolicies : Google.Apis.Requests.IDirectResponseSchema { /// Account types that can't be managed by the user. [Newtonsoft.Json.JsonPropertyAttribute("accountTypesWithManagementDisabled")] public virtual System.Collections.Generic.IList AccountTypesWithManagementDisabled { get; set; } /// Optional. Whether bluetooth sharing is allowed. [Newtonsoft.Json.JsonPropertyAttribute("bluetoothSharing")] public virtual string BluetoothSharing { get; set; } /// If true, the camera is disabled on the personal profile. [Newtonsoft.Json.JsonPropertyAttribute("cameraDisabled")] public virtual System.Nullable CameraDisabled { get; set; } /// /// Controls how long the work profile can stay off. The minimum duration must be at least 3 days. Other details /// are as follows: - If the duration is set to 0, the feature is turned off. - If the duration is set to a /// value smaller than the minimum duration, the feature returns an error. *Note:* If you want to avoid personal /// profiles being suspended during long periods of off-time, you can temporarily set a large value for this /// parameter. /// [Newtonsoft.Json.JsonPropertyAttribute("maxDaysWithWorkOff")] public virtual System.Nullable MaxDaysWithWorkOff { get; set; } /// Policy applied to applications in the personal profile. [Newtonsoft.Json.JsonPropertyAttribute("personalApplications")] public virtual System.Collections.Generic.IList PersonalApplications { get; set; } /// /// Used together with personalApplications to control how apps in the personal profile are allowed or blocked. /// [Newtonsoft.Json.JsonPropertyAttribute("personalPlayStoreMode")] public virtual string PersonalPlayStoreMode { get; set; } /// Optional. Controls whether a private space is allowed on the device. [Newtonsoft.Json.JsonPropertyAttribute("privateSpacePolicy")] public virtual string PrivateSpacePolicy { get; set; } /// If true, screen capture is disabled for all users. [Newtonsoft.Json.JsonPropertyAttribute("screenCaptureDisabled")] public virtual System.Nullable ScreenCaptureDisabled { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A policy resource represents a group of settings that govern the behavior of a managed device and the apps /// installed on it. /// public class Policy : Google.Apis.Requests.IDirectResponseSchema { /// Account types that can't be managed by the user. [Newtonsoft.Json.JsonPropertyAttribute("accountTypesWithManagementDisabled")] public virtual System.Collections.Generic.IList AccountTypesWithManagementDisabled { get; set; } /// /// Whether adding new users and profiles is disabled. For devices where managementMode is DEVICE_OWNER this /// field is ignored and the user is never allowed to add or remove users. /// [Newtonsoft.Json.JsonPropertyAttribute("addUserDisabled")] public virtual System.Nullable AddUserDisabled { get; set; } /// /// Whether adjusting the master volume is disabled. Also mutes the device. The setting has effect only on fully /// managed devices. /// [Newtonsoft.Json.JsonPropertyAttribute("adjustVolumeDisabled")] public virtual System.Nullable AdjustVolumeDisabled { get; set; } /// Advanced security settings. In most cases, setting these is not needed. [Newtonsoft.Json.JsonPropertyAttribute("advancedSecurityOverrides")] public virtual AdvancedSecurityOverrides AdvancedSecurityOverrides { get; set; } /// /// Configuration for an always-on VPN connection. Use with vpn_config_disabled to prevent modification of this /// setting. /// [Newtonsoft.Json.JsonPropertyAttribute("alwaysOnVpnPackage")] public virtual AlwaysOnVpnPackage AlwaysOnVpnPackage { get; set; } /// This setting is not supported. Any value is ignored. [Newtonsoft.Json.JsonPropertyAttribute("androidDevicePolicyTracks")] public virtual System.Collections.Generic.IList AndroidDevicePolicyTracks { get; set; } /// /// Recommended alternative: autoUpdateMode which is set per app, provides greater flexibility around update /// frequency.When autoUpdateMode is set to AUTO_UPDATE_POSTPONED or AUTO_UPDATE_HIGH_PRIORITY, this field has /// no effect.The app auto update policy, which controls when automatic app updates can be applied. /// [Newtonsoft.Json.JsonPropertyAttribute("appAutoUpdatePolicy")] public virtual string AppAutoUpdatePolicy { get; set; } /// /// Optional. Controls whether apps on the device for fully managed devices or in the work profile for devices /// with work profiles are allowed to expose app functions. /// [Newtonsoft.Json.JsonPropertyAttribute("appFunctions")] public virtual string AppFunctions { get; set; } /// Policy applied to apps. This can have at most 3,000 elements. [Newtonsoft.Json.JsonPropertyAttribute("applications")] public virtual System.Collections.Generic.IList Applications { get; set; } /// /// Optional. Controls whether AssistContent /// (https://developer.android.com/reference/android/app/assist/AssistContent) is allowed to be sent to a /// privileged app such as an assistant app. AssistContent includes screenshots and information about an app, /// such as package name. This is supported on Android 15 and above. /// [Newtonsoft.Json.JsonPropertyAttribute("assistContentPolicy")] public virtual string AssistContentPolicy { get; set; } /// /// Whether auto date, time, and time zone are enabled on a company-owned device. If this is set, then /// autoTimeRequired is ignored. /// [Newtonsoft.Json.JsonPropertyAttribute("autoDateAndTimeZone")] public virtual string AutoDateAndTimeZone { get; set; } /// /// Whether auto time is required, which prevents the user from manually setting the date and time. If /// autoDateAndTimeZone is set, this field is ignored. /// [Newtonsoft.Json.JsonPropertyAttribute("autoTimeRequired")] public virtual System.Nullable AutoTimeRequired { get; set; } /// /// Whether applications other than the ones configured in applications are blocked from being installed. When /// set, applications that were installed under a previous policy but no longer appear in the policy are /// automatically uninstalled. /// [Newtonsoft.Json.JsonPropertyAttribute("blockApplicationsEnabled")] public virtual System.Nullable BlockApplicationsEnabled { get; set; } /// Whether configuring bluetooth is disabled. [Newtonsoft.Json.JsonPropertyAttribute("bluetoothConfigDisabled")] public virtual System.Nullable BluetoothConfigDisabled { get; set; } /// Whether bluetooth contact sharing is disabled. [Newtonsoft.Json.JsonPropertyAttribute("bluetoothContactSharingDisabled")] public virtual System.Nullable BluetoothContactSharingDisabled { get; set; } /// /// Whether bluetooth is disabled. Prefer this setting over bluetooth_config_disabled because /// bluetooth_config_disabled can be bypassed by the user. /// [Newtonsoft.Json.JsonPropertyAttribute("bluetoothDisabled")] public virtual System.Nullable BluetoothDisabled { get; set; } /// /// Controls the use of the camera and whether the user has access to the camera access toggle. /// [Newtonsoft.Json.JsonPropertyAttribute("cameraAccess")] public virtual string CameraAccess { get; set; } /// /// If camera_access is set to any value other than CAMERA_ACCESS_UNSPECIFIED, this has no effect. Otherwise /// this field controls whether cameras are disabled: If true, all cameras are disabled, otherwise they are /// available. For fully managed devices this field applies for all apps on the device. For work profiles, this /// field applies only to apps in the work profile, and the camera access of apps outside the work profile is /// unaffected. /// [Newtonsoft.Json.JsonPropertyAttribute("cameraDisabled")] public virtual System.Nullable CameraDisabled { get; set; } /// Whether configuring cell broadcast is disabled. [Newtonsoft.Json.JsonPropertyAttribute("cellBroadcastsConfigDisabled")] public virtual System.Nullable CellBroadcastsConfigDisabled { get; set; } /// /// Rules for determining apps' access to private keys. See ChoosePrivateKeyRule for details. This must be empty /// if any application has CERT_SELECTION delegation scope. /// [Newtonsoft.Json.JsonPropertyAttribute("choosePrivateKeyRules")] public virtual System.Collections.Generic.IList ChoosePrivateKeyRules { get; set; } /// /// Rules declaring which mitigating actions to take when a device is not compliant with its policy. When the /// conditions for multiple rules are satisfied, all of the mitigating actions for the rules are taken. There is /// a maximum limit of 100 rules. Use policy enforcement rules instead. /// [Newtonsoft.Json.JsonPropertyAttribute("complianceRules")] public virtual System.Collections.Generic.IList ComplianceRules { get; set; } /// Whether creating windows besides app windows is disabled. [Newtonsoft.Json.JsonPropertyAttribute("createWindowsDisabled")] public virtual System.Nullable CreateWindowsDisabled { get; set; } /// /// Controls which apps are allowed to act as credential providers on Android 14 and above. These apps store /// credentials, see this (https://developer.android.com/training/sign-in/passkeys) and this /// (https://developer.android.com/reference/androidx/credentials/CredentialManager) for details. See also /// credentialProviderPolicy. /// [Newtonsoft.Json.JsonPropertyAttribute("credentialProviderPolicyDefault")] public virtual string CredentialProviderPolicyDefault { get; set; } /// Whether configuring user credentials is disabled. [Newtonsoft.Json.JsonPropertyAttribute("credentialsConfigDisabled")] public virtual System.Nullable CredentialsConfigDisabled { get; set; } /// Cross-profile policies applied on the device. [Newtonsoft.Json.JsonPropertyAttribute("crossProfilePolicies")] public virtual CrossProfilePolicies CrossProfilePolicies { get; set; } /// Whether roaming data services are disabled. [Newtonsoft.Json.JsonPropertyAttribute("dataRoamingDisabled")] public virtual System.Nullable DataRoamingDisabled { get; set; } /// Whether the user is allowed to enable debugging features. [Newtonsoft.Json.JsonPropertyAttribute("debuggingFeaturesAllowed")] public virtual System.Nullable DebuggingFeaturesAllowed { get; set; } /// /// Optional. The default application setting for supported types. If the default application is successfully /// set for at least one app type on a profile, users are prevented from changing any default applications on /// that profile.Only one DefaultApplicationSetting is allowed for each DefaultApplicationType.See Default /// application settings (https://developers.google.com/android/management/default-application-settings) guide /// for more details. /// [Newtonsoft.Json.JsonPropertyAttribute("defaultApplicationSettings")] public virtual System.Collections.Generic.IList DefaultApplicationSettings { get; set; } /// The default permission policy for runtime permission requests. [Newtonsoft.Json.JsonPropertyAttribute("defaultPermissionPolicy")] public virtual string DefaultPermissionPolicy { get; set; } /// /// Covers controls for device connectivity such as Wi-Fi, USB data access, keyboard/mouse connections, and /// more. /// [Newtonsoft.Json.JsonPropertyAttribute("deviceConnectivityManagement")] public virtual DeviceConnectivityManagement DeviceConnectivityManagement { get; set; } /// The device owner information to be shown on the lock screen. [Newtonsoft.Json.JsonPropertyAttribute("deviceOwnerLockScreenInfo")] public virtual UserFacingMessage DeviceOwnerLockScreenInfo { get; set; } /// Covers controls for radio state such as Wi-Fi, bluetooth, and more. [Newtonsoft.Json.JsonPropertyAttribute("deviceRadioState")] public virtual DeviceRadioState DeviceRadioState { get; set; } /// Optional. Controls for the display settings. [Newtonsoft.Json.JsonPropertyAttribute("displaySettings")] public virtual DisplaySettings DisplaySettings { get; set; } /// Whether encryption is enabled [Newtonsoft.Json.JsonPropertyAttribute("encryptionPolicy")] public virtual string EncryptionPolicy { get; set; } /// Whether app verification is force-enabled. [Newtonsoft.Json.JsonPropertyAttribute("ensureVerifyAppsEnabled")] public virtual System.Nullable EnsureVerifyAppsEnabled { get; set; } /// /// Optional. Controls whether the enterpriseDisplayName is visible on the device (e.g. lock screen message on /// company-owned devices). /// [Newtonsoft.Json.JsonPropertyAttribute("enterpriseDisplayNameVisibility")] public virtual string EnterpriseDisplayNameVisibility { get; set; } /// Whether factory resetting from settings is disabled. [Newtonsoft.Json.JsonPropertyAttribute("factoryResetDisabled")] public virtual System.Nullable FactoryResetDisabled { get; set; } /// /// Email addresses of device administrators for factory reset protection. When the device is factory reset, it /// will require one of these admins to log in with the Google account email and password to unlock the device. /// If no admins are specified, the device won't provide factory reset protection. /// [Newtonsoft.Json.JsonPropertyAttribute("frpAdminEmails")] public virtual System.Collections.Generic.IList FrpAdminEmails { get; set; } /// /// Whether the user is allowed to have fun. Controls whether the Easter egg game in Settings is disabled. /// [Newtonsoft.Json.JsonPropertyAttribute("funDisabled")] public virtual System.Nullable FunDisabled { get; set; } /// Whether user installation of apps is disabled. [Newtonsoft.Json.JsonPropertyAttribute("installAppsDisabled")] public virtual System.Nullable InstallAppsDisabled { get; set; } /// This field has no effect. [Newtonsoft.Json.JsonPropertyAttribute("installUnknownSourcesAllowed")] public virtual System.Nullable InstallUnknownSourcesAllowed { get; set; } /// /// If true, this disables the Lock Screen /// (https://source.android.com/docs/core/display/multi_display/lock-screen) for primary and/or secondary /// displays. This policy is supported only in dedicated device management mode. /// [Newtonsoft.Json.JsonPropertyAttribute("keyguardDisabled")] public virtual System.Nullable KeyguardDisabled { get; set; } /// Disabled keyguard customizations, such as widgets. [Newtonsoft.Json.JsonPropertyAttribute("keyguardDisabledFeatures")] public virtual System.Collections.Generic.IList KeyguardDisabledFeatures { get; set; } /// /// Whether the kiosk custom launcher is enabled. This replaces the home screen with a launcher that locks down /// the device to the apps installed via the applications setting. Apps appear on a single page in alphabetical /// order. Use kioskCustomization to further configure the kiosk device behavior. /// [Newtonsoft.Json.JsonPropertyAttribute("kioskCustomLauncherEnabled")] public virtual System.Nullable KioskCustomLauncherEnabled { get; set; } /// /// Settings controlling the behavior of a device in kiosk mode. To enable kiosk mode, set /// kioskCustomLauncherEnabled to true or specify an app in the policy with installType KIOSK. /// [Newtonsoft.Json.JsonPropertyAttribute("kioskCustomization")] public virtual KioskCustomization KioskCustomization { get; set; } /// The degree of location detection enabled. [Newtonsoft.Json.JsonPropertyAttribute("locationMode")] public virtual string LocationMode { get; set; } /// A message displayed to the user in the device administators settings screen. [Newtonsoft.Json.JsonPropertyAttribute("longSupportMessage")] public virtual UserFacingMessage LongSupportMessage { get; set; } /// /// Maximum time in milliseconds for user activity until the device locks. A value of 0 means there is no /// restriction. /// [Newtonsoft.Json.JsonPropertyAttribute("maximumTimeToLock")] public virtual System.Nullable MaximumTimeToLock { get; set; } /// /// Controls the use of the microphone and whether the user has access to the microphone access toggle. This /// applies only on fully managed devices. /// [Newtonsoft.Json.JsonPropertyAttribute("microphoneAccess")] public virtual string MicrophoneAccess { get; set; } /// The minimum allowed Android API level. [Newtonsoft.Json.JsonPropertyAttribute("minimumApiLevel")] public virtual System.Nullable MinimumApiLevel { get; set; } /// Whether configuring mobile networks is disabled. [Newtonsoft.Json.JsonPropertyAttribute("mobileNetworksConfigDisabled")] public virtual System.Nullable MobileNetworksConfigDisabled { get; set; } /// Whether adding or removing accounts is disabled. [Newtonsoft.Json.JsonPropertyAttribute("modifyAccountsDisabled")] public virtual System.Nullable ModifyAccountsDisabled { get; set; } /// Whether the user mounting physical external media is disabled. [Newtonsoft.Json.JsonPropertyAttribute("mountPhysicalMediaDisabled")] public virtual System.Nullable MountPhysicalMediaDisabled { get; set; } /// The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}. [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// /// Whether the network escape hatch is enabled. If a network connection can't be made at boot time, the escape /// hatch prompts the user to temporarily connect to a network in order to refresh the device policy. After /// applying policy, the temporary network will be forgotten and the device will continue booting. This prevents /// being unable to connect to a network if there is no suitable network in the last policy and the device boots /// into an app in lock task mode, or the user is otherwise unable to reach device settings.Note: Setting /// wifiConfigDisabled to true will override this setting under specific circumstances. Please see /// wifiConfigDisabled for further details. Setting configureWifi to DISALLOW_CONFIGURING_WIFI will override /// this setting under specific circumstances. Please see DISALLOW_CONFIGURING_WIFI for further details. /// [Newtonsoft.Json.JsonPropertyAttribute("networkEscapeHatchEnabled")] public virtual System.Nullable NetworkEscapeHatchEnabled { get; set; } /// Whether resetting network settings is disabled. [Newtonsoft.Json.JsonPropertyAttribute("networkResetDisabled")] public virtual System.Nullable NetworkResetDisabled { get; set; } /// This feature is not generally available. [Newtonsoft.Json.JsonPropertyAttribute("oncCertificateProviders")] public virtual System.Collections.Generic.IList OncCertificateProviders { get; set; } /// Network configuration for the device. See configure networks for more information. [Newtonsoft.Json.JsonPropertyAttribute("openNetworkConfiguration")] public virtual System.Collections.Generic.IDictionary OpenNetworkConfiguration { get; set; } /// Whether using NFC to beam data from apps is disabled. [Newtonsoft.Json.JsonPropertyAttribute("outgoingBeamDisabled")] public virtual System.Nullable OutgoingBeamDisabled { get; set; } /// Whether outgoing calls are disabled. [Newtonsoft.Json.JsonPropertyAttribute("outgoingCallsDisabled")] public virtual System.Nullable OutgoingCallsDisabled { get; set; } /// /// Password requirement policies. Different policies can be set for work profile or fully managed devices by /// setting the password_scope field in the policy. /// [Newtonsoft.Json.JsonPropertyAttribute("passwordPolicies")] public virtual System.Collections.Generic.IList PasswordPolicies { get; set; } /// /// Password requirements. The field password_requirements.require_password_unlock must not be set. DEPRECATED - /// Use passwordPolicies.Note:Complexity-based values of PasswordQuality, that is, COMPLEXITY_LOW, /// COMPLEXITY_MEDIUM, and COMPLEXITY_HIGH, cannot be used here. unified_lock_settings cannot be used here. /// [Newtonsoft.Json.JsonPropertyAttribute("passwordRequirements")] public virtual PasswordRequirements PasswordRequirements { get; set; } /// /// Explicit permission or group grants or denials for all apps. These values override the /// default_permission_policy. /// [Newtonsoft.Json.JsonPropertyAttribute("permissionGrants")] public virtual System.Collections.Generic.IList PermissionGrants { get; set; } /// /// Specifies permitted accessibility services. If the field is not set, any accessibility service can be used. /// If the field is set, only the accessibility services in this list and the system's built-in accessibility /// service can be used. In particular, if the field is set to empty, only the system's built-in accessibility /// servicess can be used. This can be set on fully managed devices and on work profiles. When applied to a work /// profile, this affects both the personal profile and the work profile. /// [Newtonsoft.Json.JsonPropertyAttribute("permittedAccessibilityServices")] public virtual PackageNameList PermittedAccessibilityServices { get; set; } /// /// If present, only the input methods provided by packages in this list are permitted. If this field is /// present, but the list is empty, then only system input methods are permitted. /// [Newtonsoft.Json.JsonPropertyAttribute("permittedInputMethods")] public virtual PackageNameList PermittedInputMethods { get; set; } /// Default intent handler activities. [Newtonsoft.Json.JsonPropertyAttribute("persistentPreferredActivities")] public virtual System.Collections.Generic.IList PersistentPreferredActivities { get; set; } /// Policies managing personal usage on a company-owned device. [Newtonsoft.Json.JsonPropertyAttribute("personalUsagePolicies")] public virtual PersonalUsagePolicies PersonalUsagePolicies { get; set; } /// /// This mode controls which apps are available to the user in the Play Store and the behavior on the device /// when apps are removed from the policy. /// [Newtonsoft.Json.JsonPropertyAttribute("playStoreMode")] public virtual string PlayStoreMode { get; set; } /// Rules that define the behavior when a particular policy can not be applied on device [Newtonsoft.Json.JsonPropertyAttribute("policyEnforcementRules")] public virtual System.Collections.Generic.IList PolicyEnforcementRules { get; set; } /// /// Controls whether preferential network service is enabled on the work profile or on fully managed devices. /// For example, an organization may have an agreement with a carrier that all of the work data from its /// employees' devices will be sent via a network service dedicated for enterprise use. An example of a /// supported preferential network service is the enterprise slice on 5G networks. This policy has no effect if /// preferentialNetworkServiceSettings or ApplicationPolicy.preferentialNetworkId is set on devices running /// Android 13 or above. /// [Newtonsoft.Json.JsonPropertyAttribute("preferentialNetworkService")] public virtual string PreferentialNetworkService { get; set; } /// /// Optional. Controls whether printing is allowed. This is supported on devices running Android 9 and above. . /// [Newtonsoft.Json.JsonPropertyAttribute("printingPolicy")] public virtual string PrintingPolicy { get; set; } /// /// Allows showing UI on a device for a user to choose a private key alias if there are no matching rules in /// ChoosePrivateKeyRules. For devices below Android P, setting this may leave enterprise keys vulnerable. This /// value will have no effect if any application has CERT_SELECTION delegation scope. /// [Newtonsoft.Json.JsonPropertyAttribute("privateKeySelectionEnabled")] public virtual System.Nullable PrivateKeySelectionEnabled { get; set; } /// /// The network-independent global HTTP proxy. Typically proxies should be configured per-network in /// open_network_configuration. However for unusual configurations like general internal filtering a global HTTP /// proxy may be useful. If the proxy is not accessible, network access may break. The global proxy is only a /// recommendation and some apps may ignore it. /// [Newtonsoft.Json.JsonPropertyAttribute("recommendedGlobalProxy")] public virtual ProxyInfo RecommendedGlobalProxy { get; set; } /// Whether removing other users is disabled. [Newtonsoft.Json.JsonPropertyAttribute("removeUserDisabled")] public virtual System.Nullable RemoveUserDisabled { get; set; } /// Whether rebooting the device into safe boot is disabled. [Newtonsoft.Json.JsonPropertyAttribute("safeBootDisabled")] public virtual System.Nullable SafeBootDisabled { get; set; } /// Whether screen capture is disabled. [Newtonsoft.Json.JsonPropertyAttribute("screenCaptureDisabled")] public virtual System.Nullable ScreenCaptureDisabled { get; set; } /// /// Whether changing the user icon is disabled. This applies only on devices running Android 7 and above. /// [Newtonsoft.Json.JsonPropertyAttribute("setUserIconDisabled")] public virtual System.Nullable SetUserIconDisabled { get; set; } /// Whether changing the wallpaper is disabled. [Newtonsoft.Json.JsonPropertyAttribute("setWallpaperDisabled")] public virtual System.Nullable SetWallpaperDisabled { get; set; } /// Action to take during the setup process. At most one action may be specified. [Newtonsoft.Json.JsonPropertyAttribute("setupActions")] public virtual System.Collections.Generic.IList SetupActions { get; set; } /// Whether location sharing is disabled. [Newtonsoft.Json.JsonPropertyAttribute("shareLocationDisabled")] public virtual System.Nullable ShareLocationDisabled { get; set; } /// /// A message displayed to the user in the settings screen wherever functionality has been disabled by the /// admin. If the message is longer than 200 characters it may be truncated. /// [Newtonsoft.Json.JsonPropertyAttribute("shortSupportMessage")] public virtual UserFacingMessage ShortSupportMessage { get; set; } /// /// Flag to skip hints on the first use. Enterprise admin can enable the system recommendation for apps to skip /// their user tutorial and other introductory hints on first start-up. /// [Newtonsoft.Json.JsonPropertyAttribute("skipFirstUseHintsEnabled")] public virtual System.Nullable SkipFirstUseHintsEnabled { get; set; } /// Whether sending and receiving SMS messages is disabled. [Newtonsoft.Json.JsonPropertyAttribute("smsDisabled")] public virtual System.Nullable SmsDisabled { get; set; } /// /// Whether the status bar is disabled. This disables notifications, quick settings, and other screen overlays /// that allow escape from full-screen mode. DEPRECATED. To disable the status bar on a kiosk device, use /// InstallType KIOSK or kioskCustomLauncherEnabled. /// [Newtonsoft.Json.JsonPropertyAttribute("statusBarDisabled")] public virtual System.Nullable StatusBarDisabled { get; set; } /// Status reporting settings [Newtonsoft.Json.JsonPropertyAttribute("statusReportingSettings")] public virtual StatusReportingSettings StatusReportingSettings { get; set; } /// /// The battery plugged in modes for which the device stays on. When using this setting, it is recommended to /// clear maximum_time_to_lock so that the device doesn't lock itself while it stays on. /// [Newtonsoft.Json.JsonPropertyAttribute("stayOnPluggedModes")] public virtual System.Collections.Generic.IList StayOnPluggedModes { get; set; } /// /// The system update policy, which controls how OS updates are applied. If the update type is WINDOWED, the /// update window will automatically apply to Play app updates as well.Note: Google Play system updates /// (https://source.android.com/docs/core/ota/modular-system) (also called Mainline updates) are automatically /// downloaded and require a device reboot to be installed. Refer to the mainline section in Manage system /// updates (https://developer.android.com/work/dpc/system-updates#mainline) for further details. /// [Newtonsoft.Json.JsonPropertyAttribute("systemUpdate")] public virtual SystemUpdate SystemUpdate { get; set; } /// /// Whether configuring tethering and portable hotspots is disabled. If tetheringSettings is set to anything /// other than TETHERING_SETTINGS_UNSPECIFIED, this setting is ignored. /// [Newtonsoft.Json.JsonPropertyAttribute("tetheringConfigDisabled")] public virtual System.Nullable TetheringConfigDisabled { get; set; } /// /// Whether user uninstallation of applications is disabled. This prevents apps from being uninstalled, even /// those removed using applications /// [Newtonsoft.Json.JsonPropertyAttribute("uninstallAppsDisabled")] public virtual System.Nullable UninstallAppsDisabled { get; set; } /// /// If microphone_access is set to any value other than MICROPHONE_ACCESS_UNSPECIFIED, this has no effect. /// Otherwise this field controls whether microphones are disabled: If true, all microphones are disabled, /// otherwise they are available. This is available only on fully managed devices. /// [Newtonsoft.Json.JsonPropertyAttribute("unmuteMicrophoneDisabled")] public virtual System.Nullable UnmuteMicrophoneDisabled { get; set; } /// Configuration of device activity logging. [Newtonsoft.Json.JsonPropertyAttribute("usageLog")] public virtual UsageLog UsageLog { get; set; } /// /// Whether transferring files over USB is disabled. This is supported only on company-owned devices. /// [Newtonsoft.Json.JsonPropertyAttribute("usbFileTransferDisabled")] public virtual System.Nullable UsbFileTransferDisabled { get; set; } /// Whether USB storage is enabled. Deprecated. [Newtonsoft.Json.JsonPropertyAttribute("usbMassStorageEnabled")] public virtual System.Nullable UsbMassStorageEnabled { get; set; } /// /// The version of the policy. This is a read-only field. The version is incremented each time the policy is /// updated. /// [Newtonsoft.Json.JsonPropertyAttribute("version")] public virtual System.Nullable Version { get; set; } /// Whether configuring VPN is disabled. [Newtonsoft.Json.JsonPropertyAttribute("vpnConfigDisabled")] public virtual System.Nullable VpnConfigDisabled { get; set; } /// /// Whether configuring Wi-Fi networks is disabled. Supported on fully managed devices and work profiles on /// company-owned devices. For fully managed devices, setting this to true removes all configured networks and /// retains only the networks configured using openNetworkConfiguration. For work profiles on company-owned /// devices, existing configured networks are not affected and the user is not allowed to add, remove, or modify /// Wi-Fi networks. If configureWifi is set to anything other than CONFIGURE_WIFI_UNSPECIFIED, this setting is /// ignored. Note: If a network connection can't be made at boot time and configuring Wi-Fi is disabled then /// network escape hatch will be shown in order to refresh the device policy (see networkEscapeHatchEnabled). /// [Newtonsoft.Json.JsonPropertyAttribute("wifiConfigDisabled")] public virtual System.Nullable WifiConfigDisabled { get; set; } /// This is deprecated. [Newtonsoft.Json.JsonPropertyAttribute("wifiConfigsLockdownEnabled")] public virtual System.Nullable WifiConfigsLockdownEnabled { get; set; } /// /// Optional. Wipe flags to indicate what data is wiped when a device or profile wipe is triggered due to any /// reason (for example, non-compliance). This does not apply to the enterprises.devices.delete method. . This /// list must not have duplicates. /// [Newtonsoft.Json.JsonPropertyAttribute("wipeDataFlags")] public virtual System.Collections.Generic.IList WipeDataFlags { get; set; } /// /// Optional. Controls the work account setup configuration, such as details of whether a Google authenticated /// account is required. /// [Newtonsoft.Json.JsonPropertyAttribute("workAccountSetupConfig")] public virtual WorkAccountSetupConfig WorkAccountSetupConfig { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A rule that defines the actions to take if a device or work profile is not compliant with the policy specified /// in settingName. In the case of multiple matching or multiple triggered enforcement rules, a merge will occur /// with the most severe action being taken. However, all triggered rules are still kept track of: this includes /// initial trigger time and all associated non-compliance details. In the situation where the most severe /// enforcement rule is satisfied, the next most appropriate action is applied. /// public class PolicyEnforcementRule : Google.Apis.Requests.IDirectResponseSchema { /// /// An action to block access to apps and data on a company owned device or in a work profile. This action also /// triggers a user-facing notification with information (where possible) on how to correct the compliance /// issue. Note: wipeAction must also be specified. /// [Newtonsoft.Json.JsonPropertyAttribute("blockAction")] public virtual BlockAction BlockAction { get; set; } /// The top-level policy to enforce. For example, applications or passwordPolicies. [Newtonsoft.Json.JsonPropertyAttribute("settingName")] public virtual string SettingName { get; set; } /// /// An action to reset a company owned device or delete a work profile. Note: blockAction must also be /// specified. /// [Newtonsoft.Json.JsonPropertyAttribute("wipeAction")] public virtual WipeAction WipeAction { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Additional details regarding the security posture of the device. public class PostureDetail : Google.Apis.Requests.IDirectResponseSchema { /// /// Corresponding admin-facing advice to mitigate this security risk and improve the security posture of the /// device. /// [Newtonsoft.Json.JsonPropertyAttribute("advice")] public virtual System.Collections.Generic.IList Advice { get; set; } /// A specific security risk that negatively affects the security posture of the device. [Newtonsoft.Json.JsonPropertyAttribute("securityRisk")] public virtual string SecurityRisk { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A power management event. public class PowerManagementEvent : Google.Apis.Requests.IDirectResponseSchema { /// For BATTERY_LEVEL_COLLECTED events, the battery level as a percentage. [Newtonsoft.Json.JsonPropertyAttribute("batteryLevel")] public virtual System.Nullable BatteryLevel { get; set; } private string _createTimeRaw; private object _createTime; /// The creation time of the event. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { get => _createTimeRaw; set { _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _createTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] public virtual object CreateTime { get => _createTime; set { _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _createTime = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? CreateTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// Event type. [Newtonsoft.Json.JsonPropertyAttribute("eventType")] public virtual string EventType { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Individual preferential network service configuration. public class PreferentialNetworkServiceConfig : Google.Apis.Requests.IDirectResponseSchema { /// /// Optional. Whether fallback to the device-wide default network is allowed. If this is set to /// FALLBACK_TO_DEFAULT_CONNECTION_ALLOWED, then nonMatchingNetworks must not be set to /// NON_MATCHING_NETWORKS_DISALLOWED, the policy will be rejected otherwise. Note: If this is set to /// FALLBACK_TO_DEFAULT_CONNECTION_DISALLOWED, applications are not able to access the internet if the 5G slice /// is not available. /// [Newtonsoft.Json.JsonPropertyAttribute("fallbackToDefaultConnection")] public virtual string FallbackToDefaultConnection { get; set; } /// /// Optional. Whether apps this configuration applies to are blocked from using networks other than the /// preferential service. If this is set to NON_MATCHING_NETWORKS_DISALLOWED, then fallbackToDefaultConnection /// must be set to FALLBACK_TO_DEFAULT_CONNECTION_DISALLOWED. /// [Newtonsoft.Json.JsonPropertyAttribute("nonMatchingNetworks")] public virtual string NonMatchingNetworks { get; set; } /// /// Required. Preferential network identifier. This must not be set to NO_PREFERENTIAL_NETWORK or /// PREFERENTIAL_NETWORK_ID_UNSPECIFIED, the policy will be rejected otherwise. /// [Newtonsoft.Json.JsonPropertyAttribute("preferentialNetworkId")] public virtual string PreferentialNetworkId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Preferential network service settings. public class PreferentialNetworkServiceSettings : Google.Apis.Requests.IDirectResponseSchema { /// /// Required. Default preferential network ID for the applications that are not in applications or if /// ApplicationPolicy.preferentialNetworkId is set to PREFERENTIAL_NETWORK_ID_UNSPECIFIED. There must be a /// configuration for the specified network ID in preferentialNetworkServiceConfigs, unless this is set to /// NO_PREFERENTIAL_NETWORK. If set to PREFERENTIAL_NETWORK_ID_UNSPECIFIED or unset, this defaults to /// NO_PREFERENTIAL_NETWORK. Note: If the default preferential network is misconfigured, applications with no /// ApplicationPolicy.preferentialNetworkId set are not able to access the internet. This setting does not apply /// to the following critical apps: com.google.android.apps.work.clouddpc /// com.google.android.gmsApplicationPolicy.preferentialNetworkId can still be used to configure the /// preferential network for them. /// [Newtonsoft.Json.JsonPropertyAttribute("defaultPreferentialNetworkId")] public virtual string DefaultPreferentialNetworkId { get; set; } /// /// Required. Preferential network service configurations which enables having multiple enterprise slices. There /// must not be multiple configurations with the same preferentialNetworkId. If a configuration is not /// referenced by any application by setting ApplicationPolicy.preferentialNetworkId or by setting /// defaultPreferentialNetworkId, it will be ignored. For devices on 4G networks, enterprise APN needs to be /// configured additionally to set up data call for preferential network service. These APNs can be added using /// apnPolicy. /// [Newtonsoft.Json.JsonPropertyAttribute("preferentialNetworkServiceConfigs")] public virtual System.Collections.Generic.IList PreferentialNetworkServiceConfigs { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Information about a device that is available during setup. public class ProvisioningInfo : Google.Apis.Requests.IDirectResponseSchema { /// The API level of the Android platform version running on the device. [Newtonsoft.Json.JsonPropertyAttribute("apiLevel")] public virtual System.Nullable ApiLevel { get; set; } /// /// The email address of the authenticated user (only present for Google Account provisioning method). /// [Newtonsoft.Json.JsonPropertyAttribute("authenticatedUserEmail")] public virtual string AuthenticatedUserEmail { get; set; } /// The brand of the device. For example, Google. [Newtonsoft.Json.JsonPropertyAttribute("brand")] public virtual string Brand { get; set; } /// The name of the enterprise in the form enterprises/{enterprise}. [Newtonsoft.Json.JsonPropertyAttribute("enterprise")] public virtual string Enterprise { get; set; } /// For corporate-owned devices, IMEI number of the GSM device. For example, A1000031212. [Newtonsoft.Json.JsonPropertyAttribute("imei")] public virtual string Imei { get; set; } /// The management mode of the device or profile. [Newtonsoft.Json.JsonPropertyAttribute("managementMode")] public virtual string ManagementMode { get; set; } /// For corporate-owned devices, MEID number of the CDMA device. For example, A00000292788E1. [Newtonsoft.Json.JsonPropertyAttribute("meid")] public virtual string Meid { get; set; } /// The model of the device. For example, Asus Nexus 7. [Newtonsoft.Json.JsonPropertyAttribute("model")] public virtual string Model { get; set; } /// The name of this resource in the form provisioningInfo/{provisioning_info}. [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// Ownership of the managed device. [Newtonsoft.Json.JsonPropertyAttribute("ownership")] public virtual string Ownership { get; set; } /// For corporate-owned devices, The device serial number. [Newtonsoft.Json.JsonPropertyAttribute("serialNumber")] public virtual string SerialNumber { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Configuration info for an HTTP proxy. For a direct proxy, set the host, port, and excluded_hosts fields. For a /// PAC script proxy, set the pac_uri field. /// public class ProxyInfo : Google.Apis.Requests.IDirectResponseSchema { /// /// For a direct proxy, the hosts for which the proxy is bypassed. The host names may contain wildcards such as /// *.example.com. /// [Newtonsoft.Json.JsonPropertyAttribute("excludedHosts")] public virtual System.Collections.Generic.IList ExcludedHosts { get; set; } /// The host of the direct proxy. [Newtonsoft.Json.JsonPropertyAttribute("host")] public virtual string Host { get; set; } /// The URI of the PAC script used to configure the proxy. [Newtonsoft.Json.JsonPropertyAttribute("pacUri")] public virtual string PacUri { get; set; } /// The port of the direct proxy. [Newtonsoft.Json.JsonPropertyAttribute("port")] public virtual System.Nullable Port { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// The device or profile has been remotely locked via the LOCK command. public class RemoteLockEvent : Google.Apis.Requests.IDirectResponseSchema { /// Package name of the admin app requesting the change. [Newtonsoft.Json.JsonPropertyAttribute("adminPackageName")] public virtual string AdminPackageName { get; set; } /// User ID of the admin app from the which the change was requested. [Newtonsoft.Json.JsonPropertyAttribute("adminUserId")] public virtual System.Nullable AdminUserId { get; set; } /// User ID in which the change was requested in. [Newtonsoft.Json.JsonPropertyAttribute("targetUserId")] public virtual System.Nullable TargetUserId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Parameters associated with the REMOVE_ESIM command to remove an eSIM profile from the device. public class RemoveEsimParams : Google.Apis.Requests.IDirectResponseSchema { /// Required. ICC ID of the eSIM profile to be deleted. [Newtonsoft.Json.JsonPropertyAttribute("iccId")] public virtual string IccId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Request to remove ApplicationPolicy objects in the given policy. public class RemovePolicyApplicationsRequest : Google.Apis.Requests.IDirectResponseSchema { /// /// Required. Package names to be removed. Entries that are not found are ignored. There must be at least one /// entry in package_names. /// [Newtonsoft.Json.JsonPropertyAttribute("packageNames")] public virtual System.Collections.Generic.IList PackageNames { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Response to a request to remove ApplicationPolicy objects in the given policy. public class RemovePolicyApplicationsResponse : Google.Apis.Requests.IDirectResponseSchema { /// The updated policy after ApplicationPolicy objects have been removed. [Newtonsoft.Json.JsonPropertyAttribute("policy")] public virtual Policy Policy { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Parameters associated with the REQUEST_DEVICE_INFO command to get device related information. public class RequestDeviceInfoParams : Google.Apis.Requests.IDirectResponseSchema { /// Required. Type of device information to be requested. [Newtonsoft.Json.JsonPropertyAttribute("deviceInfo")] public virtual string DeviceInfo { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Status of the REQUEST_DEVICE_INFO command. public class RequestDeviceInfoStatus : Google.Apis.Requests.IDirectResponseSchema { /// Information related to the EIDs of the device. [Newtonsoft.Json.JsonPropertyAttribute("eidInfo")] public virtual EidInfo EidInfo { get; set; } /// Output only. Status of a REQUEST_DEVICE_INFO command. [Newtonsoft.Json.JsonPropertyAttribute("status")] public virtual string Status { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Role an app can have. public class Role : Google.Apis.Requests.IDirectResponseSchema { /// Required. The type of the role an app can have. [Newtonsoft.Json.JsonPropertyAttribute("roleType")] public virtual string RoleType { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Controls for the screen brightness settings. public class ScreenBrightnessSettings : Google.Apis.Requests.IDirectResponseSchema { /// /// Optional. The screen brightness between 1 and 255 where 1 is the lowest and 255 is the highest brightness. A /// value of 0 (default) means no screen brightness set. Any other value is rejected. screenBrightnessMode must /// be either BRIGHTNESS_AUTOMATIC or BRIGHTNESS_FIXED to set this. Supported on Android 9 and above on fully /// managed devices. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 9. /// Supported on work profiles on company-owned devices on Android 15 and above. /// [Newtonsoft.Json.JsonPropertyAttribute("screenBrightness")] public virtual System.Nullable ScreenBrightness { get; set; } /// Optional. Controls the screen brightness mode. [Newtonsoft.Json.JsonPropertyAttribute("screenBrightnessMode")] public virtual string ScreenBrightnessMode { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Controls the screen timeout settings. public class ScreenTimeoutSettings : Google.Apis.Requests.IDirectResponseSchema { /// /// Optional. Controls the screen timeout duration. The screen timeout duration must be greater than 0, /// otherwise it is rejected. Additionally, it should not be greater than maximumTimeToLock, otherwise the /// screen timeout is set to maximumTimeToLock and a NonComplianceDetail with INVALID_VALUE reason and /// SCREEN_TIMEOUT_GREATER_THAN_MAXIMUM_TIME_TO_LOCK specific reason is reported. If the screen timeout is less /// than a certain lower bound, it is set to the lower bound. The lower bound may vary across devices. If this /// is set, screenTimeoutMode must be SCREEN_TIMEOUT_ENFORCED. Supported on Android 9 and above on fully managed /// devices. A NonComplianceDetail with API_LEVEL is reported if the Android version is less than 9. Supported /// on work profiles on company-owned devices on Android 15 and above. /// [Newtonsoft.Json.JsonPropertyAttribute("screenTimeout")] public virtual object ScreenTimeout { get; set; } /// Optional. Controls whether the user is allowed to configure the screen timeout. [Newtonsoft.Json.JsonPropertyAttribute("screenTimeoutMode")] public virtual string ScreenTimeoutMode { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// The security posture of the device, as determined by the current device state and the policies applied. /// public class SecurityPosture : Google.Apis.Requests.IDirectResponseSchema { /// Device's security posture value. [Newtonsoft.Json.JsonPropertyAttribute("devicePosture")] public virtual string DevicePosture { get; set; } /// Additional details regarding the security posture of the device. [Newtonsoft.Json.JsonPropertyAttribute("postureDetails")] public virtual System.Collections.Generic.IList PostureDetails { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// An action executed during setup. public class SetupAction : Google.Apis.Requests.IDirectResponseSchema { /// Description of this action. [Newtonsoft.Json.JsonPropertyAttribute("description")] public virtual UserFacingMessage Description { get; set; } /// /// An action to launch an app. The app will be launched with an intent containing an extra with key /// com.google.android.apps.work.clouddpc.EXTRA_LAUNCHED_AS_SETUP_ACTION set to the boolean value true to /// indicate that this is a setup action flow. If SetupAction references an app, the corresponding installType /// in the application policy must be set as REQUIRED_FOR_SETUP or said setup will fail. /// [Newtonsoft.Json.JsonPropertyAttribute("launchApp")] public virtual LaunchAppAction LaunchApp { get; set; } /// Title of this action. [Newtonsoft.Json.JsonPropertyAttribute("title")] public virtual UserFacingMessage Title { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// A resource containing sign in details for an enterprise. Use enterprises to manage SigninDetails for a given /// enterprise.For an enterprise, we can have any number of SigninDetails that is uniquely identified by combination /// of the following three fields (signin_url, allow_personal_usage, token_tag). One cannot create two SigninDetails /// with the same (signin_url, allow_personal_usage, token_tag). (token_tag is an optional field).Patch: The /// operation updates the current list of SigninDetails with the new list of SigninDetails. If the stored /// SigninDetail configuration is passed, it returns the same signin_enrollment_token and qr_code. If we pass /// multiple identical SigninDetail configurations that are not stored, it will store the first one amongst those /// SigninDetail configurations. if the configuration already exists we cannot request it more than once in a /// particular patch API call, otherwise it will give a duplicate key error and the whole operation will fail. If we /// remove certain SigninDetail configuration from the request then it will get removed from the storage. We can /// then request another signin_enrollment_token and qr_code for the same SigninDetail configuration. /// public class SigninDetail : Google.Apis.Requests.IDirectResponseSchema { /// /// Controls whether personal usage is allowed on a device provisioned with this enrollment token.For /// company-owned devices: Enabling personal usage allows the user to set up a work profile on the device. /// Disabling personal usage requires the user provision the device as a fully managed device.For /// personally-owned devices: Enabling personal usage allows the user to set up a work profile on the device. /// Disabling personal usage will prevent the device from provisioning. Personal usage cannot be disabled on /// personally-owned device. /// [Newtonsoft.Json.JsonPropertyAttribute("allowPersonalUsage")] public virtual string AllowPersonalUsage { get; set; } /// /// Optional. Whether the sign-in URL should be used by default for the enterprise. The SigninDetail with /// defaultStatus set to SIGNIN_DETAIL_IS_DEFAULT is used for Google account enrollment method. Only one of an /// enterprise's signinDetails can have defaultStatus set to SIGNIN_DETAIL_IS_DEFAULT. If an Enterprise has at /// least one signinDetails and none of them have defaultStatus set to SIGNIN_DETAIL_IS_DEFAULT then the first /// one from the list is selected and has set defaultStatus to SIGNIN_DETAIL_IS_DEFAULT. If no signinDetails /// specified for the Enterprise then the Google Account device enrollment will fail. /// [Newtonsoft.Json.JsonPropertyAttribute("defaultStatus")] public virtual string DefaultStatus { get; set; } /// /// A JSON string whose UTF-8 representation can be used to generate a QR code to enroll a device with this /// enrollment token. To enroll a device using NFC, the NFC record must contain a serialized /// java.util.Properties representation of the properties in the JSON. This is a read-only field generated by /// the server. /// [Newtonsoft.Json.JsonPropertyAttribute("qrCode")] public virtual string QrCode { get; set; } /// /// An enterprise wide enrollment token used to trigger custom sign-in flow. This is a read-only field generated /// by the server. /// [Newtonsoft.Json.JsonPropertyAttribute("signinEnrollmentToken")] public virtual string SigninEnrollmentToken { get; set; } /// /// Sign-in URL for authentication when device is provisioned with a sign-in enrollment token. The sign-in /// endpoint should finish authentication flow with a URL in the form of /// https://enterprise.google.com/android/enroll?et= for a successful login, or /// https://enterprise.google.com/android/enroll/invalid for a failed login. /// [Newtonsoft.Json.JsonPropertyAttribute("signinUrl")] public virtual string SigninUrl { get; set; } /// An EMM-specified metadata to distinguish between instances of SigninDetail. [Newtonsoft.Json.JsonPropertyAttribute("tokenTag")] public virtual string TokenTag { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// An enterprise signup URL. public class SignupUrl : Google.Apis.Requests.IDirectResponseSchema { /// /// The name of the resource. Use this value in the signupUrl field when calling enterprises.create to complete /// the enterprise signup flow. /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// /// A URL where an enterprise admin can register their enterprise. The page can't be rendered in an iframe. /// [Newtonsoft.Json.JsonPropertyAttribute("url")] public virtual string Url { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Information about device software. public class SoftwareInfo : Google.Apis.Requests.IDirectResponseSchema { /// /// Android build ID string meant for displaying to the user. For example, shamu-userdebug 6.0.1 MOB30I 2756745 /// dev-keys. /// [Newtonsoft.Json.JsonPropertyAttribute("androidBuildNumber")] public virtual string AndroidBuildNumber { get; set; } private string _androidBuildTimeRaw; private object _androidBuildTime; /// Build time. [Newtonsoft.Json.JsonPropertyAttribute("androidBuildTime")] public virtual string AndroidBuildTimeRaw { get => _androidBuildTimeRaw; set { _androidBuildTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _androidBuildTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use AndroidBuildTimeDateTimeOffset instead.")] public virtual object AndroidBuildTime { get => _androidBuildTime; set { _androidBuildTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _androidBuildTime = value; } } /// /// representation of . /// [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? AndroidBuildTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(AndroidBuildTimeRaw); set => AndroidBuildTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// The Android Device Policy app version code. [Newtonsoft.Json.JsonPropertyAttribute("androidDevicePolicyVersionCode")] public virtual System.Nullable AndroidDevicePolicyVersionCode { get; set; } /// The Android Device Policy app version as displayed to the user. [Newtonsoft.Json.JsonPropertyAttribute("androidDevicePolicyVersionName")] public virtual string AndroidDevicePolicyVersionName { get; set; } /// The user-visible Android version string. For example, 6.0.1. [Newtonsoft.Json.JsonPropertyAttribute("androidVersion")] public virtual string AndroidVersion { get; set; } /// The system bootloader version number, e.g. 0.6.7. [Newtonsoft.Json.JsonPropertyAttribute("bootloaderVersion")] public virtual string BootloaderVersion { get; set; } /// /// SHA-256 hash of android.content.pm.Signature /// (https://developer.android.com/reference/android/content/pm/Signature.html) associated with the system /// package, which can be used to verify that the system build hasn't been modified. /// [Newtonsoft.Json.JsonPropertyAttribute("deviceBuildSignature")] public virtual string DeviceBuildSignature { get; set; } /// Kernel version, for example, 2.6.32.9-g103d848. [Newtonsoft.Json.JsonPropertyAttribute("deviceKernelVersion")] public virtual string DeviceKernelVersion { get; set; } /// An IETF BCP 47 language code for the primary locale on the device. [Newtonsoft.Json.JsonPropertyAttribute("primaryLanguageCode")] public virtual string PrimaryLanguageCode { get; set; } /// Security patch level, e.g. 2016-05-01. [Newtonsoft.Json.JsonPropertyAttribute("securityPatchLevel")] public virtual string SecurityPatchLevel { get; set; } /// Information about a potential pending system update. [Newtonsoft.Json.JsonPropertyAttribute("systemUpdateInfo")] public virtual SystemUpdateInfo SystemUpdateInfo { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Additional context for SpecificNonComplianceReason. public class SpecificNonComplianceContext : Google.Apis.Requests.IDirectResponseSchema { /// /// Output only. Additional context for non-compliance related to default application settings. See /// DEFAULT_APPLICATION_SETTING_FAILED_FOR_SCOPE. /// [Newtonsoft.Json.JsonPropertyAttribute("defaultApplicationContext")] public virtual DefaultApplicationContext DefaultApplicationContext { get; set; } /// /// Additional context for non-compliance related to Wi-Fi configuration. See ONC_WIFI_INVALID_VALUE and /// ONC_WIFI_API_LEVEL /// [Newtonsoft.Json.JsonPropertyAttribute("oncWifiContext")] public virtual OncWifiContext OncWifiContext { get; set; } /// /// Additional context for non-compliance related to password policies. See PASSWORD_POLICIES_PASSWORD_EXPIRED /// and PASSWORD_POLICIES_PASSWORD_NOT_SUFFICIENT. /// [Newtonsoft.Json.JsonPropertyAttribute("passwordPoliciesContext")] public virtual PasswordPoliciesContext PasswordPoliciesContext { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Parameters associated with the START_LOST_MODE command to put the device into lost mode. At least one of the /// parameters, not including the organization name, must be provided in order for the device to be put into lost /// mode. /// public class StartLostModeParams : Google.Apis.Requests.IDirectResponseSchema { /// The email address displayed to the user when the device is in lost mode. [Newtonsoft.Json.JsonPropertyAttribute("lostEmailAddress")] public virtual string LostEmailAddress { get; set; } /// The message displayed to the user when the device is in lost mode. [Newtonsoft.Json.JsonPropertyAttribute("lostMessage")] public virtual UserFacingMessage LostMessage { get; set; } /// The organization name displayed to the user when the device is in lost mode. [Newtonsoft.Json.JsonPropertyAttribute("lostOrganization")] public virtual UserFacingMessage LostOrganization { get; set; } /// /// The phone number that will be called when the device is in lost mode and the call owner button is tapped. /// [Newtonsoft.Json.JsonPropertyAttribute("lostPhoneNumber")] public virtual UserFacingMessage LostPhoneNumber { get; set; } /// The street address displayed to the user when the device is in lost mode. [Newtonsoft.Json.JsonPropertyAttribute("lostStreetAddress")] public virtual UserFacingMessage LostStreetAddress { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Status of the START_LOST_MODE command to put the device into lost mode. public class StartLostModeStatus : Google.Apis.Requests.IDirectResponseSchema { /// The status. See StartLostModeStatus. [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; } } /// Settings controlling the behavior of status reports. public class StatusReportingSettings : Google.Apis.Requests.IDirectResponseSchema { /// Application reporting settings. Only applicable if application_reports_enabled is true. [Newtonsoft.Json.JsonPropertyAttribute("applicationReportingSettings")] public virtual ApplicationReportingSettings ApplicationReportingSettings { get; set; } /// Whether app reports are enabled. [Newtonsoft.Json.JsonPropertyAttribute("applicationReportsEnabled")] public virtual System.Nullable ApplicationReportsEnabled { get; set; } /// /// Whether Common Criteria Mode reporting is enabled. This is supported only on company-owned devices. /// [Newtonsoft.Json.JsonPropertyAttribute("commonCriteriaModeEnabled")] public virtual System.Nullable CommonCriteriaModeEnabled { get; set; } /// Optional. Whether defaultApplicationInfo reporting is enabled. [Newtonsoft.Json.JsonPropertyAttribute("defaultApplicationInfoReportingEnabled")] public virtual System.Nullable DefaultApplicationInfoReportingEnabled { get; set; } /// Whether device settings reporting is enabled. [Newtonsoft.Json.JsonPropertyAttribute("deviceSettingsEnabled")] public virtual System.Nullable DeviceSettingsEnabled { get; set; } /// /// Whether displays reporting is enabled. Report data is not available for personally owned devices with work /// profiles. /// [Newtonsoft.Json.JsonPropertyAttribute("displayInfoEnabled")] public virtual System.Nullable DisplayInfoEnabled { get; set; } /// /// Whether hardware status reporting is enabled. Report data is not available for personally owned devices with /// work profiles. /// [Newtonsoft.Json.JsonPropertyAttribute("hardwareStatusEnabled")] public virtual System.Nullable HardwareStatusEnabled { get; set; } /// Whether memory event reporting is enabled. [Newtonsoft.Json.JsonPropertyAttribute("memoryInfoEnabled")] public virtual System.Nullable MemoryInfoEnabled { get; set; } /// Whether network info reporting is enabled. [Newtonsoft.Json.JsonPropertyAttribute("networkInfoEnabled")] public virtual System.Nullable NetworkInfoEnabled { get; set; } /// /// Whether power management event reporting is enabled. Report data is not available for personally owned /// devices with work profiles. /// [Newtonsoft.Json.JsonPropertyAttribute("powerManagementEventsEnabled")] public virtual System.Nullable PowerManagementEventsEnabled { get; set; } /// Whether software info reporting is enabled. [Newtonsoft.Json.JsonPropertyAttribute("softwareInfoEnabled")] public virtual System.Nullable SoftwareInfoEnabled { get; set; } /// Whether system properties reporting is enabled. [Newtonsoft.Json.JsonPropertyAttribute("systemPropertiesEnabled")] public virtual System.Nullable SystemPropertiesEnabled { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Parameters associated with the STOP_LOST_MODE command to take the device out of lost mode. public class StopLostModeParams : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } /// Status of the STOP_LOST_MODE command to take the device out of lost mode. public class StopLostModeStatus : Google.Apis.Requests.IDirectResponseSchema { /// The status. See StopLostModeStatus. [Newtonsoft.Json.JsonPropertyAttribute("status")] public virtual string Status { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A lost mode event indicating the user has attempted to stop lost mode. public class StopLostModeUserAttemptEvent : Google.Apis.Requests.IDirectResponseSchema { /// The status of the attempt to stop lost mode. [Newtonsoft.Json.JsonPropertyAttribute("status")] public virtual string Status { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Configuration for managing system updatesNote: Google Play system updates /// (https://source.android.com/docs/core/ota/modular-system) (also called Mainline updates) are automatically /// downloaded but require a device reboot to be installed. Refer to the mainline section in Manage system updates /// (https://developer.android.com/work/dpc/system-updates#mainline) for further details. /// public class SystemUpdate : Google.Apis.Requests.IDirectResponseSchema { /// /// If the type is WINDOWED, the end of the maintenance window, measured as the number of minutes after midnight /// in device's local time. This value must be between 0 and 1439, inclusive. If this value is less than /// start_minutes, then the maintenance window spans midnight. If the maintenance window specified is smaller /// than 30 minutes, the actual window is extended to 30 minutes beyond the start time. /// [Newtonsoft.Json.JsonPropertyAttribute("endMinutes")] public virtual System.Nullable EndMinutes { get; set; } /// /// An annually repeating time period in which over-the-air (OTA) system updates are postponed to freeze the OS /// version running on a device. To prevent freezing the device indefinitely, each freeze period must be /// separated by at least 60 days. /// [Newtonsoft.Json.JsonPropertyAttribute("freezePeriods")] public virtual System.Collections.Generic.IList FreezePeriods { get; set; } /// /// If the type is WINDOWED, the start of the maintenance window, measured as the number of minutes after /// midnight in the device's local time. This value must be between 0 and 1439, inclusive. /// [Newtonsoft.Json.JsonPropertyAttribute("startMinutes")] public virtual System.Nullable StartMinutes { get; set; } /// The type of system update to configure. [Newtonsoft.Json.JsonPropertyAttribute("type")] public virtual string Type { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Information about a potential pending system update. public class SystemUpdateInfo : Google.Apis.Requests.IDirectResponseSchema { private string _updateReceivedTimeRaw; private object _updateReceivedTime; /// /// The time when the update was first available. A zero value indicates that this field is not set. This field /// is set only if an update is available (that is, updateStatus is neither UPDATE_STATUS_UNKNOWN nor /// UP_TO_DATE). /// [Newtonsoft.Json.JsonPropertyAttribute("updateReceivedTime")] public virtual string UpdateReceivedTimeRaw { get => _updateReceivedTimeRaw; set { _updateReceivedTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _updateReceivedTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use UpdateReceivedTimeDateTimeOffset instead.")] public virtual object UpdateReceivedTime { get => _updateReceivedTime; set { _updateReceivedTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _updateReceivedTime = value; } } /// /// representation of . /// [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? UpdateReceivedTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(UpdateReceivedTimeRaw); set => UpdateReceivedTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// The status of an update: whether an update exists and what type it is. [Newtonsoft.Json.JsonPropertyAttribute("updateStatus")] public virtual string UpdateStatus { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Telephony information associated with a given SIM card on the device. Only supported on fully managed devices /// starting from Android API level 23. /// public class TelephonyInfo : Google.Apis.Requests.IDirectResponseSchema { /// /// Output only. Activation state of the SIM card on the device. This is applicable for eSIMs only. This is /// supported on all devices for API level 35 and above. This is always ACTIVATION_STATE_UNSPECIFIED for /// physical SIMs and for devices below API level 35. /// [Newtonsoft.Json.JsonPropertyAttribute("activationState")] public virtual string ActivationState { get; set; } /// The carrier name associated with this SIM card. [Newtonsoft.Json.JsonPropertyAttribute("carrierName")] public virtual string CarrierName { get; set; } /// /// Output only. The configuration mode of the SIM card on the device. This is applicable for eSIMs only. This /// is supported on all devices for API level 35 and above. This is always CONFIG_MODE_UNSPECIFIED for physical /// SIMs and for devices below API level 35. /// [Newtonsoft.Json.JsonPropertyAttribute("configMode")] public virtual string ConfigMode { get; set; } /// Output only. The ICCID associated with this SIM card. [Newtonsoft.Json.JsonPropertyAttribute("iccId")] public virtual string IccId { get; set; } /// The phone number associated with this SIM card. [Newtonsoft.Json.JsonPropertyAttribute("phoneNumber")] public virtual string PhoneNumber { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A terms and conditions page to be accepted during provisioning. public class TermsAndConditions : Google.Apis.Requests.IDirectResponseSchema { /// /// A well-formatted HTML string. It will be parsed on the client with android.text.Html#fromHtml. /// [Newtonsoft.Json.JsonPropertyAttribute("content")] public virtual UserFacingMessage Content { get; set; } /// A short header which appears above the HTML content. [Newtonsoft.Json.JsonPropertyAttribute("header")] public virtual UserFacingMessage Header { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Controls types of device activity logs collected from the device and reported via Pub/Sub notification /// (https://developers.google.com/android/management/notifications). /// public class UsageLog : Google.Apis.Requests.IDirectResponseSchema { /// /// Specifies which log types are enabled. Note that users will receive on-device messaging when usage logging /// is enabled. /// [Newtonsoft.Json.JsonPropertyAttribute("enabledLogTypes")] public virtual System.Collections.Generic.IList EnabledLogTypes { get; set; } /// /// Specifies which of the enabled log types can be uploaded over mobile data. By default logs are queued for /// upload when the device connects to WiFi. /// [Newtonsoft.Json.JsonPropertyAttribute("uploadOnCellularAllowed")] public virtual System.Collections.Generic.IList UploadOnCellularAllowed { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// An event logged on the device. public class UsageLogEvent : Google.Apis.Requests.IDirectResponseSchema { /// A shell command was issued over ADB via “adb shell command”. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("adbShellCommandEvent")] public virtual AdbShellCommandEvent AdbShellCommandEvent { get; set; } /// An ADB interactive shell was opened via “adb shell”. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("adbShellInteractiveEvent")] public virtual AdbShellInteractiveEvent AdbShellInteractiveEvent { get; set; } /// An app process was started. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("appProcessStartEvent")] public virtual AppProcessStartEvent AppProcessStartEvent { get; set; } /// An admin has enabled or disabled backup service. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("backupServiceToggledEvent")] public virtual BackupServiceToggledEvent BackupServiceToggledEvent { get; set; } /// /// A new root certificate was installed into the system's trusted credential storage. Part of SECURITY_LOGS. /// [Newtonsoft.Json.JsonPropertyAttribute("certAuthorityInstalledEvent")] public virtual CertAuthorityInstalledEvent CertAuthorityInstalledEvent { get; set; } /// /// A root certificate was removed from the system's trusted credential storage. Part of SECURITY_LOGS. /// [Newtonsoft.Json.JsonPropertyAttribute("certAuthorityRemovedEvent")] public virtual CertAuthorityRemovedEvent CertAuthorityRemovedEvent { get; set; } /// /// An X.509v3 certificate failed to validate, currently this validation is performed on the Wi-FI access point /// and failure may be due to a mismatch upon server certificate validation. However it may in the future /// include other validation events of an X.509v3 certificate. Part of SECURITY_LOGS. /// [Newtonsoft.Json.JsonPropertyAttribute("certValidationFailureEvent")] public virtual CertValidationFailureEvent CertValidationFailureEvent { get; set; } /// /// A TCP connect event was initiated through the standard network stack. Part of NETWORK_ACTIVITY_LOGS. /// [Newtonsoft.Json.JsonPropertyAttribute("connectEvent")] public virtual ConnectEvent ConnectEvent { get; set; } /// /// Validates whether Android’s built-in cryptographic library (BoringSSL) is valid. Should always succeed on /// device boot, if it fails, the device should be considered untrusted. Part of SECURITY_LOGS. /// [Newtonsoft.Json.JsonPropertyAttribute("cryptoSelfTestCompletedEvent")] public virtual CryptoSelfTestCompletedEvent CryptoSelfTestCompletedEvent { get; set; } /// /// A DNS lookup event was initiated through the standard network stack. Part of NETWORK_ACTIVITY_LOGS. /// [Newtonsoft.Json.JsonPropertyAttribute("dnsEvent")] public virtual DnsEvent DnsEvent { get; set; } /// Device has completed enrollment. Part of AMAPI_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("enrollmentCompleteEvent")] public virtual EnrollmentCompleteEvent EnrollmentCompleteEvent { get; set; } /// Unique id of the event. [Newtonsoft.Json.JsonPropertyAttribute("eventId")] public virtual System.Nullable EventId { get; set; } private string _eventTimeRaw; private object _eventTime; /// Device timestamp when the event was logged. [Newtonsoft.Json.JsonPropertyAttribute("eventTime")] public virtual string EventTimeRaw { get => _eventTimeRaw; set { _eventTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); _eventTimeRaw = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EventTimeDateTimeOffset instead.")] public virtual object EventTime { get => _eventTime; set { _eventTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); _eventTime = value; } } /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] public virtual System.DateTimeOffset? EventTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EventTimeRaw); set => EventTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// /// The particular usage log event type that was reported on the device. Use this to determine which event field /// to access. /// [Newtonsoft.Json.JsonPropertyAttribute("eventType")] public virtual string EventType { get; set; } /// A file was downloaded from the device. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("filePulledEvent")] public virtual FilePulledEvent FilePulledEvent { get; set; } /// A file was uploaded onto the device. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("filePushedEvent")] public virtual FilePushedEvent FilePushedEvent { get; set; } /// /// A cryptographic key including user installed, admin installed and system maintained private key is removed /// from the device either by the user or management. Part of SECURITY_LOGS. /// [Newtonsoft.Json.JsonPropertyAttribute("keyDestructionEvent")] public virtual KeyDestructionEvent KeyDestructionEvent { get; set; } /// /// A cryptographic key including user installed, admin installed and system maintained private key is installed /// on the device either by the user or management. Part of SECURITY_LOGS. /// [Newtonsoft.Json.JsonPropertyAttribute("keyGeneratedEvent")] public virtual KeyGeneratedEvent KeyGeneratedEvent { get; set; } /// /// A cryptographic key including user installed, admin installed and system maintained private key is imported /// on the device either by the user or management. Part of SECURITY_LOGS. /// [Newtonsoft.Json.JsonPropertyAttribute("keyImportEvent")] public virtual KeyImportEvent KeyImportEvent { get; set; } /// /// A cryptographic key including user installed, admin installed and system maintained private key is /// determined to be corrupted due to storage corruption, hardware failure or some OS issue. Part of /// SECURITY_LOGS. /// [Newtonsoft.Json.JsonPropertyAttribute("keyIntegrityViolationEvent")] public virtual KeyIntegrityViolationEvent KeyIntegrityViolationEvent { get; set; } /// An attempt was made to unlock the device. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("keyguardDismissAuthAttemptEvent")] public virtual KeyguardDismissAuthAttemptEvent KeyguardDismissAuthAttemptEvent { get; set; } /// The keyguard was dismissed. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("keyguardDismissedEvent")] public virtual KeyguardDismissedEvent KeyguardDismissedEvent { get; set; } /// The device was locked either by user or timeout. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("keyguardSecuredEvent")] public virtual KeyguardSecuredEvent KeyguardSecuredEvent { get; set; } /// /// The audit log buffer has reached 90% of its capacity, therefore older events may be dropped. Part of /// SECURITY_LOGS. /// [Newtonsoft.Json.JsonPropertyAttribute("logBufferSizeCriticalEvent")] public virtual LogBufferSizeCriticalEvent LogBufferSizeCriticalEvent { get; set; } /// usageLog policy has been enabled. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("loggingStartedEvent")] public virtual LoggingStartedEvent LoggingStartedEvent { get; set; } /// usageLog policy has been disabled. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("loggingStoppedEvent")] public virtual LoggingStoppedEvent LoggingStoppedEvent { get; set; } /// A lost mode location update when a device in lost mode. [Newtonsoft.Json.JsonPropertyAttribute("lostModeLocationEvent")] public virtual LostModeLocationEvent LostModeLocationEvent { get; set; } /// An outgoing phone call has been made when a device in lost mode. [Newtonsoft.Json.JsonPropertyAttribute("lostModeOutgoingPhoneCallEvent")] public virtual LostModeOutgoingPhoneCallEvent LostModeOutgoingPhoneCallEvent { get; set; } /// Removable media was mounted. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("mediaMountEvent")] public virtual MediaMountEvent MediaMountEvent { get; set; } /// Removable media was unmounted. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("mediaUnmountEvent")] public virtual MediaUnmountEvent MediaUnmountEvent { get; set; } /// Device was shutdown. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("osShutdownEvent")] public virtual OsShutdownEvent OsShutdownEvent { get; set; } /// Device was started. Part of SECURITY_LOGS. [Newtonsoft.Json.JsonPropertyAttribute("osStartupEvent")] public virtual OsStartupEvent OsStartupEvent { get; set; } /// /// The device or profile has been remotely locked via the LOCK command. Part of SECURITY_LOGS. /// [Newtonsoft.Json.JsonPropertyAttribute("remoteLockEvent")] public virtual RemoteLockEvent RemoteLockEvent { get; set; } /// An attempt to take a device out of lost mode. [Newtonsoft.Json.JsonPropertyAttribute("stopLostModeUserAttemptEvent")] public virtual StopLostModeUserAttemptEvent StopLostModeUserAttemptEvent { get; set; } /// /// The work profile or company-owned device failed to wipe when requested. This could be user initiated or /// admin initiated e.g. delete was received. Part of SECURITY_LOGS. /// [Newtonsoft.Json.JsonPropertyAttribute("wipeFailureEvent")] public virtual WipeFailureEvent WipeFailureEvent { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A user belonging to an enterprise. public class User : Google.Apis.Requests.IDirectResponseSchema { /// /// A unique identifier you create for this user, such as user342 or asset#44418. This field must be set when /// the user is created and can't be updated. This field must not contain personally identifiable information /// (PII). This identifier must be 1024 characters or less; otherwise, the update policy request will fail. /// [Newtonsoft.Json.JsonPropertyAttribute("accountIdentifier")] public virtual string AccountIdentifier { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Provides a user-facing message with locale info. The maximum message length is 4096 characters. /// public class UserFacingMessage : Google.Apis.Requests.IDirectResponseSchema { /// /// The default message displayed if no localized message is specified or the user's locale doesn't match with /// any of the localized messages. A default message must be provided if any localized messages are provided. /// [Newtonsoft.Json.JsonPropertyAttribute("defaultMessage")] public virtual string DefaultMessage { get; set; } /// /// A map containing pairs, where locale is a well-formed BCP 47 language /// (https://www.w3.org/International/articles/language-tags/) code, such as en-US, es-ES, or fr. /// [Newtonsoft.Json.JsonPropertyAttribute("localizedMessages")] public virtual System.Collections.Generic.IDictionary LocalizedMessages { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A web app. public class WebApp : Google.Apis.Requests.IDirectResponseSchema { /// The display mode of the web app. [Newtonsoft.Json.JsonPropertyAttribute("displayMode")] public virtual string DisplayMode { get; set; } /// A list of icons for the web app. Must have at least one element. [Newtonsoft.Json.JsonPropertyAttribute("icons")] public virtual System.Collections.Generic.IList Icons { get; set; } /// /// The name of the web app, which is generated by the server during creation in the form /// enterprises/{enterpriseId}/webApps/{packageName}. /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// The start URL, i.e. the URL that should load when the user opens the application. [Newtonsoft.Json.JsonPropertyAttribute("startUrl")] public virtual string StartUrl { get; set; } /// /// The title of the web app as displayed to the user (e.g., amongst a list of other applications, or as a label /// for an icon). /// [Newtonsoft.Json.JsonPropertyAttribute("title")] public virtual string Title { get; set; } /// /// The current version of the app.Note that the version can automatically increase during the lifetime of the /// web app, while Google does internal housekeeping to keep the web app up-to-date. /// [Newtonsoft.Json.JsonPropertyAttribute("versionCode")] public virtual System.Nullable VersionCode { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// An icon for a web app. Supported formats are: png, jpg and webp. public class WebAppIcon : Google.Apis.Requests.IDirectResponseSchema { /// /// The actual bytes of the image in a base64url encoded string (c.f. RFC4648, section 5 "Base 64 Encoding with /// URL and Filename Safe Alphabet"). - The image type can be png or jpg. - The image should ideally be square. /// - The image should ideally have a size of 512x512. /// [Newtonsoft.Json.JsonPropertyAttribute("imageData")] public virtual string ImageData { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// A web token used to access the managed Google Play iframe. public class WebToken : Google.Apis.Requests.IDirectResponseSchema { /// /// The features to enable. Use this if you want to control exactly which feature(s) will be activated; leave /// empty to allow all features.Restrictions / things to note: - If no features are listed here, all features /// are enabled — this is the default behavior where you give access to all features to your admins. - This must /// not contain any FEATURE_UNSPECIFIED values. - Repeated values are ignored /// [Newtonsoft.Json.JsonPropertyAttribute("enabledFeatures")] public virtual System.Collections.Generic.IList EnabledFeatures { get; set; } /// /// The name of the web token, which is generated by the server during creation in the form /// enterprises/{enterpriseId}/webTokens/{webTokenId}. /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } /// /// The URL of the parent frame hosting the iframe with the embedded UI. To prevent XSS, the iframe may not be /// hosted at other URLs. The URL must use the https scheme. /// [Newtonsoft.Json.JsonPropertyAttribute("parentFrameUrl")] public virtual string ParentFrameUrl { get; set; } /// /// Permissions available to an admin in the embedded UI. An admin must have all of these permissions in order /// to view the UI. This field is deprecated. /// [Newtonsoft.Json.JsonPropertyAttribute("permissions")] public virtual System.Collections.Generic.IList Permissions { get; set; } /// /// The token value which is used in the hosting page to generate the iframe with the embedded UI. This is a /// read-only field generated by the server. /// [Newtonsoft.Json.JsonPropertyAttribute("value")] public virtual string Value { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Wi-Fi roaming policy. public class WifiRoamingPolicy : Google.Apis.Requests.IDirectResponseSchema { /// /// Optional. Wi-Fi roaming settings. SSIDs provided in this list must be unique, the policy will be rejected /// otherwise. /// [Newtonsoft.Json.JsonPropertyAttribute("wifiRoamingSettings")] public virtual System.Collections.Generic.IList WifiRoamingSettings { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Wi-Fi roaming setting. public class WifiRoamingSetting : Google.Apis.Requests.IDirectResponseSchema { /// Required. Wi-Fi roaming mode for the specified SSID. [Newtonsoft.Json.JsonPropertyAttribute("wifiRoamingMode")] public virtual string WifiRoamingMode { get; set; } /// Required. SSID of the Wi-Fi network. [Newtonsoft.Json.JsonPropertyAttribute("wifiSsid")] public virtual string WifiSsid { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// Represents a Wi-Fi SSID. public class WifiSsid : Google.Apis.Requests.IDirectResponseSchema { /// Required. Wi-Fi SSID represented as a string. [Newtonsoft.Json.JsonPropertyAttribute("wifiSsid")] public virtual string WifiSsidValue { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Restrictions on which Wi-Fi SSIDs the device can connect to. Note that this does not affect which networks can /// be configured on the device. Supported on company-owned devices running Android 13 and above. /// public class WifiSsidPolicy : Google.Apis.Requests.IDirectResponseSchema { /// Type of the Wi-Fi SSID policy to be applied. [Newtonsoft.Json.JsonPropertyAttribute("wifiSsidPolicyType")] public virtual string WifiSsidPolicyType { get; set; } /// /// Optional. List of Wi-Fi SSIDs that should be applied in the policy. This field must be non-empty when /// WifiSsidPolicyType is set to WIFI_SSID_ALLOWLIST. If this is set to a non-empty list, then a /// NonComplianceDetail detail with API_LEVEL is reported if the Android version is less than 13 and a /// NonComplianceDetail with MANAGEMENT_MODE is reported for non-company-owned devices. /// [Newtonsoft.Json.JsonPropertyAttribute("wifiSsids")] public virtual System.Collections.Generic.IList WifiSsids { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// An action to reset a company owned device or delete a work profile. Note: blockAction must also be specified. /// public class WipeAction : Google.Apis.Requests.IDirectResponseSchema { /// /// Whether the factory-reset protection data is preserved on the device. This setting doesn’t apply to work /// profiles. /// [Newtonsoft.Json.JsonPropertyAttribute("preserveFrp")] public virtual System.Nullable PreserveFrp { get; set; } /// /// Number of days the policy is non-compliant before the device or work profile is wiped. wipeAfterDays must be /// greater than blockAfterDays. /// [Newtonsoft.Json.JsonPropertyAttribute("wipeAfterDays")] public virtual System.Nullable WipeAfterDays { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// The work profile or company-owned device failed to wipe when requested. This could be user initiated or admin /// initiated e.g. delete was received. Intentionally empty. /// public class WipeFailureEvent : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } /// Parameters associated with the WIPE command to wipe the device. public class WipeParams : Google.Apis.Requests.IDirectResponseSchema { /// Optional. Flags to determine what data to wipe. [Newtonsoft.Json.JsonPropertyAttribute("wipeDataFlags")] public virtual System.Collections.Generic.IList WipeDataFlags { get; set; } /// /// Optional. A short message displayed to the user before wiping the work profile on personal devices. This has /// no effect on company owned devices. The maximum message length is 200 characters. /// [Newtonsoft.Json.JsonPropertyAttribute("wipeReason")] public virtual UserFacingMessage WipeReason { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// /// Controls the work account setup configuration, such as details of whether a Google authenticated account is /// required. /// public class WorkAccountSetupConfig : Google.Apis.Requests.IDirectResponseSchema { /// Optional. The authentication type of the user on the device. [Newtonsoft.Json.JsonPropertyAttribute("authenticationType")] public virtual string AuthenticationType { get; set; } /// /// Optional. The specific google work account email address to be added. This field is only relevant if /// authenticationType is GOOGLE_AUTHENTICATED. This must be an enterprise account and not a consumer account. /// Once set and a Google authenticated account is added to the device, changing this field will have no effect, /// and thus recommended to be set only once. /// [Newtonsoft.Json.JsonPropertyAttribute("requiredAccountEmail")] public virtual string RequiredAccountEmail { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } }