1// Copyright 2021 Google LLC. 2// Use of this source code is governed by a BSD-style 3// license that can be found in the LICENSE file. 4 5// Code generated file. DO NOT EDIT. 6 7// Package androidmanagement provides access to the Android Management API. 8// 9// For product documentation, see: https://developers.google.com/android/management 10// 11// Creating a client 12// 13// Usage example: 14// 15// import "google.golang.org/api/androidmanagement/v1" 16// ... 17// ctx := context.Background() 18// androidmanagementService, err := androidmanagement.NewService(ctx) 19// 20// In this example, Google Application Default Credentials are used for authentication. 21// 22// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. 23// 24// Other authentication options 25// 26// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey: 27// 28// androidmanagementService, err := androidmanagement.NewService(ctx, option.WithAPIKey("AIza...")) 29// 30// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource: 31// 32// config := &oauth2.Config{...} 33// // ... 34// token, err := config.Exchange(ctx, ...) 35// androidmanagementService, err := androidmanagement.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) 36// 37// See https://godoc.org/google.golang.org/api/option/ for details on options. 38package androidmanagement // import "google.golang.org/api/androidmanagement/v1" 39 40import ( 41 "bytes" 42 "context" 43 "encoding/json" 44 "errors" 45 "fmt" 46 "io" 47 "net/http" 48 "net/url" 49 "strconv" 50 "strings" 51 52 googleapi "google.golang.org/api/googleapi" 53 gensupport "google.golang.org/api/internal/gensupport" 54 option "google.golang.org/api/option" 55 internaloption "google.golang.org/api/option/internaloption" 56 htransport "google.golang.org/api/transport/http" 57) 58 59// Always reference these packages, just in case the auto-generated code 60// below doesn't. 61var _ = bytes.NewBuffer 62var _ = strconv.Itoa 63var _ = fmt.Sprintf 64var _ = json.NewDecoder 65var _ = io.Copy 66var _ = url.Parse 67var _ = gensupport.MarshalJSON 68var _ = googleapi.Version 69var _ = errors.New 70var _ = strings.Replace 71var _ = context.Canceled 72var _ = internaloption.WithDefaultEndpoint 73 74const apiId = "androidmanagement:v1" 75const apiName = "androidmanagement" 76const apiVersion = "v1" 77const basePath = "https://androidmanagement.googleapis.com/" 78const mtlsBasePath = "https://androidmanagement.mtls.googleapis.com/" 79 80// OAuth2 scopes used by this API. 81const ( 82 // Manage Android devices and apps for your customers 83 AndroidmanagementScope = "https://www.googleapis.com/auth/androidmanagement" 84) 85 86// NewService creates a new Service. 87func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { 88 scopesOption := option.WithScopes( 89 "https://www.googleapis.com/auth/androidmanagement", 90 ) 91 // NOTE: prepend, so we don't override user-specified scopes. 92 opts = append([]option.ClientOption{scopesOption}, opts...) 93 opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) 94 opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) 95 client, endpoint, err := htransport.NewClient(ctx, opts...) 96 if err != nil { 97 return nil, err 98 } 99 s, err := New(client) 100 if err != nil { 101 return nil, err 102 } 103 if endpoint != "" { 104 s.BasePath = endpoint 105 } 106 return s, nil 107} 108 109// New creates a new Service. It uses the provided http.Client for requests. 110// 111// Deprecated: please use NewService instead. 112// To provide a custom HTTP client, use option.WithHTTPClient. 113// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. 114func New(client *http.Client) (*Service, error) { 115 if client == nil { 116 return nil, errors.New("client is nil") 117 } 118 s := &Service{client: client, BasePath: basePath} 119 s.Enterprises = NewEnterprisesService(s) 120 s.SignupUrls = NewSignupUrlsService(s) 121 return s, nil 122} 123 124type Service struct { 125 client *http.Client 126 BasePath string // API endpoint base URL 127 UserAgent string // optional additional User-Agent fragment 128 129 Enterprises *EnterprisesService 130 131 SignupUrls *SignupUrlsService 132} 133 134func (s *Service) userAgent() string { 135 if s.UserAgent == "" { 136 return googleapi.UserAgent 137 } 138 return googleapi.UserAgent + " " + s.UserAgent 139} 140 141func NewEnterprisesService(s *Service) *EnterprisesService { 142 rs := &EnterprisesService{s: s} 143 rs.Applications = NewEnterprisesApplicationsService(s) 144 rs.Devices = NewEnterprisesDevicesService(s) 145 rs.EnrollmentTokens = NewEnterprisesEnrollmentTokensService(s) 146 rs.Policies = NewEnterprisesPoliciesService(s) 147 rs.WebApps = NewEnterprisesWebAppsService(s) 148 rs.WebTokens = NewEnterprisesWebTokensService(s) 149 return rs 150} 151 152type EnterprisesService struct { 153 s *Service 154 155 Applications *EnterprisesApplicationsService 156 157 Devices *EnterprisesDevicesService 158 159 EnrollmentTokens *EnterprisesEnrollmentTokensService 160 161 Policies *EnterprisesPoliciesService 162 163 WebApps *EnterprisesWebAppsService 164 165 WebTokens *EnterprisesWebTokensService 166} 167 168func NewEnterprisesApplicationsService(s *Service) *EnterprisesApplicationsService { 169 rs := &EnterprisesApplicationsService{s: s} 170 return rs 171} 172 173type EnterprisesApplicationsService struct { 174 s *Service 175} 176 177func NewEnterprisesDevicesService(s *Service) *EnterprisesDevicesService { 178 rs := &EnterprisesDevicesService{s: s} 179 rs.Operations = NewEnterprisesDevicesOperationsService(s) 180 return rs 181} 182 183type EnterprisesDevicesService struct { 184 s *Service 185 186 Operations *EnterprisesDevicesOperationsService 187} 188 189func NewEnterprisesDevicesOperationsService(s *Service) *EnterprisesDevicesOperationsService { 190 rs := &EnterprisesDevicesOperationsService{s: s} 191 return rs 192} 193 194type EnterprisesDevicesOperationsService struct { 195 s *Service 196} 197 198func NewEnterprisesEnrollmentTokensService(s *Service) *EnterprisesEnrollmentTokensService { 199 rs := &EnterprisesEnrollmentTokensService{s: s} 200 return rs 201} 202 203type EnterprisesEnrollmentTokensService struct { 204 s *Service 205} 206 207func NewEnterprisesPoliciesService(s *Service) *EnterprisesPoliciesService { 208 rs := &EnterprisesPoliciesService{s: s} 209 return rs 210} 211 212type EnterprisesPoliciesService struct { 213 s *Service 214} 215 216func NewEnterprisesWebAppsService(s *Service) *EnterprisesWebAppsService { 217 rs := &EnterprisesWebAppsService{s: s} 218 return rs 219} 220 221type EnterprisesWebAppsService struct { 222 s *Service 223} 224 225func NewEnterprisesWebTokensService(s *Service) *EnterprisesWebTokensService { 226 rs := &EnterprisesWebTokensService{s: s} 227 return rs 228} 229 230type EnterprisesWebTokensService struct { 231 s *Service 232} 233 234func NewSignupUrlsService(s *Service) *SignupUrlsService { 235 rs := &SignupUrlsService{s: s} 236 return rs 237} 238 239type SignupUrlsService struct { 240 s *Service 241} 242 243// AdvancedSecurityOverrides: Security policies set to the most secure 244// values by default. To maintain the security posture of a device, we 245// don't recommend overriding any of the default values. 246type AdvancedSecurityOverrides struct { 247 // CommonCriteriaMode: Controls Common Criteria Mode—security 248 // standards defined in the Common Criteria for Information Technology 249 // Security Evaluation (https://www.commoncriteriaportal.org/) (CC). 250 // Enabling Common Criteria Mode increases certain security components 251 // on a device, including AES-GCM encryption of Bluetooth Long Term 252 // Keys, and Wi-Fi configuration stores.Warning: Common Criteria Mode 253 // enforces a strict security model typically only required for IT 254 // products used in national security systems and other highly sensitive 255 // organizations. Standard device use may be affected. Only enabled if 256 // required. 257 // 258 // Possible values: 259 // "COMMON_CRITERIA_MODE_UNSPECIFIED" - Unspecified. Defaults to 260 // COMMON_CRITERIA_MODE_DISABLED. 261 // "COMMON_CRITERIA_MODE_DISABLED" - Default. Disables Common Criteria 262 // Mode. 263 // "COMMON_CRITERIA_MODE_ENABLED" - Enables Common Criteria Mode. 264 CommonCriteriaMode string `json:"commonCriteriaMode,omitempty"` 265 266 // DeveloperSettings: Controls access to developer settings: developer 267 // options and safe boot. Replaces safeBootDisabled (deprecated) and 268 // debuggingFeaturesAllowed (deprecated). 269 // 270 // Possible values: 271 // "DEVELOPER_SETTINGS_UNSPECIFIED" - Unspecified. Defaults to 272 // DEVELOPER_SETTINGS_DISABLED. 273 // "DEVELOPER_SETTINGS_DISABLED" - Default. Disables all developer 274 // settings and prevents the user from accessing them. 275 // "DEVELOPER_SETTINGS_ALLOWED" - Allows all developer settings. The 276 // user can access and optionally configure the settings. 277 DeveloperSettings string `json:"developerSettings,omitempty"` 278 279 // GooglePlayProtectVerifyApps: Whether Google Play Protect verification 280 // (https://support.google.com/accounts/answer/2812853) is enforced. 281 // Replaces ensureVerifyAppsEnabled (deprecated). 282 // 283 // Possible values: 284 // "GOOGLE_PLAY_PROTECT_VERIFY_APPS_UNSPECIFIED" - Unspecified. 285 // Defaults to VERIFY_APPS_ENFORCED. 286 // "VERIFY_APPS_ENFORCED" - Default. Force-enables app verification. 287 // "VERIFY_APPS_USER_CHOICE" - Allows the user to choose whether to 288 // enable app verification. 289 GooglePlayProtectVerifyApps string `json:"googlePlayProtectVerifyApps,omitempty"` 290 291 // UntrustedAppsPolicy: The policy for untrusted apps (apps from unknown 292 // sources) enforced on the device. Replaces 293 // install_unknown_sources_allowed (deprecated). 294 // 295 // Possible values: 296 // "UNTRUSTED_APPS_POLICY_UNSPECIFIED" - Unspecified. Defaults to 297 // DISALLOW_INSTALL. 298 // "DISALLOW_INSTALL" - Default. Disallow untrusted app installs on 299 // entire device. 300 // "ALLOW_INSTALL_IN_PERSONAL_PROFILE_ONLY" - For devices with work 301 // profiles, allow untrusted app installs in the device's personal 302 // profile only. 303 // "ALLOW_INSTALL_DEVICE_WIDE" - Allow untrusted app installs on 304 // entire device. 305 UntrustedAppsPolicy string `json:"untrustedAppsPolicy,omitempty"` 306 307 // ForceSendFields is a list of field names (e.g. "CommonCriteriaMode") 308 // to unconditionally include in API requests. By default, fields with 309 // empty or default values are omitted from API requests. However, any 310 // non-pointer, non-interface field appearing in ForceSendFields will be 311 // sent to the server regardless of whether the field is empty or not. 312 // This may be used to include empty fields in Patch requests. 313 ForceSendFields []string `json:"-"` 314 315 // NullFields is a list of field names (e.g. "CommonCriteriaMode") to 316 // include in API requests with the JSON null value. By default, fields 317 // with empty values are omitted from API requests. However, any field 318 // with an empty value appearing in NullFields will be sent to the 319 // server as null. It is an error if a field in this list has a 320 // non-empty value. This may be used to include null fields in Patch 321 // requests. 322 NullFields []string `json:"-"` 323} 324 325func (s *AdvancedSecurityOverrides) MarshalJSON() ([]byte, error) { 326 type NoMethod AdvancedSecurityOverrides 327 raw := NoMethod(*s) 328 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 329} 330 331// AlwaysOnVpnPackage: Configuration for an always-on VPN connection. 332type AlwaysOnVpnPackage struct { 333 // LockdownEnabled: Disallows networking when the VPN is not connected. 334 LockdownEnabled bool `json:"lockdownEnabled,omitempty"` 335 336 // PackageName: The package name of the VPN app. 337 PackageName string `json:"packageName,omitempty"` 338 339 // ForceSendFields is a list of field names (e.g. "LockdownEnabled") to 340 // unconditionally include in API requests. By default, fields with 341 // empty or default values are omitted from API requests. However, any 342 // non-pointer, non-interface field appearing in ForceSendFields will be 343 // sent to the server regardless of whether the field is empty or not. 344 // This may be used to include empty fields in Patch requests. 345 ForceSendFields []string `json:"-"` 346 347 // NullFields is a list of field names (e.g. "LockdownEnabled") to 348 // include in API requests with the JSON null value. By default, fields 349 // with empty values are omitted from API requests. However, any field 350 // with an empty value appearing in NullFields will be sent to the 351 // server as null. It is an error if a field in this list has a 352 // non-empty value. This may be used to include null fields in Patch 353 // requests. 354 NullFields []string `json:"-"` 355} 356 357func (s *AlwaysOnVpnPackage) MarshalJSON() ([]byte, error) { 358 type NoMethod AlwaysOnVpnPackage 359 raw := NoMethod(*s) 360 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 361} 362 363// ApiLevelCondition: A compliance rule condition which is satisfied if 364// the Android Framework API level on the device doesn't meet a minimum 365// requirement. There can only be one rule with this type of condition 366// per policy. 367type ApiLevelCondition struct { 368 // MinApiLevel: The minimum desired Android Framework API level. If the 369 // device doesn't meet the minimum requirement, this condition is 370 // satisfied. Must be greater than zero. 371 MinApiLevel int64 `json:"minApiLevel,omitempty"` 372 373 // ForceSendFields is a list of field names (e.g. "MinApiLevel") to 374 // unconditionally include in API requests. By default, fields with 375 // empty or default values are omitted from API requests. However, any 376 // non-pointer, non-interface field appearing in ForceSendFields will be 377 // sent to the server regardless of whether the field is empty or not. 378 // This may be used to include empty fields in Patch requests. 379 ForceSendFields []string `json:"-"` 380 381 // NullFields is a list of field names (e.g. "MinApiLevel") to include 382 // in API requests with the JSON null value. By default, fields with 383 // empty values are omitted from API requests. However, any field with 384 // an empty value appearing in NullFields will be sent to the server as 385 // null. It is an error if a field in this list has a non-empty value. 386 // This may be used to include null fields in Patch requests. 387 NullFields []string `json:"-"` 388} 389 390func (s *ApiLevelCondition) MarshalJSON() ([]byte, error) { 391 type NoMethod ApiLevelCondition 392 raw := NoMethod(*s) 393 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 394} 395 396// AppTrackInfo: Id to name association of a app track. 397type AppTrackInfo struct { 398 // TrackAlias: The track name associated with the trackId, set in the 399 // Play Console. The name is modifiable from Play Console. 400 TrackAlias string `json:"trackAlias,omitempty"` 401 402 // TrackId: The unmodifiable unique track identifier, taken from the 403 // releaseTrackId in the URL of the Play Console page that displays the 404 // app’s track information. 405 TrackId string `json:"trackId,omitempty"` 406 407 // ForceSendFields is a list of field names (e.g. "TrackAlias") to 408 // unconditionally include in API requests. By default, fields with 409 // empty or default values are omitted from API requests. However, any 410 // non-pointer, non-interface field appearing in ForceSendFields will be 411 // sent to the server regardless of whether the field is empty or not. 412 // This may be used to include empty fields in Patch requests. 413 ForceSendFields []string `json:"-"` 414 415 // NullFields is a list of field names (e.g. "TrackAlias") to include in 416 // API requests with the JSON null value. By default, fields with empty 417 // values are omitted from API requests. However, any field with an 418 // empty value appearing in NullFields will be sent to the server as 419 // null. It is an error if a field in this list has a non-empty value. 420 // This may be used to include null fields in Patch requests. 421 NullFields []string `json:"-"` 422} 423 424func (s *AppTrackInfo) MarshalJSON() ([]byte, error) { 425 type NoMethod AppTrackInfo 426 raw := NoMethod(*s) 427 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 428} 429 430// Application: Information about an app. 431type Application struct { 432 // AppTracks: Application tracks visible to the enterprise. 433 AppTracks []*AppTrackInfo `json:"appTracks,omitempty"` 434 435 // ManagedProperties: The set of managed properties available to be 436 // pre-configured for the app. 437 ManagedProperties []*ManagedProperty `json:"managedProperties,omitempty"` 438 439 // Name: The name of the app in the form 440 // enterprises/{enterpriseId}/applications/{package_name}. 441 Name string `json:"name,omitempty"` 442 443 // Permissions: The permissions required by the app. 444 Permissions []*ApplicationPermission `json:"permissions,omitempty"` 445 446 // Title: The title of the app. Localized. 447 Title string `json:"title,omitempty"` 448 449 // ServerResponse contains the HTTP response code and headers from the 450 // server. 451 googleapi.ServerResponse `json:"-"` 452 453 // ForceSendFields is a list of field names (e.g. "AppTracks") to 454 // unconditionally include in API requests. By default, fields with 455 // empty or default values are omitted from API requests. However, any 456 // non-pointer, non-interface field appearing in ForceSendFields will be 457 // sent to the server regardless of whether the field is empty or not. 458 // This may be used to include empty fields in Patch requests. 459 ForceSendFields []string `json:"-"` 460 461 // NullFields is a list of field names (e.g. "AppTracks") to include in 462 // API requests with the JSON null value. By default, fields with empty 463 // values are omitted from API requests. However, any field with an 464 // empty value appearing in NullFields will be sent to the server as 465 // null. It is an error if a field in this list has a non-empty value. 466 // This may be used to include null fields in Patch requests. 467 NullFields []string `json:"-"` 468} 469 470func (s *Application) MarshalJSON() ([]byte, error) { 471 type NoMethod Application 472 raw := NoMethod(*s) 473 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 474} 475 476// ApplicationEvent: An app-related event. 477type ApplicationEvent struct { 478 // CreateTime: The creation time of the event. 479 CreateTime string `json:"createTime,omitempty"` 480 481 // EventType: App event type. 482 // 483 // Possible values: 484 // "APPLICATION_EVENT_TYPE_UNSPECIFIED" - This value is disallowed. 485 // "INSTALLED" - The app was installed. 486 // "CHANGED" - The app was changed, for example, a component was 487 // enabled or disabled. 488 // "DATA_CLEARED" - The app data was cleared. 489 // "REMOVED" - The app was removed. 490 // "REPLACED" - A new version of the app has been installed, replacing 491 // the old version. 492 // "RESTARTED" - The app was restarted. 493 // "PINNED" - The app was pinned to the foreground. 494 // "UNPINNED" - The app was unpinned. 495 EventType string `json:"eventType,omitempty"` 496 497 // ForceSendFields is a list of field names (e.g. "CreateTime") to 498 // unconditionally include in API requests. By default, fields with 499 // empty or default values are omitted from API requests. However, any 500 // non-pointer, non-interface field appearing in ForceSendFields will be 501 // sent to the server regardless of whether the field is empty or not. 502 // This may be used to include empty fields in Patch requests. 503 ForceSendFields []string `json:"-"` 504 505 // NullFields is a list of field names (e.g. "CreateTime") to include in 506 // API requests with the JSON null value. By default, fields with empty 507 // values are omitted from API requests. However, any field with an 508 // empty value appearing in NullFields will be sent to the server as 509 // null. It is an error if a field in this list has a non-empty value. 510 // This may be used to include null fields in Patch requests. 511 NullFields []string `json:"-"` 512} 513 514func (s *ApplicationEvent) MarshalJSON() ([]byte, error) { 515 type NoMethod ApplicationEvent 516 raw := NoMethod(*s) 517 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 518} 519 520// ApplicationPermission: A permission required by the app. 521type ApplicationPermission struct { 522 // Description: A longer description of the permission, providing more 523 // detail on what it affects. Localized. 524 Description string `json:"description,omitempty"` 525 526 // Name: The name of the permission. Localized. 527 Name string `json:"name,omitempty"` 528 529 // PermissionId: An opaque string uniquely identifying the permission. 530 // Not localized. 531 PermissionId string `json:"permissionId,omitempty"` 532 533 // ForceSendFields is a list of field names (e.g. "Description") to 534 // unconditionally include in API requests. By default, fields with 535 // empty or default values are omitted from API requests. However, any 536 // non-pointer, non-interface field appearing in ForceSendFields will be 537 // sent to the server regardless of whether the field is empty or not. 538 // This may be used to include empty fields in Patch requests. 539 ForceSendFields []string `json:"-"` 540 541 // NullFields is a list of field names (e.g. "Description") to include 542 // in API requests with the JSON null value. By default, fields with 543 // empty values are omitted from API requests. However, any field with 544 // an empty value appearing in NullFields will be sent to the server as 545 // null. It is an error if a field in this list has a non-empty value. 546 // This may be used to include null fields in Patch requests. 547 NullFields []string `json:"-"` 548} 549 550func (s *ApplicationPermission) MarshalJSON() ([]byte, error) { 551 type NoMethod ApplicationPermission 552 raw := NoMethod(*s) 553 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 554} 555 556// ApplicationPolicy: Policy for an individual app. 557type ApplicationPolicy struct { 558 // AccessibleTrackIds: List of the app’s track IDs that a device 559 // belonging to the enterprise can access. If the list contains multiple 560 // track IDs, devices receive the latest version among all accessible 561 // tracks. If the list contains no track IDs, devices only have access 562 // to the app’s production track. More details about each track are 563 // available in AppTrackInfo. 564 AccessibleTrackIds []string `json:"accessibleTrackIds,omitempty"` 565 566 // AutoUpdateMode: Controls the auto-update mode for the app. 567 // 568 // Possible values: 569 // "AUTO_UPDATE_MODE_UNSPECIFIED" - Unspecified. Defaults to 570 // AUTO_UPDATE_DEFAULT. 571 // "AUTO_UPDATE_DEFAULT" - The app is automatically updated with low 572 // priority to minimize the impact on the user.The app is updated when 573 // all of the following constraints are met: The device is not actively 574 // used. The device is connected to an unmetered network. The device is 575 // charging.The device is notified about a new update within 24 hours 576 // after it is published by the developer, after which the app is 577 // updated the next time the constraints above are met. 578 // "AUTO_UPDATE_POSTPONED" - The app is not automatically updated for 579 // a maximum of 90 days after the app becomes out of date.90 days after 580 // the app becomes out of date, the latest available version is 581 // installed automatically with low priority (see AUTO_UPDATE_DEFAULT). 582 // After the app is updated it is not automatically updated again until 583 // 90 days after it becomes out of date again.The user can still 584 // manually update the app from the Play Store at any time. 585 // "AUTO_UPDATE_HIGH_PRIORITY" - The app is updated as soon as 586 // possible. No constraints are applied.The device is notified 587 // immediately about a new update after it becomes available. 588 AutoUpdateMode string `json:"autoUpdateMode,omitempty"` 589 590 // ConnectedWorkAndPersonalApp: Controls whether the app can communicate 591 // with itself across a device’s work and personal profiles, subject 592 // to user consent. 593 // 594 // Possible values: 595 // "CONNECTED_WORK_AND_PERSONAL_APP_UNSPECIFIED" - Unspecified. 596 // Defaults to CONNECTED_WORK_AND_PERSONAL_APPS_DISALLOWED. 597 // "CONNECTED_WORK_AND_PERSONAL_APP_DISALLOWED" - Default. Prevents 598 // the app from communicating cross-profile. 599 // "CONNECTED_WORK_AND_PERSONAL_APP_ALLOWED" - Allows the app to 600 // communicate across profiles after receiving user consent. 601 ConnectedWorkAndPersonalApp string `json:"connectedWorkAndPersonalApp,omitempty"` 602 603 // DefaultPermissionPolicy: The default policy for all permissions 604 // requested by the app. If specified, this overrides the policy-level 605 // default_permission_policy which applies to all apps. It does not 606 // override the permission_grants which applies to all apps. 607 // 608 // Possible values: 609 // "PERMISSION_POLICY_UNSPECIFIED" - Policy not specified. If no 610 // policy is specified for a permission at any level, then the PROMPT 611 // behavior is used by default. 612 // "PROMPT" - Prompt the user to grant a permission. 613 // "GRANT" - Automatically grant a permission. 614 // "DENY" - Automatically deny a permission. 615 DefaultPermissionPolicy string `json:"defaultPermissionPolicy,omitempty"` 616 617 // DelegatedScopes: The scopes delegated to the app from Android Device 618 // Policy. 619 // 620 // Possible values: 621 // "DELEGATED_SCOPE_UNSPECIFIED" - No delegation scope specified. 622 // "CERT_INSTALL" - Grants access to certificate installation and 623 // management. 624 // "MANAGED_CONFIGURATIONS" - Grants access to managed configurations 625 // management. 626 // "BLOCK_UNINSTALL" - Grants access to blocking uninstallation. 627 // "PERMISSION_GRANT" - Grants access to permission policy and 628 // permission grant state. 629 // "PACKAGE_ACCESS" - Grants access to package access state. 630 // "ENABLE_SYSTEM_APP" - Grants access for enabling system apps. 631 DelegatedScopes []string `json:"delegatedScopes,omitempty"` 632 633 // Disabled: Whether the app is disabled. When disabled, the app data is 634 // still preserved. 635 Disabled bool `json:"disabled,omitempty"` 636 637 // InstallType: The type of installation to perform. 638 // 639 // Possible values: 640 // "INSTALL_TYPE_UNSPECIFIED" - Unspecified. Defaults to AVAILABLE. 641 // "PREINSTALLED" - The app is automatically installed and can be 642 // removed by the user. 643 // "FORCE_INSTALLED" - The app is automatically installed and can't be 644 // removed by the user. 645 // "BLOCKED" - The app is blocked and can't be installed. If the app 646 // was installed under a previous policy, it will be uninstalled. 647 // "AVAILABLE" - The app is available to install. 648 // "REQUIRED_FOR_SETUP" - The app is automatically installed and can't 649 // be removed by the user and will prevent setup from completion until 650 // installation is complete. 651 // "KIOSK" - The app is automatically installed in kiosk mode: it's 652 // set as the preferred home intent and whitelisted for lock task mode. 653 // Device setup won't complete until the app is installed. After 654 // installation, users won't be able to remove the app. You can only set 655 // this installType for one app per policy. When this is present in the 656 // policy, status bar will be automatically disabled. 657 InstallType string `json:"installType,omitempty"` 658 659 // LockTaskAllowed: Whether the app is allowed to lock itself in 660 // full-screen mode. DEPRECATED. Use InstallType KIOSK or 661 // kioskCustomLauncherEnabled to to configure a dedicated device. 662 LockTaskAllowed bool `json:"lockTaskAllowed,omitempty"` 663 664 // ManagedConfiguration: Managed configuration applied to the app. The 665 // format for the configuration is dictated by the ManagedProperty 666 // values supported by the app. Each field name in the managed 667 // configuration must match the key field of the ManagedProperty. The 668 // field value must be compatible with the type of the ManagedProperty: 669 // *type* *JSON value* BOOL true or false STRING string INTEGER number 670 // CHOICE string MULTISELECT array of strings HIDDEN string BUNDLE_ARRAY 671 // array of objects 672 ManagedConfiguration googleapi.RawMessage `json:"managedConfiguration,omitempty"` 673 674 // ManagedConfigurationTemplate: The managed configurations template for 675 // the app, saved from the managed configurations iframe. This field is 676 // ignored if managed_configuration is set. 677 ManagedConfigurationTemplate *ManagedConfigurationTemplate `json:"managedConfigurationTemplate,omitempty"` 678 679 // MinimumVersionCode: The minimum version of the app that runs on the 680 // device. If set, the device attempts to update the app to at least 681 // this version code. If the app is not up-to-date, the device will 682 // contain a NonComplianceDetail with non_compliance_reason set to 683 // APP_NOT_UPDATED. The app must already be published to Google Play 684 // with a version code greater than or equal to this value. At most 20 685 // apps may specify a minimum version code per policy. 686 MinimumVersionCode int64 `json:"minimumVersionCode,omitempty"` 687 688 // PackageName: The package name of the app. For example, 689 // com.google.android.youtube for the YouTube app. 690 PackageName string `json:"packageName,omitempty"` 691 692 // PermissionGrants: Explicit permission grants or denials for the app. 693 // These values override the default_permission_policy and 694 // permission_grants which apply to all apps. 695 PermissionGrants []*PermissionGrant `json:"permissionGrants,omitempty"` 696 697 // ForceSendFields is a list of field names (e.g. "AccessibleTrackIds") 698 // to unconditionally include in API requests. By default, fields with 699 // empty or default values are omitted from API requests. However, any 700 // non-pointer, non-interface field appearing in ForceSendFields will be 701 // sent to the server regardless of whether the field is empty or not. 702 // This may be used to include empty fields in Patch requests. 703 ForceSendFields []string `json:"-"` 704 705 // NullFields is a list of field names (e.g. "AccessibleTrackIds") to 706 // include in API requests with the JSON null value. By default, fields 707 // with empty values are omitted from API requests. However, any field 708 // with an empty value appearing in NullFields will be sent to the 709 // server as null. It is an error if a field in this list has a 710 // non-empty value. This may be used to include null fields in Patch 711 // requests. 712 NullFields []string `json:"-"` 713} 714 715func (s *ApplicationPolicy) MarshalJSON() ([]byte, error) { 716 type NoMethod ApplicationPolicy 717 raw := NoMethod(*s) 718 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 719} 720 721// ApplicationReport: Information reported about an installed app. 722type ApplicationReport struct { 723 // ApplicationSource: The source of the package. 724 // 725 // Possible values: 726 // "APPLICATION_SOURCE_UNSPECIFIED" - The app was sideloaded from an 727 // unspecified source. 728 // "SYSTEM_APP_FACTORY_VERSION" - This is a system app from the 729 // device's factory image. 730 // "SYSTEM_APP_UPDATED_VERSION" - This is an updated system app. 731 // "INSTALLED_FROM_PLAY_STORE" - The app was installed from the Google 732 // Play Store. 733 ApplicationSource string `json:"applicationSource,omitempty"` 734 735 // DisplayName: The display name of the app. 736 DisplayName string `json:"displayName,omitempty"` 737 738 // Events: List of app events. The most recent 20 events are stored in 739 // the list. 740 Events []*ApplicationEvent `json:"events,omitempty"` 741 742 // InstallerPackageName: The package name of the app that installed this 743 // app. 744 InstallerPackageName string `json:"installerPackageName,omitempty"` 745 746 // KeyedAppStates: List of keyed app states reported by the app. 747 KeyedAppStates []*KeyedAppState `json:"keyedAppStates,omitempty"` 748 749 // PackageName: Package name of the app. 750 PackageName string `json:"packageName,omitempty"` 751 752 // PackageSha256Hash: The SHA-256 hash of the app's APK file, which can 753 // be used to verify the app hasn't been modified. Each byte of the hash 754 // value is represented as a two-digit hexadecimal number. 755 PackageSha256Hash string `json:"packageSha256Hash,omitempty"` 756 757 // SigningKeyCertFingerprints: The SHA-1 hash of each 758 // android.content.pm.Signature 759 // (https://developer.android.com/reference/android/content/pm/Signature.html) 760 // associated with the app package. Each byte of each hash value is 761 // represented as a two-digit hexadecimal number. 762 SigningKeyCertFingerprints []string `json:"signingKeyCertFingerprints,omitempty"` 763 764 // State: Application state. 765 // 766 // Possible values: 767 // "APPLICATION_STATE_UNSPECIFIED" - App state is unspecified 768 // "REMOVED" - App was removed from the device 769 // "INSTALLED" - App is installed on the device 770 State string `json:"state,omitempty"` 771 772 // VersionCode: The app version code, which can be used to determine 773 // whether one version is more recent than another. 774 VersionCode int64 `json:"versionCode,omitempty"` 775 776 // VersionName: The app version as displayed to the user. 777 VersionName string `json:"versionName,omitempty"` 778 779 // ForceSendFields is a list of field names (e.g. "ApplicationSource") 780 // to unconditionally include in API requests. By default, fields with 781 // empty or default values are omitted from API requests. However, any 782 // non-pointer, non-interface field appearing in ForceSendFields will be 783 // sent to the server regardless of whether the field is empty or not. 784 // This may be used to include empty fields in Patch requests. 785 ForceSendFields []string `json:"-"` 786 787 // NullFields is a list of field names (e.g. "ApplicationSource") to 788 // include in API requests with the JSON null value. By default, fields 789 // with empty values are omitted from API requests. However, any field 790 // with an empty value appearing in NullFields will be sent to the 791 // server as null. It is an error if a field in this list has a 792 // non-empty value. This may be used to include null fields in Patch 793 // requests. 794 NullFields []string `json:"-"` 795} 796 797func (s *ApplicationReport) MarshalJSON() ([]byte, error) { 798 type NoMethod ApplicationReport 799 raw := NoMethod(*s) 800 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 801} 802 803// ApplicationReportingSettings: Settings controlling the behavior of 804// application reports. 805type ApplicationReportingSettings struct { 806 // IncludeRemovedApps: Whether removed apps are included in application 807 // reports. 808 IncludeRemovedApps bool `json:"includeRemovedApps,omitempty"` 809 810 // ForceSendFields is a list of field names (e.g. "IncludeRemovedApps") 811 // to unconditionally include in API requests. By default, fields with 812 // empty or default values are omitted from API requests. However, any 813 // non-pointer, non-interface field appearing in ForceSendFields will be 814 // sent to the server regardless of whether the field is empty or not. 815 // This may be used to include empty fields in Patch requests. 816 ForceSendFields []string `json:"-"` 817 818 // NullFields is a list of field names (e.g. "IncludeRemovedApps") to 819 // include in API requests with the JSON null value. By default, fields 820 // with empty values are omitted from API requests. However, any field 821 // with an empty value appearing in NullFields will be sent to the 822 // server as null. It is an error if a field in this list has a 823 // non-empty value. This may be used to include null fields in Patch 824 // requests. 825 NullFields []string `json:"-"` 826} 827 828func (s *ApplicationReportingSettings) MarshalJSON() ([]byte, error) { 829 type NoMethod ApplicationReportingSettings 830 raw := NoMethod(*s) 831 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 832} 833 834// BlockAction: An action to block access to apps and data on a fully 835// managed device or in a work profile. This action also triggers a 836// device or work profile to displays a user-facing notification with 837// information (where possible) on how to correct the compliance issue. 838// Note: wipeAction must also be specified. 839type BlockAction struct { 840 // BlockAfterDays: Number of days the policy is non-compliant before the 841 // device or work profile is blocked. To block access immediately, set 842 // to 0. blockAfterDays must be less than wipeAfterDays. 843 BlockAfterDays int64 `json:"blockAfterDays,omitempty"` 844 845 // BlockScope: Specifies the scope of this BlockAction. Only applicable 846 // to devices that are company-owned. 847 // 848 // Possible values: 849 // "BLOCK_SCOPE_UNSPECIFIED" - Unspecified. Defaults to 850 // BLOCK_SCOPE_WORK_PROFILE. 851 // "BLOCK_SCOPE_WORK_PROFILE" - Block action is only applied to apps 852 // in the work profile. Apps in the personal profile are unaffected. 853 // "BLOCK_SCOPE_DEVICE" - Block action is applied to the entire 854 // device, including apps in the personal profile. 855 BlockScope string `json:"blockScope,omitempty"` 856 857 // ForceSendFields is a list of field names (e.g. "BlockAfterDays") to 858 // unconditionally include in API requests. By default, fields with 859 // empty or default values are omitted from API requests. However, any 860 // non-pointer, non-interface field appearing in ForceSendFields will be 861 // sent to the server regardless of whether the field is empty or not. 862 // This may be used to include empty fields in Patch requests. 863 ForceSendFields []string `json:"-"` 864 865 // NullFields is a list of field names (e.g. "BlockAfterDays") to 866 // include in API requests with the JSON null value. By default, fields 867 // with empty values are omitted from API requests. However, any field 868 // with an empty value appearing in NullFields will be sent to the 869 // server as null. It is an error if a field in this list has a 870 // non-empty value. This may be used to include null fields in Patch 871 // requests. 872 NullFields []string `json:"-"` 873} 874 875func (s *BlockAction) MarshalJSON() ([]byte, error) { 876 type NoMethod BlockAction 877 raw := NoMethod(*s) 878 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 879} 880 881// ChoosePrivateKeyRule: Controls apps' access to private keys. The rule 882// determines which private key, if any, Android Device Policy grants to 883// the specified app. Access is granted either when the app calls 884// KeyChain.choosePrivateKeyAlias 885// (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) 886// (or any overloads) to request a private key alias for a given URL, or 887// for rules that are not URL-specific (that is, if urlPattern is not 888// set, or set to the empty string or .*) on Android 11 and above, 889// directly so that the app can call KeyChain.getPrivateKey 890// (https://developer.android.com/reference/android/security/KeyChain#getPrivateKey%28android.content.Context,%20java.lang.String%29), 891// without first having to call KeyChain.choosePrivateKeyAlias.When an 892// app calls KeyChain.choosePrivateKeyAlias if more than one 893// choosePrivateKeyRules matches, the last matching rule defines which 894// key alias to return. 895type ChoosePrivateKeyRule struct { 896 // PackageNames: The package names to which this rule applies. The hash 897 // of the signing certificate for each app is verified against the hash 898 // provided by Play. If no package names are specified, then the alias 899 // is provided to all apps that call KeyChain.choosePrivateKeyAlias 900 // (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) 901 // or any overloads (but not without calling 902 // KeyChain.choosePrivateKeyAlias, even on Android 11 and above). Any 903 // app with the same Android UID as a package specified here will have 904 // access when they call KeyChain.choosePrivateKeyAlias. 905 PackageNames []string `json:"packageNames,omitempty"` 906 907 // PrivateKeyAlias: The alias of the private key to be used. 908 PrivateKeyAlias string `json:"privateKeyAlias,omitempty"` 909 910 // UrlPattern: The URL pattern to match against the URL of the request. 911 // If not set or empty, it matches all URLs. This uses the regular 912 // expression syntax of java.util.regex.Pattern. 913 UrlPattern string `json:"urlPattern,omitempty"` 914 915 // ForceSendFields is a list of field names (e.g. "PackageNames") to 916 // unconditionally include in API requests. By default, fields with 917 // empty or default values are omitted from API requests. However, any 918 // non-pointer, non-interface field appearing in ForceSendFields will be 919 // sent to the server regardless of whether the field is empty or not. 920 // This may be used to include empty fields in Patch requests. 921 ForceSendFields []string `json:"-"` 922 923 // NullFields is a list of field names (e.g. "PackageNames") to include 924 // in API requests with the JSON null value. By default, fields with 925 // empty values are omitted from API requests. However, any field with 926 // an empty value appearing in NullFields will be sent to the server as 927 // null. It is an error if a field in this list has a non-empty value. 928 // This may be used to include null fields in Patch requests. 929 NullFields []string `json:"-"` 930} 931 932func (s *ChoosePrivateKeyRule) MarshalJSON() ([]byte, error) { 933 type NoMethod ChoosePrivateKeyRule 934 raw := NoMethod(*s) 935 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 936} 937 938// Command: A command. 939type Command struct { 940 // CreateTime: The timestamp at which the command was created. The 941 // timestamp is automatically generated by the server. 942 CreateTime string `json:"createTime,omitempty"` 943 944 // Duration: The duration for which the command is valid. The command 945 // will expire if not executed by the device during this time. The 946 // default duration if unspecified is ten minutes. There is no maximum 947 // duration. 948 Duration string `json:"duration,omitempty"` 949 950 // ErrorCode: If the command failed, an error code explaining the 951 // failure. This is not set when the command is cancelled by the caller. 952 // 953 // Possible values: 954 // "COMMAND_ERROR_CODE_UNSPECIFIED" - There was no error. 955 // "UNKNOWN" - An unknown error occurred. 956 // "API_LEVEL" - The API level of the device does not support this 957 // command. 958 // "MANAGEMENT_MODE" - The management mode (profile owner, device 959 // owner, etc.) does not support the command. 960 // "INVALID_VALUE" - The command has an invalid parameter value. 961 // "UNSUPPORTED" - The device doesn't support the command. Updating 962 // Android Device Policy to the latest version may resolve the issue. 963 ErrorCode string `json:"errorCode,omitempty"` 964 965 // NewPassword: For commands of type RESET_PASSWORD, optionally 966 // specifies the new password. 967 NewPassword string `json:"newPassword,omitempty"` 968 969 // ResetPasswordFlags: For commands of type RESET_PASSWORD, optionally 970 // specifies flags. 971 // 972 // Possible values: 973 // "RESET_PASSWORD_FLAG_UNSPECIFIED" - This value is ignored. 974 // "REQUIRE_ENTRY" - Don't allow other admins to change the password 975 // again until the user has entered it. 976 // "DO_NOT_ASK_CREDENTIALS_ON_BOOT" - Don't ask for user credentials 977 // on device boot. 978 // "LOCK_NOW" - Lock the device after password reset. 979 ResetPasswordFlags []string `json:"resetPasswordFlags,omitempty"` 980 981 // Type: The type of the command. 982 // 983 // Possible values: 984 // "COMMAND_TYPE_UNSPECIFIED" - This value is disallowed. 985 // "LOCK" - Lock the device, as if the lock screen timeout had 986 // expired. 987 // "RESET_PASSWORD" - Reset the user's password. 988 // "REBOOT" - Reboot the device. Only supported on fully managed 989 // devices running Android 7.0 (API level 24) or higher. 990 // "RELINQUISH_OWNERSHIP" - Removes the work profile and all policies 991 // from a company-owned Android 8.0+ device, relinquishing the device 992 // for personal use. Apps and data associated with the personal 993 // profile(s) are preserved. The device will be deleted from the server 994 // after it acknowledges the command. 995 Type string `json:"type,omitempty"` 996 997 // UserName: The resource name of the user that owns the device in the 998 // form enterprises/{enterpriseId}/users/{userId}. This is automatically 999 // generated by the server based on the device the command is sent to. 1000 UserName string `json:"userName,omitempty"` 1001 1002 // ForceSendFields is a list of field names (e.g. "CreateTime") to 1003 // unconditionally include in API requests. By default, fields with 1004 // empty or default values are omitted from API requests. However, any 1005 // non-pointer, non-interface field appearing in ForceSendFields will be 1006 // sent to the server regardless of whether the field is empty or not. 1007 // This may be used to include empty fields in Patch requests. 1008 ForceSendFields []string `json:"-"` 1009 1010 // NullFields is a list of field names (e.g. "CreateTime") to include in 1011 // API requests with the JSON null value. By default, fields with empty 1012 // values are omitted from API requests. However, any field with an 1013 // empty value appearing in NullFields will be sent to the server as 1014 // null. It is an error if a field in this list has a non-empty value. 1015 // This may be used to include null fields in Patch requests. 1016 NullFields []string `json:"-"` 1017} 1018 1019func (s *Command) MarshalJSON() ([]byte, error) { 1020 type NoMethod Command 1021 raw := NoMethod(*s) 1022 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1023} 1024 1025// CommonCriteriaModeInfo: Information about Common Criteria 1026// Mode—security standards defined in the Common Criteria for 1027// Information Technology Security Evaluation 1028// (https://www.commoncriteriaportal.org/) (CC).This information is only 1029// available if statusReportingSettings.commonCriteriaModeEnabled is 1030// true in the device's policy. 1031type CommonCriteriaModeInfo struct { 1032 // CommonCriteriaModeStatus: Whether Common Criteria Mode is enabled. 1033 // 1034 // Possible values: 1035 // "COMMON_CRITERIA_MODE_STATUS_UNKNOWN" - Unknown status. 1036 // "COMMON_CRITERIA_MODE_DISABLED" - Common Criteria Mode is currently 1037 // disabled. 1038 // "COMMON_CRITERIA_MODE_ENABLED" - Common Criteria Mode is currently 1039 // enabled. 1040 CommonCriteriaModeStatus string `json:"commonCriteriaModeStatus,omitempty"` 1041 1042 // ForceSendFields is a list of field names (e.g. 1043 // "CommonCriteriaModeStatus") to unconditionally include in API 1044 // requests. By default, fields with empty or default values are omitted 1045 // from API requests. However, any non-pointer, non-interface field 1046 // appearing in ForceSendFields will be sent to the server regardless of 1047 // whether the field is empty or not. This may be used to include empty 1048 // fields in Patch requests. 1049 ForceSendFields []string `json:"-"` 1050 1051 // NullFields is a list of field names (e.g. "CommonCriteriaModeStatus") 1052 // to include in API requests with the JSON null value. By default, 1053 // fields with empty values are omitted from API requests. However, any 1054 // field with an empty value appearing in NullFields will be sent to the 1055 // server as null. It is an error if a field in this list has a 1056 // non-empty value. This may be used to include null fields in Patch 1057 // requests. 1058 NullFields []string `json:"-"` 1059} 1060 1061func (s *CommonCriteriaModeInfo) MarshalJSON() ([]byte, error) { 1062 type NoMethod CommonCriteriaModeInfo 1063 raw := NoMethod(*s) 1064 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1065} 1066 1067// ComplianceRule: A rule declaring which mitigating actions to take 1068// when a device is not compliant with its policy. For every rule, there 1069// is always an implicit mitigating action to set policy_compliant to 1070// false for the Device resource, and display a message on the device 1071// indicating that the device is not compliant with its policy. Other 1072// mitigating actions may optionally be taken as well, depending on the 1073// field values in the rule. 1074type ComplianceRule struct { 1075 // ApiLevelCondition: A condition which is satisfied if the Android 1076 // Framework API level on the device doesn't meet a minimum requirement. 1077 ApiLevelCondition *ApiLevelCondition `json:"apiLevelCondition,omitempty"` 1078 1079 // DisableApps: If set to true, the rule includes a mitigating action to 1080 // disable apps so that the device is effectively disabled, but app data 1081 // is preserved. If the device is running an app in locked task mode, 1082 // the app will be closed and a UI showing the reason for non-compliance 1083 // will be displayed. 1084 DisableApps bool `json:"disableApps,omitempty"` 1085 1086 // NonComplianceDetailCondition: A condition which is satisfied if there 1087 // exists any matching NonComplianceDetail for the device. 1088 NonComplianceDetailCondition *NonComplianceDetailCondition `json:"nonComplianceDetailCondition,omitempty"` 1089 1090 // PackageNamesToDisable: If set, the rule includes a mitigating action 1091 // to disable apps specified in the list, but app data is preserved. 1092 PackageNamesToDisable []string `json:"packageNamesToDisable,omitempty"` 1093 1094 // ForceSendFields is a list of field names (e.g. "ApiLevelCondition") 1095 // to unconditionally include in API requests. By default, fields with 1096 // empty or default values are omitted from API requests. However, any 1097 // non-pointer, non-interface field appearing in ForceSendFields will be 1098 // sent to the server regardless of whether the field is empty or not. 1099 // This may be used to include empty fields in Patch requests. 1100 ForceSendFields []string `json:"-"` 1101 1102 // NullFields is a list of field names (e.g. "ApiLevelCondition") to 1103 // include in API requests with the JSON null value. By default, fields 1104 // with empty values are omitted from API requests. However, any field 1105 // with an empty value appearing in NullFields will be sent to the 1106 // server as null. It is an error if a field in this list has a 1107 // non-empty value. This may be used to include null fields in Patch 1108 // requests. 1109 NullFields []string `json:"-"` 1110} 1111 1112func (s *ComplianceRule) MarshalJSON() ([]byte, error) { 1113 type NoMethod ComplianceRule 1114 raw := NoMethod(*s) 1115 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1116} 1117 1118// ContactInfo: Contact details for LaForge enterprises. 1119type ContactInfo struct { 1120 // ContactEmail: Email address for a point of contact, which will be 1121 // used to send important announcements related to managed Google Play. 1122 ContactEmail string `json:"contactEmail,omitempty"` 1123 1124 // DataProtectionOfficerEmail: The email of the data protection officer. 1125 // The email is validated but not verified. 1126 DataProtectionOfficerEmail string `json:"dataProtectionOfficerEmail,omitempty"` 1127 1128 // DataProtectionOfficerName: The name of the data protection officer. 1129 DataProtectionOfficerName string `json:"dataProtectionOfficerName,omitempty"` 1130 1131 // DataProtectionOfficerPhone: The phone number of the data protection 1132 // officer The phone number is validated but not verified. 1133 DataProtectionOfficerPhone string `json:"dataProtectionOfficerPhone,omitempty"` 1134 1135 // EuRepresentativeEmail: The email of the EU representative. The email 1136 // is validated but not verified. 1137 EuRepresentativeEmail string `json:"euRepresentativeEmail,omitempty"` 1138 1139 // EuRepresentativeName: The name of the EU representative. 1140 EuRepresentativeName string `json:"euRepresentativeName,omitempty"` 1141 1142 // EuRepresentativePhone: The phone number of the EU representative. The 1143 // phone number is validated but not verified. 1144 EuRepresentativePhone string `json:"euRepresentativePhone,omitempty"` 1145 1146 // ForceSendFields is a list of field names (e.g. "ContactEmail") to 1147 // unconditionally include in API requests. By default, fields with 1148 // empty or default values are omitted from API requests. However, any 1149 // non-pointer, non-interface field appearing in ForceSendFields will be 1150 // sent to the server regardless of whether the field is empty or not. 1151 // This may be used to include empty fields in Patch requests. 1152 ForceSendFields []string `json:"-"` 1153 1154 // NullFields is a list of field names (e.g. "ContactEmail") to include 1155 // in API requests with the JSON null value. By default, fields with 1156 // empty values are omitted from API requests. However, any field with 1157 // an empty value appearing in NullFields will be sent to the server as 1158 // null. It is an error if a field in this list has a non-empty value. 1159 // This may be used to include null fields in Patch requests. 1160 NullFields []string `json:"-"` 1161} 1162 1163func (s *ContactInfo) MarshalJSON() ([]byte, error) { 1164 type NoMethod ContactInfo 1165 raw := NoMethod(*s) 1166 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1167} 1168 1169// ContentProviderEndpoint: This feature is not generally available. 1170type ContentProviderEndpoint struct { 1171 // PackageName: This feature is not generally available. 1172 PackageName string `json:"packageName,omitempty"` 1173 1174 // SigningCertsSha256: Required. This feature is not generally 1175 // available. 1176 SigningCertsSha256 []string `json:"signingCertsSha256,omitempty"` 1177 1178 // Uri: This feature is not generally available. 1179 Uri string `json:"uri,omitempty"` 1180 1181 // ForceSendFields is a list of field names (e.g. "PackageName") to 1182 // unconditionally include in API requests. By default, fields with 1183 // empty or default values are omitted from API requests. However, any 1184 // non-pointer, non-interface field appearing in ForceSendFields will be 1185 // sent to the server regardless of whether the field is empty or not. 1186 // This may be used to include empty fields in Patch requests. 1187 ForceSendFields []string `json:"-"` 1188 1189 // NullFields is a list of field names (e.g. "PackageName") to include 1190 // in API requests with the JSON null value. By default, fields with 1191 // empty values are omitted from API requests. However, any field with 1192 // an empty value appearing in NullFields will be sent to the server as 1193 // null. It is an error if a field in this list has a non-empty value. 1194 // This may be used to include null fields in Patch requests. 1195 NullFields []string `json:"-"` 1196} 1197 1198func (s *ContentProviderEndpoint) MarshalJSON() ([]byte, error) { 1199 type NoMethod ContentProviderEndpoint 1200 raw := NoMethod(*s) 1201 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1202} 1203 1204// Date: Represents a whole or partial calendar date, such as a 1205// birthday. The time of day and time zone are either specified 1206// elsewhere or are insignificant. The date is relative to the Gregorian 1207// Calendar. This can represent one of the following: A full date, with 1208// non-zero year, month, and day values A month and day value, with a 1209// zero year, such as an anniversary A year on its own, with zero month 1210// and day values A year and month value, with a zero day, such as a 1211// credit card expiration dateRelated types are google.type.TimeOfDay 1212// and google.protobuf.Timestamp. 1213type Date struct { 1214 // Day: Day of a month. Must be from 1 to 31 and valid for the year and 1215 // month, or 0 to specify a year by itself or a year and month where the 1216 // day isn't significant. 1217 Day int64 `json:"day,omitempty"` 1218 1219 // Month: Month of a year. Must be from 1 to 12, or 0 to specify a year 1220 // without a month and day. 1221 Month int64 `json:"month,omitempty"` 1222 1223 // Year: Year of the date. Must be from 1 to 9999, or 0 to specify a 1224 // date without a year. 1225 Year int64 `json:"year,omitempty"` 1226 1227 // ForceSendFields is a list of field names (e.g. "Day") to 1228 // unconditionally include in API requests. By default, fields with 1229 // empty or default values are omitted from API requests. However, any 1230 // non-pointer, non-interface field appearing in ForceSendFields will be 1231 // sent to the server regardless of whether the field is empty or not. 1232 // This may be used to include empty fields in Patch requests. 1233 ForceSendFields []string `json:"-"` 1234 1235 // NullFields is a list of field names (e.g. "Day") to include in API 1236 // requests with the JSON null value. By default, fields with empty 1237 // values are omitted from API requests. However, any field with an 1238 // empty value appearing in NullFields will be sent to the server as 1239 // null. It is an error if a field in this list has a non-empty value. 1240 // This may be used to include null fields in Patch requests. 1241 NullFields []string `json:"-"` 1242} 1243 1244func (s *Date) MarshalJSON() ([]byte, error) { 1245 type NoMethod Date 1246 raw := NoMethod(*s) 1247 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1248} 1249 1250// Device: A device owned by an enterprise. Unless otherwise noted, all 1251// fields are read-only and can't be modified by 1252// enterprises.devices.patch. 1253type Device struct { 1254 // ApiLevel: The API level of the Android platform version running on 1255 // the device. 1256 ApiLevel int64 `json:"apiLevel,omitempty"` 1257 1258 // ApplicationReports: Reports for apps installed on the device. This 1259 // information is only available when application_reports_enabled is 1260 // true in the device's policy. 1261 ApplicationReports []*ApplicationReport `json:"applicationReports,omitempty"` 1262 1263 // AppliedPasswordPolicies: The password requirements currently applied 1264 // to the device. The applied requirements may be slightly different 1265 // from those specified in passwordPolicies in some cases. fieldPath is 1266 // set based on passwordPolicies. 1267 AppliedPasswordPolicies []*PasswordRequirements `json:"appliedPasswordPolicies,omitempty"` 1268 1269 // AppliedPolicyName: The name of the policy currently applied to the 1270 // device. 1271 AppliedPolicyName string `json:"appliedPolicyName,omitempty"` 1272 1273 // AppliedPolicyVersion: The version of the policy currently applied to 1274 // the device. 1275 AppliedPolicyVersion int64 `json:"appliedPolicyVersion,omitempty,string"` 1276 1277 // AppliedState: The state currently applied to the device. 1278 // 1279 // Possible values: 1280 // "DEVICE_STATE_UNSPECIFIED" - This value is disallowed. 1281 // "ACTIVE" - The device is active. 1282 // "DISABLED" - The device is disabled. 1283 // "DELETED" - The device was deleted. This state will never be 1284 // returned by an API call, but is used in the final status report 1285 // published to Cloud Pub/Sub when the device acknowledges the deletion. 1286 // "PROVISIONING" - The device is being provisioned. Newly enrolled 1287 // devices are in this state until they have a policy applied. 1288 AppliedState string `json:"appliedState,omitempty"` 1289 1290 // CommonCriteriaModeInfo: Information about Common Criteria 1291 // Mode—security standards defined in the Common Criteria for 1292 // Information Technology Security Evaluation 1293 // (https://www.commoncriteriaportal.org/) (CC).This information is only 1294 // available if statusReportingSettings.commonCriteriaModeEnabled is 1295 // true in the device's policy. 1296 CommonCriteriaModeInfo *CommonCriteriaModeInfo `json:"commonCriteriaModeInfo,omitempty"` 1297 1298 // DeviceSettings: Device settings information. This information is only 1299 // available if deviceSettingsEnabled is true in the device's policy. 1300 DeviceSettings *DeviceSettings `json:"deviceSettings,omitempty"` 1301 1302 // DisabledReason: If the device state is DISABLED, an optional message 1303 // that is displayed on the device indicating the reason the device is 1304 // disabled. This field can be modified by a patch request. 1305 DisabledReason *UserFacingMessage `json:"disabledReason,omitempty"` 1306 1307 // Displays: Detailed information about displays on the device. This 1308 // information is only available if displayInfoEnabled is true in the 1309 // device's policy. 1310 Displays []*Display `json:"displays,omitempty"` 1311 1312 // EnrollmentTime: The time of device enrollment. 1313 EnrollmentTime string `json:"enrollmentTime,omitempty"` 1314 1315 // EnrollmentTokenData: If the device was enrolled with an enrollment 1316 // token with additional data provided, this field contains that data. 1317 EnrollmentTokenData string `json:"enrollmentTokenData,omitempty"` 1318 1319 // EnrollmentTokenName: If the device was enrolled with an enrollment 1320 // token, this field contains the name of the token. 1321 EnrollmentTokenName string `json:"enrollmentTokenName,omitempty"` 1322 1323 // HardwareInfo: Detailed information about the device hardware. 1324 HardwareInfo *HardwareInfo `json:"hardwareInfo,omitempty"` 1325 1326 // HardwareStatusSamples: Hardware status samples in chronological 1327 // order. This information is only available if hardwareStatusEnabled is 1328 // true in the device's policy. 1329 HardwareStatusSamples []*HardwareStatus `json:"hardwareStatusSamples,omitempty"` 1330 1331 // LastPolicyComplianceReportTime: Deprecated. 1332 LastPolicyComplianceReportTime string `json:"lastPolicyComplianceReportTime,omitempty"` 1333 1334 // LastPolicySyncTime: The last time the device fetched its policy. 1335 LastPolicySyncTime string `json:"lastPolicySyncTime,omitempty"` 1336 1337 // LastStatusReportTime: The last time the device sent a status report. 1338 LastStatusReportTime string `json:"lastStatusReportTime,omitempty"` 1339 1340 // ManagementMode: The type of management mode Android Device Policy 1341 // takes on the device. This influences which policy settings are 1342 // supported. 1343 // 1344 // Possible values: 1345 // "MANAGEMENT_MODE_UNSPECIFIED" - This value is disallowed. 1346 // "DEVICE_OWNER" - Device owner. Android Device Policy has full 1347 // control over the device. 1348 // "PROFILE_OWNER" - Profile owner. Android Device Policy has control 1349 // over a managed profile on the device. 1350 ManagementMode string `json:"managementMode,omitempty"` 1351 1352 // MemoryEvents: Events related to memory and storage measurements in 1353 // chronological order. This information is only available if 1354 // memoryInfoEnabled is true in the device's policy. 1355 MemoryEvents []*MemoryEvent `json:"memoryEvents,omitempty"` 1356 1357 // MemoryInfo: Memory information: contains information about device 1358 // memory and storage. 1359 MemoryInfo *MemoryInfo `json:"memoryInfo,omitempty"` 1360 1361 // Name: The name of the device in the form 1362 // enterprises/{enterpriseId}/devices/{deviceId}. 1363 Name string `json:"name,omitempty"` 1364 1365 // NetworkInfo: Device network information. This information is only 1366 // available if networkInfoEnabled is true in the device's policy. 1367 NetworkInfo *NetworkInfo `json:"networkInfo,omitempty"` 1368 1369 // NonComplianceDetails: Details about policy settings that the device 1370 // is not compliant with. 1371 NonComplianceDetails []*NonComplianceDetail `json:"nonComplianceDetails,omitempty"` 1372 1373 // Ownership: Ownership of the managed device. 1374 // 1375 // Possible values: 1376 // "OWNERSHIP_UNSPECIFIED" - Ownership is unspecified. 1377 // "COMPANY_OWNED" - Device is company-owned. 1378 // "PERSONALLY_OWNED" - Device is personally-owned. 1379 Ownership string `json:"ownership,omitempty"` 1380 1381 // PolicyCompliant: Whether the device is compliant with its policy. 1382 PolicyCompliant bool `json:"policyCompliant,omitempty"` 1383 1384 // PolicyName: The name of the policy applied to the device, in the form 1385 // enterprises/{enterpriseId}/policies/{policyId}. If not specified, the 1386 // policy_name for the device's user is applied. This field can be 1387 // modified by a patch request. You can specify only the policyId when 1388 // calling enterprises.devices.patch, as long as the policyId doesn’t 1389 // contain any slashes. The rest of the policy name is inferred. 1390 PolicyName string `json:"policyName,omitempty"` 1391 1392 // PowerManagementEvents: Power management events on the device in 1393 // chronological order. This information is only available if 1394 // powerManagementEventsEnabled is true in the device's policy. 1395 PowerManagementEvents []*PowerManagementEvent `json:"powerManagementEvents,omitempty"` 1396 1397 // PreviousDeviceNames: If the same physical device has been enrolled 1398 // multiple times, this field contains its previous device names. The 1399 // serial number is used as the unique identifier to determine if the 1400 // same physical device has enrolled previously. The names are in 1401 // chronological order. 1402 PreviousDeviceNames []string `json:"previousDeviceNames,omitempty"` 1403 1404 // SecurityPosture: Device's security posture value that reflects how 1405 // secure the device is. 1406 SecurityPosture *SecurityPosture `json:"securityPosture,omitempty"` 1407 1408 // SoftwareInfo: Detailed information about the device software. This 1409 // information is only available if softwareInfoEnabled is true in the 1410 // device's policy. 1411 SoftwareInfo *SoftwareInfo `json:"softwareInfo,omitempty"` 1412 1413 // State: The state to be applied to the device. This field can be 1414 // modified by a patch request. Note that when calling 1415 // enterprises.devices.patch, ACTIVE and DISABLED are the only allowable 1416 // values. To enter the device into a DELETED state, call 1417 // enterprises.devices.delete. 1418 // 1419 // Possible values: 1420 // "DEVICE_STATE_UNSPECIFIED" - This value is disallowed. 1421 // "ACTIVE" - The device is active. 1422 // "DISABLED" - The device is disabled. 1423 // "DELETED" - The device was deleted. This state will never be 1424 // returned by an API call, but is used in the final status report 1425 // published to Cloud Pub/Sub when the device acknowledges the deletion. 1426 // "PROVISIONING" - The device is being provisioned. Newly enrolled 1427 // devices are in this state until they have a policy applied. 1428 State string `json:"state,omitempty"` 1429 1430 // SystemProperties: Map of selected system properties name and value 1431 // related to the device. This information is only available if 1432 // systemPropertiesEnabled is true in the device's policy. 1433 SystemProperties map[string]string `json:"systemProperties,omitempty"` 1434 1435 // User: The user who owns the device. 1436 User *User `json:"user,omitempty"` 1437 1438 // UserName: The resource name of the user that owns this device in the 1439 // form enterprises/{enterpriseId}/users/{userId}. 1440 UserName string `json:"userName,omitempty"` 1441 1442 // ServerResponse contains the HTTP response code and headers from the 1443 // server. 1444 googleapi.ServerResponse `json:"-"` 1445 1446 // ForceSendFields is a list of field names (e.g. "ApiLevel") to 1447 // unconditionally include in API requests. By default, fields with 1448 // empty or default values are omitted from API requests. However, any 1449 // non-pointer, non-interface field appearing in ForceSendFields will be 1450 // sent to the server regardless of whether the field is empty or not. 1451 // This may be used to include empty fields in Patch requests. 1452 ForceSendFields []string `json:"-"` 1453 1454 // NullFields is a list of field names (e.g. "ApiLevel") to include in 1455 // API requests with the JSON null value. By default, fields with empty 1456 // values are omitted from API requests. However, any field with an 1457 // empty value appearing in NullFields will be sent to the server as 1458 // null. It is an error if a field in this list has a non-empty value. 1459 // This may be used to include null fields in Patch requests. 1460 NullFields []string `json:"-"` 1461} 1462 1463func (s *Device) MarshalJSON() ([]byte, error) { 1464 type NoMethod Device 1465 raw := NoMethod(*s) 1466 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1467} 1468 1469// DeviceSettings: Information about security related device settings on 1470// device. 1471type DeviceSettings struct { 1472 // AdbEnabled: Whether ADB 1473 // (https://developer.android.com/studio/command-line/adb.html) is 1474 // enabled on the device. 1475 AdbEnabled bool `json:"adbEnabled,omitempty"` 1476 1477 // DevelopmentSettingsEnabled: Whether developer mode is enabled on the 1478 // device. 1479 DevelopmentSettingsEnabled bool `json:"developmentSettingsEnabled,omitempty"` 1480 1481 // EncryptionStatus: Encryption status from DevicePolicyManager. 1482 // 1483 // Possible values: 1484 // "ENCRYPTION_STATUS_UNSPECIFIED" - Unspecified. No device should 1485 // have this type. 1486 // "UNSUPPORTED" - Encryption is not supported by the device. 1487 // "INACTIVE" - Encryption is supported by the device, but is not 1488 // currently active. 1489 // "ACTIVATING" - Encryption is not currently active, but is currently 1490 // being activated. 1491 // "ACTIVE" - Encryption is active. 1492 // "ACTIVE_DEFAULT_KEY" - Encryption is active, but an encryption key 1493 // is not set by the user. 1494 // "ACTIVE_PER_USER" - Encryption is active, and the encryption key is 1495 // tied to the user profile. 1496 EncryptionStatus string `json:"encryptionStatus,omitempty"` 1497 1498 // IsDeviceSecure: Whether the device is secured with PIN/password. 1499 IsDeviceSecure bool `json:"isDeviceSecure,omitempty"` 1500 1501 // IsEncrypted: Whether the storage encryption is enabled. 1502 IsEncrypted bool `json:"isEncrypted,omitempty"` 1503 1504 // UnknownSourcesEnabled: Whether installing apps from unknown sources 1505 // is enabled. 1506 UnknownSourcesEnabled bool `json:"unknownSourcesEnabled,omitempty"` 1507 1508 // VerifyAppsEnabled: Whether Google Play Protect verification 1509 // (https://support.google.com/accounts/answer/2812853) is enforced on 1510 // the device. 1511 VerifyAppsEnabled bool `json:"verifyAppsEnabled,omitempty"` 1512 1513 // ForceSendFields is a list of field names (e.g. "AdbEnabled") to 1514 // unconditionally include in API requests. By default, fields with 1515 // empty or default values are omitted from API requests. However, any 1516 // non-pointer, non-interface field appearing in ForceSendFields will be 1517 // sent to the server regardless of whether the field is empty or not. 1518 // This may be used to include empty fields in Patch requests. 1519 ForceSendFields []string `json:"-"` 1520 1521 // NullFields is a list of field names (e.g. "AdbEnabled") to include in 1522 // API requests with the JSON null value. By default, fields with empty 1523 // values are omitted from API requests. However, any field with an 1524 // empty value appearing in NullFields will be sent to the server as 1525 // null. It is an error if a field in this list has a non-empty value. 1526 // This may be used to include null fields in Patch requests. 1527 NullFields []string `json:"-"` 1528} 1529 1530func (s *DeviceSettings) MarshalJSON() ([]byte, error) { 1531 type NoMethod DeviceSettings 1532 raw := NoMethod(*s) 1533 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1534} 1535 1536// Display: Device display information. 1537type Display struct { 1538 // Density: Display density expressed as dots-per-inch. 1539 Density int64 `json:"density,omitempty"` 1540 1541 // DisplayId: Unique display id. 1542 DisplayId int64 `json:"displayId,omitempty"` 1543 1544 // Height: Display height in pixels. 1545 Height int64 `json:"height,omitempty"` 1546 1547 // Name: Name of the display. 1548 Name string `json:"name,omitempty"` 1549 1550 // RefreshRate: Refresh rate of the display in frames per second. 1551 RefreshRate int64 `json:"refreshRate,omitempty"` 1552 1553 // State: State of the display. 1554 // 1555 // Possible values: 1556 // "DISPLAY_STATE_UNSPECIFIED" - This value is disallowed. 1557 // "OFF" - Display is off. 1558 // "ON" - Display is on. 1559 // "DOZE" - Display is dozing in a low power state 1560 // "SUSPENDED" - Display is dozing in a suspended low power state. 1561 State string `json:"state,omitempty"` 1562 1563 // Width: Display width in pixels. 1564 Width int64 `json:"width,omitempty"` 1565 1566 // ForceSendFields is a list of field names (e.g. "Density") to 1567 // unconditionally include in API requests. By default, fields with 1568 // empty or default values are omitted from API requests. However, any 1569 // non-pointer, non-interface field appearing in ForceSendFields will be 1570 // sent to the server regardless of whether the field is empty or not. 1571 // This may be used to include empty fields in Patch requests. 1572 ForceSendFields []string `json:"-"` 1573 1574 // NullFields is a list of field names (e.g. "Density") to include in 1575 // API requests with the JSON null value. By default, fields with empty 1576 // values are omitted from API requests. However, any field with an 1577 // empty value appearing in NullFields will be sent to the server as 1578 // null. It is an error if a field in this list has a non-empty value. 1579 // This may be used to include null fields in Patch requests. 1580 NullFields []string `json:"-"` 1581} 1582 1583func (s *Display) MarshalJSON() ([]byte, error) { 1584 type NoMethod Display 1585 raw := NoMethod(*s) 1586 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1587} 1588 1589// Empty: A generic empty message that you can re-use to avoid defining 1590// duplicated empty messages in your APIs. A typical example is to use 1591// it as the request or the response type of an API method. For 1592// instance: service Foo { rpc Bar(google.protobuf.Empty) returns 1593// (google.protobuf.Empty); } The JSON representation for Empty is empty 1594// JSON object {}. 1595type Empty struct { 1596 // ServerResponse contains the HTTP response code and headers from the 1597 // server. 1598 googleapi.ServerResponse `json:"-"` 1599} 1600 1601// EnrollmentToken: An enrollment token. 1602type EnrollmentToken struct { 1603 // AdditionalData: Optional, arbitrary data associated with the 1604 // enrollment token. This could contain, for example, the ID of an org 1605 // unit the device is assigned to after enrollment. After a device 1606 // enrolls with the token, this data will be exposed in the 1607 // enrollment_token_data field of the Device resource. The data must be 1608 // 1024 characters or less; otherwise, the creation request will fail. 1609 AdditionalData string `json:"additionalData,omitempty"` 1610 1611 // AllowPersonalUsage: Controls whether personal usage is allowed on a 1612 // device provisioned with this enrollment token.For company-owned 1613 // devices: Enabling personal usage allows the user to set up a work 1614 // profile on the device. Disabling personal usage requires the user 1615 // provision the device as a fully managed device.For personally-owned 1616 // devices: Enabling personal usage allows the user to set up a work 1617 // profile on the device. Disabling personal usage will prevent the 1618 // device from provisioning. Personal usage cannot be disabled on 1619 // personally-owned device. 1620 // 1621 // Possible values: 1622 // "ALLOW_PERSONAL_USAGE_UNSPECIFIED" - Personal usage restriction is 1623 // not specified 1624 // "PERSONAL_USAGE_ALLOWED" - Personal usage is allowed 1625 // "PERSONAL_USAGE_DISALLOWED" - Personal usage is disallowed 1626 AllowPersonalUsage string `json:"allowPersonalUsage,omitempty"` 1627 1628 // Duration: The length of time the enrollment token is valid, ranging 1629 // from 1 minute to 90 days. If not specified, the default duration is 1 1630 // hour. 1631 Duration string `json:"duration,omitempty"` 1632 1633 // ExpirationTimestamp: The expiration time of the token. This is a 1634 // read-only field generated by the server. 1635 ExpirationTimestamp string `json:"expirationTimestamp,omitempty"` 1636 1637 // Name: The name of the enrollment token, which is generated by the 1638 // server during creation, in the form 1639 // enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}. 1640 Name string `json:"name,omitempty"` 1641 1642 // OneTimeOnly: Whether the enrollment token is for one time use only. 1643 // If the flag is set to true, only one device can use it for 1644 // registration. 1645 OneTimeOnly bool `json:"oneTimeOnly,omitempty"` 1646 1647 // PolicyName: The name of the policy initially applied to the enrolled 1648 // device, in the form enterprises/{enterpriseId}/policies/{policyId}. 1649 // If not specified, the policy_name for the device’s user is applied. 1650 // If user_name is also not specified, 1651 // enterprises/{enterpriseId}/policies/default is applied by default. 1652 // When updating this field, you can specify only the policyId as long 1653 // as the policyId doesn’t contain any slashes. The rest of the policy 1654 // name will be inferred. 1655 PolicyName string `json:"policyName,omitempty"` 1656 1657 // QrCode: A JSON string whose UTF-8 representation can be used to 1658 // generate a QR code to enroll a device with this enrollment token. To 1659 // enroll a device using NFC, the NFC record must contain a serialized 1660 // java.util.Properties representation of the properties in the JSON. 1661 QrCode string `json:"qrCode,omitempty"` 1662 1663 // User: The user associated with this enrollment token. If it's 1664 // specified when the enrollment token is created and the user does not 1665 // exist, the user will be created. This field must not contain 1666 // personally identifiable information. Only the account_identifier 1667 // field needs to be set. 1668 User *User `json:"user,omitempty"` 1669 1670 // Value: The token value that's passed to the device and authorizes the 1671 // device to enroll. This is a read-only field generated by the server. 1672 Value string `json:"value,omitempty"` 1673 1674 // ServerResponse contains the HTTP response code and headers from the 1675 // server. 1676 googleapi.ServerResponse `json:"-"` 1677 1678 // ForceSendFields is a list of field names (e.g. "AdditionalData") to 1679 // unconditionally include in API requests. By default, fields with 1680 // empty or default values are omitted from API requests. However, any 1681 // non-pointer, non-interface field appearing in ForceSendFields will be 1682 // sent to the server regardless of whether the field is empty or not. 1683 // This may be used to include empty fields in Patch requests. 1684 ForceSendFields []string `json:"-"` 1685 1686 // NullFields is a list of field names (e.g. "AdditionalData") to 1687 // include in API requests with the JSON null value. By default, fields 1688 // with empty values are omitted from API requests. However, any field 1689 // with an empty value appearing in NullFields will be sent to the 1690 // server as null. It is an error if a field in this list has a 1691 // non-empty value. This may be used to include null fields in Patch 1692 // requests. 1693 NullFields []string `json:"-"` 1694} 1695 1696func (s *EnrollmentToken) MarshalJSON() ([]byte, error) { 1697 type NoMethod EnrollmentToken 1698 raw := NoMethod(*s) 1699 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1700} 1701 1702// Enterprise: The configuration applied to an enterprise. 1703type Enterprise struct { 1704 // AppAutoApprovalEnabled: Deprecated and unused. 1705 AppAutoApprovalEnabled bool `json:"appAutoApprovalEnabled,omitempty"` 1706 1707 // ContactInfo: The enterprise contact info of an EMM-managed 1708 // enterprise. 1709 ContactInfo *ContactInfo `json:"contactInfo,omitempty"` 1710 1711 // EnabledNotificationTypes: The types of Google Pub/Sub notifications 1712 // enabled for the enterprise. 1713 // 1714 // Possible values: 1715 // "NOTIFICATION_TYPE_UNSPECIFIED" - This value is ignored. 1716 // "ENROLLMENT" - A notification sent when a device enrolls. 1717 // "COMPLIANCE_REPORT" - Deprecated. 1718 // "STATUS_REPORT" - A notification sent when a device issues a status 1719 // report. 1720 // "COMMAND" - A notification sent when a device command has 1721 // completed. 1722 EnabledNotificationTypes []string `json:"enabledNotificationTypes,omitempty"` 1723 1724 // EnterpriseDisplayName: The name of the enterprise displayed to users. 1725 EnterpriseDisplayName string `json:"enterpriseDisplayName,omitempty"` 1726 1727 // Logo: An image displayed as a logo during device provisioning. 1728 // Supported types are: image/bmp, image/gif, image/x-ico, image/jpeg, 1729 // image/png, image/webp, image/vnd.wap.wbmp, image/x-adobe-dng. 1730 Logo *ExternalData `json:"logo,omitempty"` 1731 1732 // Name: The name of the enterprise which is generated by the server 1733 // during creation, in the form enterprises/{enterpriseId}. 1734 Name string `json:"name,omitempty"` 1735 1736 // PrimaryColor: A color in RGB format that indicates the predominant 1737 // color to display in the device management app UI. The color 1738 // components are stored as follows: (red << 16) | (green << 8) | blue, 1739 // where the value of each component is between 0 and 255, inclusive. 1740 PrimaryColor int64 `json:"primaryColor,omitempty"` 1741 1742 // PubsubTopic: The topic that Cloud Pub/Sub notifications are published 1743 // to, in the form projects/{project}/topics/{topic}. This field is only 1744 // required if Pub/Sub notifications are enabled. 1745 PubsubTopic string `json:"pubsubTopic,omitempty"` 1746 1747 // SigninDetails: Sign-in details of the enterprise. 1748 SigninDetails []*SigninDetail `json:"signinDetails,omitempty"` 1749 1750 // TermsAndConditions: Terms and conditions that must be accepted when 1751 // provisioning a device for this enterprise. A page of terms is 1752 // generated for each value in this list. 1753 TermsAndConditions []*TermsAndConditions `json:"termsAndConditions,omitempty"` 1754 1755 // ServerResponse contains the HTTP response code and headers from the 1756 // server. 1757 googleapi.ServerResponse `json:"-"` 1758 1759 // ForceSendFields is a list of field names (e.g. 1760 // "AppAutoApprovalEnabled") to unconditionally include in API requests. 1761 // By default, fields with empty or default values are omitted from API 1762 // requests. However, any non-pointer, non-interface field appearing in 1763 // ForceSendFields will be sent to the server regardless of whether the 1764 // field is empty or not. This may be used to include empty fields in 1765 // Patch requests. 1766 ForceSendFields []string `json:"-"` 1767 1768 // NullFields is a list of field names (e.g. "AppAutoApprovalEnabled") 1769 // to include in API requests with the JSON null value. By default, 1770 // fields with empty values are omitted from API requests. However, any 1771 // field with an empty value appearing in NullFields will be sent to the 1772 // server as null. It is an error if a field in this list has a 1773 // non-empty value. This may be used to include null fields in Patch 1774 // requests. 1775 NullFields []string `json:"-"` 1776} 1777 1778func (s *Enterprise) MarshalJSON() ([]byte, error) { 1779 type NoMethod Enterprise 1780 raw := NoMethod(*s) 1781 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1782} 1783 1784// ExternalData: Data hosted at an external location. The data is to be 1785// downloaded by Android Device Policy and verified against the hash. 1786type ExternalData struct { 1787 // Sha256Hash: The base-64 encoded SHA-256 hash of the content hosted at 1788 // url. If the content doesn't match this hash, Android Device Policy 1789 // won't use the data. 1790 Sha256Hash string `json:"sha256Hash,omitempty"` 1791 1792 // Url: The absolute URL to the data, which must use either the http or 1793 // https scheme. Android Device Policy doesn't provide any credentials 1794 // in the GET request, so the URL must be publicly accessible. Including 1795 // a long, random component in the URL may be used to prevent attackers 1796 // from discovering the URL. 1797 Url string `json:"url,omitempty"` 1798 1799 // ForceSendFields is a list of field names (e.g. "Sha256Hash") to 1800 // unconditionally include in API requests. By default, fields with 1801 // empty or default values are omitted from API requests. However, any 1802 // non-pointer, non-interface field appearing in ForceSendFields will be 1803 // sent to the server regardless of whether the field is empty or not. 1804 // This may be used to include empty fields in Patch requests. 1805 ForceSendFields []string `json:"-"` 1806 1807 // NullFields is a list of field names (e.g. "Sha256Hash") to include in 1808 // API requests with the JSON null value. By default, fields with empty 1809 // values are omitted from API requests. However, any field with an 1810 // empty value appearing in NullFields will be sent to the server as 1811 // null. It is an error if a field in this list has a non-empty value. 1812 // This may be used to include null fields in Patch requests. 1813 NullFields []string `json:"-"` 1814} 1815 1816func (s *ExternalData) MarshalJSON() ([]byte, error) { 1817 type NoMethod ExternalData 1818 raw := NoMethod(*s) 1819 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1820} 1821 1822// FreezePeriod: A system freeze period. When a device’s clock is 1823// within the freeze period, all incoming system updates (including 1824// security patches) are blocked and won’t be installed. When a device 1825// is outside the freeze period, normal update behavior applies. Leap 1826// years are ignored in freeze period calculations, in particular: * If 1827// Feb. 29th is set as the start or end date of a freeze period, the 1828// freeze period will start or end on Feb. 28th instead. * When a 1829// device’s system clock reads Feb. 29th, it’s treated as Feb. 28th. 1830// * When calculating the number of days in a freeze period or the time 1831// between two freeze periods, Feb. 29th is ignored and not counted as a 1832// day. 1833type FreezePeriod struct { 1834 // EndDate: The end date (inclusive) of the freeze period. Must be no 1835 // later than 90 days from the start date. If the end date is earlier 1836 // than the start date, the freeze period is considered wrapping 1837 // year-end. Note: year must not be set. For example, {"month": 1838 // 1,"date": 30}. 1839 EndDate *Date `json:"endDate,omitempty"` 1840 1841 // StartDate: The start date (inclusive) of the freeze period. Note: 1842 // year must not be set. For example, {"month": 1,"date": 30}. 1843 StartDate *Date `json:"startDate,omitempty"` 1844 1845 // ForceSendFields is a list of field names (e.g. "EndDate") to 1846 // unconditionally include in API requests. By default, fields with 1847 // empty or default values are omitted from API requests. However, any 1848 // non-pointer, non-interface field appearing in ForceSendFields will be 1849 // sent to the server regardless of whether the field is empty or not. 1850 // This may be used to include empty fields in Patch requests. 1851 ForceSendFields []string `json:"-"` 1852 1853 // NullFields is a list of field names (e.g. "EndDate") to include in 1854 // API requests with the JSON null value. By default, fields with empty 1855 // values are omitted from API requests. However, any field with an 1856 // empty value appearing in NullFields will be sent to the server as 1857 // null. It is an error if a field in this list has a non-empty value. 1858 // This may be used to include null fields in Patch requests. 1859 NullFields []string `json:"-"` 1860} 1861 1862func (s *FreezePeriod) MarshalJSON() ([]byte, error) { 1863 type NoMethod FreezePeriod 1864 raw := NoMethod(*s) 1865 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1866} 1867 1868// HardwareInfo: Information about device hardware. The fields related 1869// to temperature thresholds are only available if hardwareStatusEnabled 1870// is true in the device's policy. 1871type HardwareInfo struct { 1872 // BatteryShutdownTemperatures: Battery shutdown temperature thresholds 1873 // in Celsius for each battery on the device. 1874 BatteryShutdownTemperatures []float64 `json:"batteryShutdownTemperatures,omitempty"` 1875 1876 // BatteryThrottlingTemperatures: Battery throttling temperature 1877 // thresholds in Celsius for each battery on the device. 1878 BatteryThrottlingTemperatures []float64 `json:"batteryThrottlingTemperatures,omitempty"` 1879 1880 // Brand: Brand of the device. For example, Google. 1881 Brand string `json:"brand,omitempty"` 1882 1883 // CpuShutdownTemperatures: CPU shutdown temperature thresholds in 1884 // Celsius for each CPU on the device. 1885 CpuShutdownTemperatures []float64 `json:"cpuShutdownTemperatures,omitempty"` 1886 1887 // CpuThrottlingTemperatures: CPU throttling temperature thresholds in 1888 // Celsius for each CPU on the device. 1889 CpuThrottlingTemperatures []float64 `json:"cpuThrottlingTemperatures,omitempty"` 1890 1891 // DeviceBasebandVersion: Baseband version. For example, 1892 // MDM9625_104662.22.05.34p. 1893 DeviceBasebandVersion string `json:"deviceBasebandVersion,omitempty"` 1894 1895 // GpuShutdownTemperatures: GPU shutdown temperature thresholds in 1896 // Celsius for each GPU on the device. 1897 GpuShutdownTemperatures []float64 `json:"gpuShutdownTemperatures,omitempty"` 1898 1899 // GpuThrottlingTemperatures: GPU throttling temperature thresholds in 1900 // Celsius for each GPU on the device. 1901 GpuThrottlingTemperatures []float64 `json:"gpuThrottlingTemperatures,omitempty"` 1902 1903 // Hardware: Name of the hardware. For example, Angler. 1904 Hardware string `json:"hardware,omitempty"` 1905 1906 // Manufacturer: Manufacturer. For example, Motorola. 1907 Manufacturer string `json:"manufacturer,omitempty"` 1908 1909 // Model: The model of the device. For example, Asus Nexus 7. 1910 Model string `json:"model,omitempty"` 1911 1912 // SerialNumber: The device serial number. 1913 SerialNumber string `json:"serialNumber,omitempty"` 1914 1915 // SkinShutdownTemperatures: Device skin shutdown temperature thresholds 1916 // in Celsius. 1917 SkinShutdownTemperatures []float64 `json:"skinShutdownTemperatures,omitempty"` 1918 1919 // SkinThrottlingTemperatures: Device skin throttling temperature 1920 // thresholds in Celsius. 1921 SkinThrottlingTemperatures []float64 `json:"skinThrottlingTemperatures,omitempty"` 1922 1923 // ForceSendFields is a list of field names (e.g. 1924 // "BatteryShutdownTemperatures") to unconditionally include in API 1925 // requests. By default, fields with empty or default values are omitted 1926 // from API requests. However, any non-pointer, non-interface field 1927 // appearing in ForceSendFields will be sent to the server regardless of 1928 // whether the field is empty or not. This may be used to include empty 1929 // fields in Patch requests. 1930 ForceSendFields []string `json:"-"` 1931 1932 // NullFields is a list of field names (e.g. 1933 // "BatteryShutdownTemperatures") to include in API requests with the 1934 // JSON null value. By default, fields with empty values are omitted 1935 // from API requests. However, any field with an empty value appearing 1936 // in NullFields will be sent to the server as null. It is an error if a 1937 // field in this list has a non-empty value. This may be used to include 1938 // null fields in Patch requests. 1939 NullFields []string `json:"-"` 1940} 1941 1942func (s *HardwareInfo) MarshalJSON() ([]byte, error) { 1943 type NoMethod HardwareInfo 1944 raw := NoMethod(*s) 1945 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1946} 1947 1948// HardwareStatus: Hardware status. Temperatures may be compared to the 1949// temperature thresholds available in hardwareInfo to determine 1950// hardware health. 1951type HardwareStatus struct { 1952 // BatteryTemperatures: Current battery temperatures in Celsius for each 1953 // battery on the device. 1954 BatteryTemperatures []float64 `json:"batteryTemperatures,omitempty"` 1955 1956 // CpuTemperatures: Current CPU temperatures in Celsius for each CPU on 1957 // the device. 1958 CpuTemperatures []float64 `json:"cpuTemperatures,omitempty"` 1959 1960 // CpuUsages: CPU usages in percentage for each core available on the 1961 // device. Usage is 0 for each unplugged core. Empty array implies that 1962 // CPU usage is not supported in the system. 1963 CpuUsages []float64 `json:"cpuUsages,omitempty"` 1964 1965 // CreateTime: The time the measurements were taken. 1966 CreateTime string `json:"createTime,omitempty"` 1967 1968 // FanSpeeds: Fan speeds in RPM for each fan on the device. Empty array 1969 // means that there are no fans or fan speed is not supported on the 1970 // system. 1971 FanSpeeds []float64 `json:"fanSpeeds,omitempty"` 1972 1973 // GpuTemperatures: Current GPU temperatures in Celsius for each GPU on 1974 // the device. 1975 GpuTemperatures []float64 `json:"gpuTemperatures,omitempty"` 1976 1977 // SkinTemperatures: Current device skin temperatures in Celsius. 1978 SkinTemperatures []float64 `json:"skinTemperatures,omitempty"` 1979 1980 // ForceSendFields is a list of field names (e.g. "BatteryTemperatures") 1981 // to unconditionally include in API requests. By default, fields with 1982 // empty or default values are omitted from API requests. However, any 1983 // non-pointer, non-interface field appearing in ForceSendFields will be 1984 // sent to the server regardless of whether the field is empty or not. 1985 // This may be used to include empty fields in Patch requests. 1986 ForceSendFields []string `json:"-"` 1987 1988 // NullFields is a list of field names (e.g. "BatteryTemperatures") to 1989 // include in API requests with the JSON null value. By default, fields 1990 // with empty values are omitted from API requests. However, any field 1991 // with an empty value appearing in NullFields will be sent to the 1992 // server as null. It is an error if a field in this list has a 1993 // non-empty value. This may be used to include null fields in Patch 1994 // requests. 1995 NullFields []string `json:"-"` 1996} 1997 1998func (s *HardwareStatus) MarshalJSON() ([]byte, error) { 1999 type NoMethod HardwareStatus 2000 raw := NoMethod(*s) 2001 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2002} 2003 2004// IssueCommandResponse: Response on issuing a command. This is 2005// currently empty as a placeholder. 2006type IssueCommandResponse struct { 2007} 2008 2009// KeyedAppState: Keyed app state reported by the app. 2010type KeyedAppState struct { 2011 // CreateTime: The creation time of the app state on the device. 2012 CreateTime string `json:"createTime,omitempty"` 2013 2014 // Data: Optionally, a machine-readable value to be read by the EMM. For 2015 // example, setting values that the admin can choose to query against in 2016 // the EMM console (e.g. “notify me if the battery_warning data < 2017 // 10”). 2018 Data string `json:"data,omitempty"` 2019 2020 // Key: The key for the app state. Acts as a point of reference for what 2021 // the app is providing state for. For example, when providing managed 2022 // configuration feedback, this key could be the managed configuration 2023 // key. 2024 Key string `json:"key,omitempty"` 2025 2026 // LastUpdateTime: The time the app state was most recently updated. 2027 LastUpdateTime string `json:"lastUpdateTime,omitempty"` 2028 2029 // Message: Optionally, a free-form message string to explain the app 2030 // state. If the state was triggered by a particular value (e.g. a 2031 // managed configuration value), it should be included in the message. 2032 Message string `json:"message,omitempty"` 2033 2034 // Severity: The severity of the app state. 2035 // 2036 // Possible values: 2037 // "SEVERITY_UNSPECIFIED" - Unspecified severity level. 2038 // "INFO" - Information severity level. 2039 // "ERROR" - Error severity level. This should only be set for genuine 2040 // error conditions that a management organization needs to take action 2041 // to fix. 2042 Severity string `json:"severity,omitempty"` 2043 2044 // ForceSendFields is a list of field names (e.g. "CreateTime") to 2045 // unconditionally include in API requests. By default, fields with 2046 // empty or default values are omitted from API requests. However, any 2047 // non-pointer, non-interface field appearing in ForceSendFields will be 2048 // sent to the server regardless of whether the field is empty or not. 2049 // This may be used to include empty fields in Patch requests. 2050 ForceSendFields []string `json:"-"` 2051 2052 // NullFields is a list of field names (e.g. "CreateTime") to include in 2053 // API requests with the JSON null value. By default, fields with empty 2054 // values are omitted from API requests. However, any field with an 2055 // empty value appearing in NullFields will be sent to the server as 2056 // null. It is an error if a field in this list has a non-empty value. 2057 // This may be used to include null fields in Patch requests. 2058 NullFields []string `json:"-"` 2059} 2060 2061func (s *KeyedAppState) MarshalJSON() ([]byte, error) { 2062 type NoMethod KeyedAppState 2063 raw := NoMethod(*s) 2064 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2065} 2066 2067// KioskCustomization: Settings controlling the behavior of a device in 2068// kiosk mode. To enable kiosk mode, set kioskCustomLauncherEnabled to 2069// true or specify an app in the policy with installType KIOSK. 2070type KioskCustomization struct { 2071 // DeviceSettings: Specifies whether the Settings app is allowed in 2072 // kiosk mode. 2073 // 2074 // Possible values: 2075 // "DEVICE_SETTINGS_UNSPECIFIED" - Unspecified, defaults to 2076 // SETTINGS_ACCESS_ALLOWED. 2077 // "SETTINGS_ACCESS_ALLOWED" - Access to the Settings app is allowed 2078 // in kiosk mode. 2079 // "SETTINGS_ACCESS_BLOCKED" - Access to the Settings app is not 2080 // allowed in kiosk mode. 2081 DeviceSettings string `json:"deviceSettings,omitempty"` 2082 2083 // PowerButtonActions: Sets the behavior of a device in kiosk mode when 2084 // a user presses and holds (long-presses) the Power button. 2085 // 2086 // Possible values: 2087 // "POWER_BUTTON_ACTIONS_UNSPECIFIED" - Unspecified, defaults to 2088 // POWER_BUTTON_AVAILABLE. 2089 // "POWER_BUTTON_AVAILABLE" - The power menu (e.g. Power off, Restart) 2090 // is shown when a user long-presses the Power button of a device in 2091 // kiosk mode. 2092 // "POWER_BUTTON_BLOCKED" - The power menu (e.g. Power off, Restart) 2093 // is not shown when a user long-presses the Power button of a device in 2094 // kiosk mode. Note: this may prevent users from turning off the device. 2095 PowerButtonActions string `json:"powerButtonActions,omitempty"` 2096 2097 // StatusBar: Specifies whether system info and notifications are 2098 // disabled in kiosk mode. 2099 // 2100 // Possible values: 2101 // "STATUS_BAR_UNSPECIFIED" - Unspecified, defaults to 2102 // INFO_AND_NOTIFICATIONS_DISABLED. 2103 // "NOTIFICATIONS_AND_SYSTEM_INFO_ENABLED" - System info and 2104 // notifications are shown on the status bar in kiosk mode.Note: For 2105 // this policy to take effect, the device's home button must be enabled 2106 // using kioskCustomization.systemNavigation. 2107 // "NOTIFICATIONS_AND_SYSTEM_INFO_DISABLED" - System info and 2108 // notifications are disabled in kiosk mode. 2109 // "SYSTEM_INFO_ONLY" - Only system info is shown on the status bar. 2110 StatusBar string `json:"statusBar,omitempty"` 2111 2112 // SystemErrorWarnings: Specifies whether system error dialogs for 2113 // crashed or unresponsive apps are blocked in kiosk mode. When blocked, 2114 // the system will force-stop the app as if the user chooses the "close 2115 // app" option on the UI. 2116 // 2117 // Possible values: 2118 // "SYSTEM_ERROR_WARNINGS_UNSPECIFIED" - Unspecified, defaults to 2119 // ERROR_AND_WARNINGS_MUTED. 2120 // "ERROR_AND_WARNINGS_ENABLED" - All system error dialogs such as 2121 // crash and app not responding (ANR) are displayed. 2122 // "ERROR_AND_WARNINGS_MUTED" - All system error dialogs, such as 2123 // crash and app not responding (ANR) are blocked. When blocked, the 2124 // system force-stops the app as if the user closes the app from the UI. 2125 SystemErrorWarnings string `json:"systemErrorWarnings,omitempty"` 2126 2127 // SystemNavigation: Specifies which navigation features are enabled 2128 // (e.g. Home, Overview buttons) in kiosk mode. 2129 // 2130 // Possible values: 2131 // "SYSTEM_NAVIGATION_UNSPECIFIED" - Unspecified, defaults to 2132 // NAVIGATION_DISABLED. 2133 // "NAVIGATION_ENABLED" - Home and overview buttons are enabled. 2134 // "NAVIGATION_DISABLED" - The home and Overview buttons are not 2135 // accessible. 2136 // "HOME_BUTTON_ONLY" - Only the home button is enabled. 2137 SystemNavigation string `json:"systemNavigation,omitempty"` 2138 2139 // ForceSendFields is a list of field names (e.g. "DeviceSettings") to 2140 // unconditionally include in API requests. By default, fields with 2141 // empty or default values are omitted from API requests. However, any 2142 // non-pointer, non-interface field appearing in ForceSendFields will be 2143 // sent to the server regardless of whether the field is empty or not. 2144 // This may be used to include empty fields in Patch requests. 2145 ForceSendFields []string `json:"-"` 2146 2147 // NullFields is a list of field names (e.g. "DeviceSettings") to 2148 // include in API requests with the JSON null value. By default, fields 2149 // with empty values are omitted from API requests. However, any field 2150 // with an empty value appearing in NullFields will be sent to the 2151 // server as null. It is an error if a field in this list has a 2152 // non-empty value. This may be used to include null fields in Patch 2153 // requests. 2154 NullFields []string `json:"-"` 2155} 2156 2157func (s *KioskCustomization) MarshalJSON() ([]byte, error) { 2158 type NoMethod KioskCustomization 2159 raw := NoMethod(*s) 2160 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2161} 2162 2163// LaunchAppAction: An action to launch an app. 2164type LaunchAppAction struct { 2165 // PackageName: Package name of app to be launched 2166 PackageName string `json:"packageName,omitempty"` 2167 2168 // ForceSendFields is a list of field names (e.g. "PackageName") to 2169 // unconditionally include in API requests. By default, fields with 2170 // empty or default values are omitted from API requests. However, any 2171 // non-pointer, non-interface field appearing in ForceSendFields will be 2172 // sent to the server regardless of whether the field is empty or not. 2173 // This may be used to include empty fields in Patch requests. 2174 ForceSendFields []string `json:"-"` 2175 2176 // NullFields is a list of field names (e.g. "PackageName") to include 2177 // in API requests with the JSON null value. By default, fields with 2178 // empty values are omitted from API requests. However, any field with 2179 // an empty value appearing in NullFields will be sent to the server as 2180 // null. It is an error if a field in this list has a non-empty value. 2181 // This may be used to include null fields in Patch requests. 2182 NullFields []string `json:"-"` 2183} 2184 2185func (s *LaunchAppAction) MarshalJSON() ([]byte, error) { 2186 type NoMethod LaunchAppAction 2187 raw := NoMethod(*s) 2188 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2189} 2190 2191// ListDevicesResponse: Response to a request to list devices for a 2192// given enterprise. 2193type ListDevicesResponse struct { 2194 // Devices: The list of devices. 2195 Devices []*Device `json:"devices,omitempty"` 2196 2197 // NextPageToken: If there are more results, a token to retrieve next 2198 // page of results. 2199 NextPageToken string `json:"nextPageToken,omitempty"` 2200 2201 // ServerResponse contains the HTTP response code and headers from the 2202 // server. 2203 googleapi.ServerResponse `json:"-"` 2204 2205 // ForceSendFields is a list of field names (e.g. "Devices") to 2206 // unconditionally include in API requests. By default, fields with 2207 // empty or default values are omitted from API requests. However, any 2208 // non-pointer, non-interface field appearing in ForceSendFields will be 2209 // sent to the server regardless of whether the field is empty or not. 2210 // This may be used to include empty fields in Patch requests. 2211 ForceSendFields []string `json:"-"` 2212 2213 // NullFields is a list of field names (e.g. "Devices") to include in 2214 // API requests with the JSON null value. By default, fields with empty 2215 // values are omitted from API requests. However, any field with an 2216 // empty value appearing in NullFields will be sent to the server as 2217 // null. It is an error if a field in this list has a non-empty value. 2218 // This may be used to include null fields in Patch requests. 2219 NullFields []string `json:"-"` 2220} 2221 2222func (s *ListDevicesResponse) MarshalJSON() ([]byte, error) { 2223 type NoMethod ListDevicesResponse 2224 raw := NoMethod(*s) 2225 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2226} 2227 2228// ListEnterprisesResponse: Response to a request to list enterprises. 2229type ListEnterprisesResponse struct { 2230 // Enterprises: The list of enterprises. 2231 Enterprises []*Enterprise `json:"enterprises,omitempty"` 2232 2233 // NextPageToken: If there are more results, a token to retrieve next 2234 // page of results. 2235 NextPageToken string `json:"nextPageToken,omitempty"` 2236 2237 // ServerResponse contains the HTTP response code and headers from the 2238 // server. 2239 googleapi.ServerResponse `json:"-"` 2240 2241 // ForceSendFields is a list of field names (e.g. "Enterprises") to 2242 // unconditionally include in API requests. By default, fields with 2243 // empty or default values are omitted from API requests. However, any 2244 // non-pointer, non-interface field appearing in ForceSendFields will be 2245 // sent to the server regardless of whether the field is empty or not. 2246 // This may be used to include empty fields in Patch requests. 2247 ForceSendFields []string `json:"-"` 2248 2249 // NullFields is a list of field names (e.g. "Enterprises") to include 2250 // in API requests with the JSON null value. By default, fields with 2251 // empty values are omitted from API requests. However, any field with 2252 // an empty value appearing in NullFields will be sent to the server as 2253 // null. It is an error if a field in this list has a non-empty value. 2254 // This may be used to include null fields in Patch requests. 2255 NullFields []string `json:"-"` 2256} 2257 2258func (s *ListEnterprisesResponse) MarshalJSON() ([]byte, error) { 2259 type NoMethod ListEnterprisesResponse 2260 raw := NoMethod(*s) 2261 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2262} 2263 2264// ListOperationsResponse: The response message for 2265// Operations.ListOperations. 2266type ListOperationsResponse struct { 2267 // NextPageToken: The standard List next-page token. 2268 NextPageToken string `json:"nextPageToken,omitempty"` 2269 2270 // Operations: A list of operations that matches the specified filter in 2271 // the request. 2272 Operations []*Operation `json:"operations,omitempty"` 2273 2274 // ServerResponse contains the HTTP response code and headers from the 2275 // server. 2276 googleapi.ServerResponse `json:"-"` 2277 2278 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 2279 // unconditionally include in API requests. By default, fields with 2280 // empty or default values are omitted from API requests. However, any 2281 // non-pointer, non-interface field appearing in ForceSendFields will be 2282 // sent to the server regardless of whether the field is empty or not. 2283 // This may be used to include empty fields in Patch requests. 2284 ForceSendFields []string `json:"-"` 2285 2286 // NullFields is a list of field names (e.g. "NextPageToken") to include 2287 // in API requests with the JSON null value. By default, fields with 2288 // empty values are omitted from API requests. However, any field with 2289 // an empty value appearing in NullFields will be sent to the server as 2290 // null. It is an error if a field in this list has a non-empty value. 2291 // This may be used to include null fields in Patch requests. 2292 NullFields []string `json:"-"` 2293} 2294 2295func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { 2296 type NoMethod ListOperationsResponse 2297 raw := NoMethod(*s) 2298 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2299} 2300 2301// ListPoliciesResponse: Response to a request to list policies for a 2302// given enterprise. 2303type ListPoliciesResponse struct { 2304 // NextPageToken: If there are more results, a token to retrieve next 2305 // page of results. 2306 NextPageToken string `json:"nextPageToken,omitempty"` 2307 2308 // Policies: The list of policies. 2309 Policies []*Policy `json:"policies,omitempty"` 2310 2311 // ServerResponse contains the HTTP response code and headers from the 2312 // server. 2313 googleapi.ServerResponse `json:"-"` 2314 2315 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 2316 // unconditionally include in API requests. By default, fields with 2317 // empty or default values are omitted from API requests. However, any 2318 // non-pointer, non-interface field appearing in ForceSendFields will be 2319 // sent to the server regardless of whether the field is empty or not. 2320 // This may be used to include empty fields in Patch requests. 2321 ForceSendFields []string `json:"-"` 2322 2323 // NullFields is a list of field names (e.g. "NextPageToken") to include 2324 // in API requests with the JSON null value. By default, fields with 2325 // empty values are omitted from API requests. However, any field with 2326 // an empty value appearing in NullFields will be sent to the server as 2327 // null. It is an error if a field in this list has a non-empty value. 2328 // This may be used to include null fields in Patch requests. 2329 NullFields []string `json:"-"` 2330} 2331 2332func (s *ListPoliciesResponse) MarshalJSON() ([]byte, error) { 2333 type NoMethod ListPoliciesResponse 2334 raw := NoMethod(*s) 2335 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2336} 2337 2338// ListWebAppsResponse: Response to a request to list web apps for a 2339// given enterprise. 2340type ListWebAppsResponse struct { 2341 // NextPageToken: If there are more results, a token to retrieve next 2342 // page of results. 2343 NextPageToken string `json:"nextPageToken,omitempty"` 2344 2345 // WebApps: The list of web apps. 2346 WebApps []*WebApp `json:"webApps,omitempty"` 2347 2348 // ServerResponse contains the HTTP response code and headers from the 2349 // server. 2350 googleapi.ServerResponse `json:"-"` 2351 2352 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 2353 // unconditionally include in API requests. By default, fields with 2354 // empty or default values are omitted from API requests. However, any 2355 // non-pointer, non-interface field appearing in ForceSendFields will be 2356 // sent to the server regardless of whether the field is empty or not. 2357 // This may be used to include empty fields in Patch requests. 2358 ForceSendFields []string `json:"-"` 2359 2360 // NullFields is a list of field names (e.g. "NextPageToken") to include 2361 // in API requests with the JSON null value. By default, fields with 2362 // empty values are omitted from API requests. However, any field with 2363 // an empty value appearing in NullFields will be sent to the server as 2364 // null. It is an error if a field in this list has a non-empty value. 2365 // This may be used to include null fields in Patch requests. 2366 NullFields []string `json:"-"` 2367} 2368 2369func (s *ListWebAppsResponse) MarshalJSON() ([]byte, error) { 2370 type NoMethod ListWebAppsResponse 2371 raw := NoMethod(*s) 2372 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2373} 2374 2375// ManagedConfigurationTemplate: The managed configurations template for 2376// the app, saved from the managed configurations iframe. 2377type ManagedConfigurationTemplate struct { 2378 // ConfigurationVariables: Optional, a map containing configuration 2379 // variables defined for the configuration. 2380 ConfigurationVariables map[string]string `json:"configurationVariables,omitempty"` 2381 2382 // TemplateId: The ID of the managed configurations template. 2383 TemplateId string `json:"templateId,omitempty"` 2384 2385 // ForceSendFields is a list of field names (e.g. 2386 // "ConfigurationVariables") to unconditionally include in API requests. 2387 // By default, fields with empty or default values are omitted from API 2388 // requests. However, any non-pointer, non-interface field appearing in 2389 // ForceSendFields will be sent to the server regardless of whether the 2390 // field is empty or not. This may be used to include empty fields in 2391 // Patch requests. 2392 ForceSendFields []string `json:"-"` 2393 2394 // NullFields is a list of field names (e.g. "ConfigurationVariables") 2395 // to include in API requests with the JSON null value. By default, 2396 // fields with empty values are omitted from API requests. However, any 2397 // field with an empty value appearing in NullFields will be sent to the 2398 // server as null. It is an error if a field in this list has a 2399 // non-empty value. This may be used to include null fields in Patch 2400 // requests. 2401 NullFields []string `json:"-"` 2402} 2403 2404func (s *ManagedConfigurationTemplate) MarshalJSON() ([]byte, error) { 2405 type NoMethod ManagedConfigurationTemplate 2406 raw := NoMethod(*s) 2407 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2408} 2409 2410// ManagedProperty: Managed property. 2411type ManagedProperty struct { 2412 // DefaultValue: The default value of the property. BUNDLE_ARRAY 2413 // properties don't have a default value. 2414 DefaultValue interface{} `json:"defaultValue,omitempty"` 2415 2416 // Description: A longer description of the property, providing more 2417 // detail of what it affects. Localized. 2418 Description string `json:"description,omitempty"` 2419 2420 // Entries: For CHOICE or MULTISELECT properties, the list of possible 2421 // entries. 2422 Entries []*ManagedPropertyEntry `json:"entries,omitempty"` 2423 2424 // Key: The unique key that the app uses to identify the property, e.g. 2425 // "com.google.android.gm.fieldname". 2426 Key string `json:"key,omitempty"` 2427 2428 // NestedProperties: For BUNDLE_ARRAY properties, the list of nested 2429 // properties. A BUNDLE_ARRAY property is at most two levels deep. 2430 NestedProperties []*ManagedProperty `json:"nestedProperties,omitempty"` 2431 2432 // Title: The name of the property. Localized. 2433 Title string `json:"title,omitempty"` 2434 2435 // Type: The type of the property. 2436 // 2437 // Possible values: 2438 // "MANAGED_PROPERTY_TYPE_UNSPECIFIED" - Not used. 2439 // "BOOL" - A property of boolean type. 2440 // "STRING" - A property of string type. 2441 // "INTEGER" - A property of integer type. 2442 // "CHOICE" - A choice of one item from a set. 2443 // "MULTISELECT" - A choice of multiple items from a set. 2444 // "HIDDEN" - A hidden restriction of string type (the default value 2445 // can be used to pass along information that can't be modified, such as 2446 // a version code). 2447 // "BUNDLE" - A bundle of properties 2448 // "BUNDLE_ARRAY" - An array of property bundles. 2449 Type string `json:"type,omitempty"` 2450 2451 // ForceSendFields is a list of field names (e.g. "DefaultValue") to 2452 // unconditionally include in API requests. By default, fields with 2453 // empty or default values are omitted from API requests. However, any 2454 // non-pointer, non-interface field appearing in ForceSendFields will be 2455 // sent to the server regardless of whether the field is empty or not. 2456 // This may be used to include empty fields in Patch requests. 2457 ForceSendFields []string `json:"-"` 2458 2459 // NullFields is a list of field names (e.g. "DefaultValue") to include 2460 // in API requests with the JSON null value. By default, fields with 2461 // empty values are omitted from API requests. However, any field with 2462 // an empty value appearing in NullFields will be sent to the server as 2463 // null. It is an error if a field in this list has a non-empty value. 2464 // This may be used to include null fields in Patch requests. 2465 NullFields []string `json:"-"` 2466} 2467 2468func (s *ManagedProperty) MarshalJSON() ([]byte, error) { 2469 type NoMethod ManagedProperty 2470 raw := NoMethod(*s) 2471 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2472} 2473 2474// ManagedPropertyEntry: An entry of a managed property. 2475type ManagedPropertyEntry struct { 2476 // Name: The human-readable name of the value. Localized. 2477 Name string `json:"name,omitempty"` 2478 2479 // Value: The machine-readable value of the entry, which should be used 2480 // in the configuration. Not localized. 2481 Value string `json:"value,omitempty"` 2482 2483 // ForceSendFields is a list of field names (e.g. "Name") to 2484 // unconditionally include in API requests. By default, fields with 2485 // empty or default values are omitted from API requests. However, any 2486 // non-pointer, non-interface field appearing in ForceSendFields will be 2487 // sent to the server regardless of whether the field is empty or not. 2488 // This may be used to include empty fields in Patch requests. 2489 ForceSendFields []string `json:"-"` 2490 2491 // NullFields is a list of field names (e.g. "Name") to include in API 2492 // requests with the JSON null value. By default, fields with empty 2493 // values are omitted from API requests. However, any field with an 2494 // empty value appearing in NullFields will be sent to the server as 2495 // null. It is an error if a field in this list has a non-empty value. 2496 // This may be used to include null fields in Patch requests. 2497 NullFields []string `json:"-"` 2498} 2499 2500func (s *ManagedPropertyEntry) MarshalJSON() ([]byte, error) { 2501 type NoMethod ManagedPropertyEntry 2502 raw := NoMethod(*s) 2503 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2504} 2505 2506// MemoryEvent: An event related to memory and storage measurements. 2507type MemoryEvent struct { 2508 // ByteCount: The number of free bytes in the medium, or for 2509 // EXTERNAL_STORAGE_DETECTED, the total capacity in bytes of the storage 2510 // medium. 2511 ByteCount int64 `json:"byteCount,omitempty,string"` 2512 2513 // CreateTime: The creation time of the event. 2514 CreateTime string `json:"createTime,omitempty"` 2515 2516 // EventType: Event type. 2517 // 2518 // Possible values: 2519 // "MEMORY_EVENT_TYPE_UNSPECIFIED" - Unspecified. No events have this 2520 // type. 2521 // "RAM_MEASURED" - Free space in RAM was measured. 2522 // "INTERNAL_STORAGE_MEASURED" - Free space in internal storage was 2523 // measured. 2524 // "EXTERNAL_STORAGE_DETECTED" - A new external storage medium was 2525 // detected. The reported byte count is the total capacity of the 2526 // storage medium. 2527 // "EXTERNAL_STORAGE_REMOVED" - An external storage medium was 2528 // removed. The reported byte count is zero. 2529 // "EXTERNAL_STORAGE_MEASURED" - Free space in an external storage 2530 // medium was measured. 2531 EventType string `json:"eventType,omitempty"` 2532 2533 // ForceSendFields is a list of field names (e.g. "ByteCount") to 2534 // unconditionally include in API requests. By default, fields with 2535 // empty or default values are omitted from API requests. However, any 2536 // non-pointer, non-interface field appearing in ForceSendFields will be 2537 // sent to the server regardless of whether the field is empty or not. 2538 // This may be used to include empty fields in Patch requests. 2539 ForceSendFields []string `json:"-"` 2540 2541 // NullFields is a list of field names (e.g. "ByteCount") to include in 2542 // API requests with the JSON null value. By default, fields with empty 2543 // values are omitted from API requests. However, any field with an 2544 // empty value appearing in NullFields will be sent to the server as 2545 // null. It is an error if a field in this list has a non-empty value. 2546 // This may be used to include null fields in Patch requests. 2547 NullFields []string `json:"-"` 2548} 2549 2550func (s *MemoryEvent) MarshalJSON() ([]byte, error) { 2551 type NoMethod MemoryEvent 2552 raw := NoMethod(*s) 2553 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2554} 2555 2556// MemoryInfo: Information about device memory and storage. 2557type MemoryInfo struct { 2558 // TotalInternalStorage: Total internal storage on device in bytes. 2559 TotalInternalStorage int64 `json:"totalInternalStorage,omitempty,string"` 2560 2561 // TotalRam: Total RAM on device in bytes. 2562 TotalRam int64 `json:"totalRam,omitempty,string"` 2563 2564 // ForceSendFields is a list of field names (e.g. 2565 // "TotalInternalStorage") to unconditionally include in API requests. 2566 // By default, fields with empty or default values are omitted from API 2567 // requests. However, any non-pointer, non-interface field appearing in 2568 // ForceSendFields will be sent to the server regardless of whether the 2569 // field is empty or not. This may be used to include empty fields in 2570 // Patch requests. 2571 ForceSendFields []string `json:"-"` 2572 2573 // NullFields is a list of field names (e.g. "TotalInternalStorage") to 2574 // include in API requests with the JSON null value. By default, fields 2575 // with empty values are omitted from API requests. However, any field 2576 // with an empty value appearing in NullFields will be sent to the 2577 // server as null. It is an error if a field in this list has a 2578 // non-empty value. This may be used to include null fields in Patch 2579 // requests. 2580 NullFields []string `json:"-"` 2581} 2582 2583func (s *MemoryInfo) MarshalJSON() ([]byte, error) { 2584 type NoMethod MemoryInfo 2585 raw := NoMethod(*s) 2586 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2587} 2588 2589// NetworkInfo: Device network info. 2590type NetworkInfo struct { 2591 // Imei: IMEI number of the GSM device. For example, A1000031212. 2592 Imei string `json:"imei,omitempty"` 2593 2594 // Meid: MEID number of the CDMA device. For example, A00000292788E1. 2595 Meid string `json:"meid,omitempty"` 2596 2597 // NetworkOperatorName: Alphabetic name of current registered operator. 2598 // For example, Vodafone. 2599 NetworkOperatorName string `json:"networkOperatorName,omitempty"` 2600 2601 // TelephonyInfos: Provides telephony information associated with each 2602 // SIM card on the device. Only supported on fully managed devices 2603 // starting from Android API level 23. 2604 TelephonyInfos []*TelephonyInfo `json:"telephonyInfos,omitempty"` 2605 2606 // WifiMacAddress: Wi-Fi MAC address of the device. For example, 2607 // 7c:11:11:11:11:11. 2608 WifiMacAddress string `json:"wifiMacAddress,omitempty"` 2609 2610 // ForceSendFields is a list of field names (e.g. "Imei") to 2611 // unconditionally include in API requests. By default, fields with 2612 // empty or default values are omitted from API requests. However, any 2613 // non-pointer, non-interface field appearing in ForceSendFields will be 2614 // sent to the server regardless of whether the field is empty or not. 2615 // This may be used to include empty fields in Patch requests. 2616 ForceSendFields []string `json:"-"` 2617 2618 // NullFields is a list of field names (e.g. "Imei") to include in API 2619 // requests with the JSON null value. By default, fields with empty 2620 // values are omitted from API requests. However, any field with an 2621 // empty value appearing in NullFields will be sent to the server as 2622 // null. It is an error if a field in this list has a non-empty value. 2623 // This may be used to include null fields in Patch requests. 2624 NullFields []string `json:"-"` 2625} 2626 2627func (s *NetworkInfo) MarshalJSON() ([]byte, error) { 2628 type NoMethod NetworkInfo 2629 raw := NoMethod(*s) 2630 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2631} 2632 2633// NonComplianceDetail: Provides detail about non-compliance with a 2634// policy setting. 2635type NonComplianceDetail struct { 2636 // CurrentValue: If the policy setting could not be applied, the current 2637 // value of the setting on the device. 2638 CurrentValue interface{} `json:"currentValue,omitempty"` 2639 2640 // FieldPath: For settings with nested fields, if a particular nested 2641 // field is out of compliance, this specifies the full path to the 2642 // offending field. The path is formatted in the same way the policy 2643 // JSON field would be referenced in JavaScript, that is: 1) For 2644 // object-typed fields, the field name is followed by a dot then by a 2645 // subfield name. 2) For array-typed fields, the field name is followed 2646 // by the array index enclosed in brackets. For example, to indicate a 2647 // problem with the url field in the externalData field in the 3rd 2648 // application, the path would be applications[2].externalData.url 2649 FieldPath string `json:"fieldPath,omitempty"` 2650 2651 // InstallationFailureReason: If package_name is set and the 2652 // non-compliance reason is APP_NOT_INSTALLED or APP_NOT_UPDATED, the 2653 // detailed reason the app can't be installed or updated. 2654 // 2655 // Possible values: 2656 // "INSTALLATION_FAILURE_REASON_UNSPECIFIED" - This value is 2657 // disallowed. 2658 // "INSTALLATION_FAILURE_REASON_UNKNOWN" - An unknown condition is 2659 // preventing the app from being installed. Some potential reasons are 2660 // that the device doesn't have enough storage, the device network 2661 // connection is unreliable, or the installation is taking longer than 2662 // expected. The installation will be retried automatically. 2663 // "IN_PROGRESS" - The installation is still in progress. 2664 // "NOT_FOUND" - The app was not found in Play. 2665 // "NOT_COMPATIBLE_WITH_DEVICE" - The app is incompatible with the 2666 // device. 2667 // "NOT_APPROVED" - The app has not been approved by the admin. 2668 // "PERMISSIONS_NOT_ACCEPTED" - The app has new permissions that have 2669 // not been accepted by the admin. 2670 // "NOT_AVAILABLE_IN_COUNTRY" - The app is not available in the user's 2671 // country. 2672 // "NO_LICENSES_REMAINING" - There are no licenses available to assign 2673 // to the user. 2674 // "NOT_ENROLLED" - The enterprise is no longer enrolled with Managed 2675 // Google Play or the admin has not accepted the latest Managed Google 2676 // Play Terms of Service. 2677 // "USER_INVALID" - The user is no longer valid. The user may have 2678 // been deleted or disabled. 2679 InstallationFailureReason string `json:"installationFailureReason,omitempty"` 2680 2681 // NonComplianceReason: The reason the device is not in compliance with 2682 // the setting. 2683 // 2684 // Possible values: 2685 // "NON_COMPLIANCE_REASON_UNSPECIFIED" - This value is disallowed. 2686 // "API_LEVEL" - The setting is not supported in the API level of the 2687 // Android version running on the device. 2688 // "MANAGEMENT_MODE" - The management mode (profile owner, device 2689 // owner, etc.) doesn't support the setting. 2690 // "USER_ACTION" - The user has not taken required action to comply 2691 // with the setting. 2692 // "INVALID_VALUE" - The setting has an invalid value. 2693 // "APP_NOT_INSTALLED" - The app required to implement the policy is 2694 // not installed. 2695 // "UNSUPPORTED" - The policy is not supported by the version of 2696 // Android Device Policy on the device. 2697 // "APP_INSTALLED" - A blocked app is installed. 2698 // "PENDING" - The setting hasn't been applied at the time of the 2699 // report, but is expected to be applied shortly. 2700 // "APP_INCOMPATIBLE" - The setting can't be applied to the app 2701 // because the app doesn't support it, for example because its target 2702 // SDK version is not high enough. 2703 // "APP_NOT_UPDATED" - The app is installed, but it hasn't been 2704 // updated to the minimum version code specified by policy. 2705 NonComplianceReason string `json:"nonComplianceReason,omitempty"` 2706 2707 // PackageName: The package name indicating which app is out of 2708 // compliance, if applicable. 2709 PackageName string `json:"packageName,omitempty"` 2710 2711 // SettingName: The name of the policy setting. This is the JSON field 2712 // name of a top-level Policy field. 2713 SettingName string `json:"settingName,omitempty"` 2714 2715 // ForceSendFields is a list of field names (e.g. "CurrentValue") to 2716 // unconditionally include in API requests. By default, fields with 2717 // empty or default values are omitted from API requests. However, any 2718 // non-pointer, non-interface field appearing in ForceSendFields will be 2719 // sent to the server regardless of whether the field is empty or not. 2720 // This may be used to include empty fields in Patch requests. 2721 ForceSendFields []string `json:"-"` 2722 2723 // NullFields is a list of field names (e.g. "CurrentValue") to include 2724 // in API requests with the JSON null value. By default, fields with 2725 // empty values are omitted from API requests. However, any field with 2726 // an empty value appearing in NullFields will be sent to the server as 2727 // null. It is an error if a field in this list has a non-empty value. 2728 // This may be used to include null fields in Patch requests. 2729 NullFields []string `json:"-"` 2730} 2731 2732func (s *NonComplianceDetail) MarshalJSON() ([]byte, error) { 2733 type NoMethod NonComplianceDetail 2734 raw := NoMethod(*s) 2735 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2736} 2737 2738// NonComplianceDetailCondition: A compliance rule condition which is 2739// satisfied if there exists any matching NonComplianceDetail for the 2740// device. A NonComplianceDetail matches a NonComplianceDetailCondition 2741// if all the fields which are set within the 2742// NonComplianceDetailCondition match the corresponding 2743// NonComplianceDetail fields. 2744type NonComplianceDetailCondition struct { 2745 // NonComplianceReason: The reason the device is not in compliance with 2746 // the setting. If not set, then this condition matches any reason. 2747 // 2748 // Possible values: 2749 // "NON_COMPLIANCE_REASON_UNSPECIFIED" - This value is disallowed. 2750 // "API_LEVEL" - The setting is not supported in the API level of the 2751 // Android version running on the device. 2752 // "MANAGEMENT_MODE" - The management mode (profile owner, device 2753 // owner, etc.) doesn't support the setting. 2754 // "USER_ACTION" - The user has not taken required action to comply 2755 // with the setting. 2756 // "INVALID_VALUE" - The setting has an invalid value. 2757 // "APP_NOT_INSTALLED" - The app required to implement the policy is 2758 // not installed. 2759 // "UNSUPPORTED" - The policy is not supported by the version of 2760 // Android Device Policy on the device. 2761 // "APP_INSTALLED" - A blocked app is installed. 2762 // "PENDING" - The setting hasn't been applied at the time of the 2763 // report, but is expected to be applied shortly. 2764 // "APP_INCOMPATIBLE" - The setting can't be applied to the app 2765 // because the app doesn't support it, for example because its target 2766 // SDK version is not high enough. 2767 // "APP_NOT_UPDATED" - The app is installed, but it hasn't been 2768 // updated to the minimum version code specified by policy. 2769 NonComplianceReason string `json:"nonComplianceReason,omitempty"` 2770 2771 // PackageName: The package name of the app that's out of compliance. If 2772 // not set, then this condition matches any package name. 2773 PackageName string `json:"packageName,omitempty"` 2774 2775 // SettingName: The name of the policy setting. This is the JSON field 2776 // name of a top-level Policy field. If not set, then this condition 2777 // matches any setting name. 2778 SettingName string `json:"settingName,omitempty"` 2779 2780 // ForceSendFields is a list of field names (e.g. "NonComplianceReason") 2781 // to unconditionally include in API requests. By default, fields with 2782 // empty or default values are omitted from API requests. However, any 2783 // non-pointer, non-interface field appearing in ForceSendFields will be 2784 // sent to the server regardless of whether the field is empty or not. 2785 // This may be used to include empty fields in Patch requests. 2786 ForceSendFields []string `json:"-"` 2787 2788 // NullFields is a list of field names (e.g. "NonComplianceReason") to 2789 // include in API requests with the JSON null value. By default, fields 2790 // with empty values are omitted from API requests. However, any field 2791 // with an empty value appearing in NullFields will be sent to the 2792 // server as null. It is an error if a field in this list has a 2793 // non-empty value. This may be used to include null fields in Patch 2794 // requests. 2795 NullFields []string `json:"-"` 2796} 2797 2798func (s *NonComplianceDetailCondition) MarshalJSON() ([]byte, error) { 2799 type NoMethod NonComplianceDetailCondition 2800 raw := NoMethod(*s) 2801 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2802} 2803 2804// OncCertificateProvider: This feature is not generally available. 2805type OncCertificateProvider struct { 2806 // CertificateReferences: This feature is not generally available. 2807 CertificateReferences []string `json:"certificateReferences,omitempty"` 2808 2809 // ContentProviderEndpoint: This feature is not generally available. 2810 ContentProviderEndpoint *ContentProviderEndpoint `json:"contentProviderEndpoint,omitempty"` 2811 2812 // ForceSendFields is a list of field names (e.g. 2813 // "CertificateReferences") to unconditionally include in API requests. 2814 // By default, fields with empty or default values are omitted from API 2815 // requests. However, any non-pointer, non-interface field appearing in 2816 // ForceSendFields will be sent to the server regardless of whether the 2817 // field is empty or not. This may be used to include empty fields in 2818 // Patch requests. 2819 ForceSendFields []string `json:"-"` 2820 2821 // NullFields is a list of field names (e.g. "CertificateReferences") to 2822 // include in API requests with the JSON null value. By default, fields 2823 // with empty values are omitted from API requests. However, any field 2824 // with an empty value appearing in NullFields will be sent to the 2825 // server as null. It is an error if a field in this list has a 2826 // non-empty value. This may be used to include null fields in Patch 2827 // requests. 2828 NullFields []string `json:"-"` 2829} 2830 2831func (s *OncCertificateProvider) MarshalJSON() ([]byte, error) { 2832 type NoMethod OncCertificateProvider 2833 raw := NoMethod(*s) 2834 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2835} 2836 2837// Operation: This resource represents a long-running operation that is 2838// the result of a network API call. 2839type Operation struct { 2840 // Done: If the value is false, it means the operation is still in 2841 // progress. If true, the operation is completed, and either error or 2842 // response is available. 2843 Done bool `json:"done,omitempty"` 2844 2845 // Error: The error result of the operation in case of failure or 2846 // cancellation. 2847 Error *Status `json:"error,omitempty"` 2848 2849 // Metadata: Service-specific metadata associated with the operation. It 2850 // typically contains progress information and common metadata such as 2851 // create time. Some services might not provide such metadata. Any 2852 // method that returns a long-running operation should document the 2853 // metadata type, if any. 2854 Metadata googleapi.RawMessage `json:"metadata,omitempty"` 2855 2856 // Name: The server-assigned name, which is only unique within the same 2857 // service that originally returns it. If you use the default HTTP 2858 // mapping, the name should be a resource name ending with 2859 // operations/{unique_id}. 2860 Name string `json:"name,omitempty"` 2861 2862 // Response: The normal response of the operation in case of success. If 2863 // the original method returns no data on success, such as Delete, the 2864 // response is google.protobuf.Empty. If the original method is standard 2865 // Get/Create/Update, the response should be the resource. For other 2866 // methods, the response should have the type XxxResponse, where Xxx is 2867 // the original method name. For example, if the original method name is 2868 // TakeSnapshot(), the inferred response type is TakeSnapshotResponse. 2869 Response googleapi.RawMessage `json:"response,omitempty"` 2870 2871 // ServerResponse contains the HTTP response code and headers from the 2872 // server. 2873 googleapi.ServerResponse `json:"-"` 2874 2875 // ForceSendFields is a list of field names (e.g. "Done") to 2876 // unconditionally include in API requests. By default, fields with 2877 // empty or default values are omitted from API requests. However, any 2878 // non-pointer, non-interface field appearing in ForceSendFields will be 2879 // sent to the server regardless of whether the field is empty or not. 2880 // This may be used to include empty fields in Patch requests. 2881 ForceSendFields []string `json:"-"` 2882 2883 // NullFields is a list of field names (e.g. "Done") to include in API 2884 // requests with the JSON null value. By default, fields with empty 2885 // values are omitted from API requests. However, any field with an 2886 // empty value appearing in NullFields will be sent to the server as 2887 // null. It is an error if a field in this list has a non-empty value. 2888 // This may be used to include null fields in Patch requests. 2889 NullFields []string `json:"-"` 2890} 2891 2892func (s *Operation) MarshalJSON() ([]byte, error) { 2893 type NoMethod Operation 2894 raw := NoMethod(*s) 2895 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2896} 2897 2898// PackageNameList: A list of package names. 2899type PackageNameList struct { 2900 // PackageNames: A list of package names. 2901 PackageNames []string `json:"packageNames,omitempty"` 2902 2903 // ForceSendFields is a list of field names (e.g. "PackageNames") to 2904 // unconditionally include in API requests. By default, fields with 2905 // empty or default values are omitted from API requests. However, any 2906 // non-pointer, non-interface field appearing in ForceSendFields will be 2907 // sent to the server regardless of whether the field is empty or not. 2908 // This may be used to include empty fields in Patch requests. 2909 ForceSendFields []string `json:"-"` 2910 2911 // NullFields is a list of field names (e.g. "PackageNames") to include 2912 // in API requests with the JSON null value. By default, fields with 2913 // empty values are omitted from API requests. However, any field with 2914 // an empty value appearing in NullFields will be sent to the server as 2915 // null. It is an error if a field in this list has a non-empty value. 2916 // This may be used to include null fields in Patch requests. 2917 NullFields []string `json:"-"` 2918} 2919 2920func (s *PackageNameList) MarshalJSON() ([]byte, error) { 2921 type NoMethod PackageNameList 2922 raw := NoMethod(*s) 2923 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2924} 2925 2926// PasswordRequirements: Requirements for the password used to unlock a 2927// device. 2928type PasswordRequirements struct { 2929 // MaximumFailedPasswordsForWipe: Number of incorrect device-unlock 2930 // passwords that can be entered before a device is wiped. A value of 0 2931 // means there is no restriction. 2932 MaximumFailedPasswordsForWipe int64 `json:"maximumFailedPasswordsForWipe,omitempty"` 2933 2934 // PasswordExpirationTimeout: Password expiration timeout. 2935 PasswordExpirationTimeout string `json:"passwordExpirationTimeout,omitempty"` 2936 2937 // PasswordHistoryLength: The length of the password history. After 2938 // setting this field, the user won't be able to enter a new password 2939 // that is the same as any password in the history. A value of 0 means 2940 // there is no restriction. 2941 PasswordHistoryLength int64 `json:"passwordHistoryLength,omitempty"` 2942 2943 // PasswordMinimumLength: The minimum allowed password length. A value 2944 // of 0 means there is no restriction. Only enforced when 2945 // password_quality is NUMERIC, NUMERIC_COMPLEX, ALPHABETIC, 2946 // ALPHANUMERIC, or COMPLEX. 2947 PasswordMinimumLength int64 `json:"passwordMinimumLength,omitempty"` 2948 2949 // PasswordMinimumLetters: Minimum number of letters required in the 2950 // password. Only enforced when password_quality is COMPLEX. 2951 PasswordMinimumLetters int64 `json:"passwordMinimumLetters,omitempty"` 2952 2953 // PasswordMinimumLowerCase: Minimum number of lower case letters 2954 // required in the password. Only enforced when password_quality is 2955 // COMPLEX. 2956 PasswordMinimumLowerCase int64 `json:"passwordMinimumLowerCase,omitempty"` 2957 2958 // PasswordMinimumNonLetter: Minimum number of non-letter characters 2959 // (numerical digits or symbols) required in the password. Only enforced 2960 // when password_quality is COMPLEX. 2961 PasswordMinimumNonLetter int64 `json:"passwordMinimumNonLetter,omitempty"` 2962 2963 // PasswordMinimumNumeric: Minimum number of numerical digits required 2964 // in the password. Only enforced when password_quality is COMPLEX. 2965 PasswordMinimumNumeric int64 `json:"passwordMinimumNumeric,omitempty"` 2966 2967 // PasswordMinimumSymbols: Minimum number of symbols required in the 2968 // password. Only enforced when password_quality is COMPLEX. 2969 PasswordMinimumSymbols int64 `json:"passwordMinimumSymbols,omitempty"` 2970 2971 // PasswordMinimumUpperCase: Minimum number of upper case letters 2972 // required in the password. Only enforced when password_quality is 2973 // COMPLEX. 2974 PasswordMinimumUpperCase int64 `json:"passwordMinimumUpperCase,omitempty"` 2975 2976 // PasswordQuality: The required password quality. 2977 // 2978 // Possible values: 2979 // "PASSWORD_QUALITY_UNSPECIFIED" - There are no password 2980 // requirements. 2981 // "BIOMETRIC_WEAK" - The device must be secured with a low-security 2982 // biometric recognition technology, at minimum. This includes 2983 // technologies that can recognize the identity of an individual that 2984 // are roughly equivalent to a 3-digit PIN (false detection is less than 2985 // 1 in 1,000).This, when applied on personally owned work profile 2986 // devices on Android 12 device-scoped, will be treated as 2987 // COMPLEXITY_LOW for application. See PasswordQuality for details. 2988 // "SOMETHING" - A password is required, but there are no restrictions 2989 // on what the password must contain.This, when applied on personally 2990 // owned work profile devices on Android 12 device-scoped, will be 2991 // treated as COMPLEXITY_LOW for application. See PasswordQuality for 2992 // details. 2993 // "NUMERIC" - The password must contain numeric characters.This, when 2994 // applied on personally owned work profile devices on Android 12 2995 // device-scoped, will be treated as COMPLEXITY_MEDIUM for application. 2996 // See PasswordQuality for details. 2997 // "NUMERIC_COMPLEX" - The password must contain numeric characters 2998 // with no repeating (4444) or ordered (1234, 4321, 2468) 2999 // sequences.This, when applied on personally owned work profile devices 3000 // on Android 12 device-scoped, will be treated as COMPLEXITY_MEDIUM for 3001 // application. See PasswordQuality for details. 3002 // "ALPHABETIC" - The password must contain alphabetic (or symbol) 3003 // characters.This, when applied on personally owned work profile 3004 // devices on Android 12 device-scoped, will be treated as 3005 // COMPLEXITY_HIGH for application. See PasswordQuality for details. 3006 // "ALPHANUMERIC" - The password must contain both numeric and 3007 // alphabetic (or symbol) characters.This, when applied on personally 3008 // owned work profile devices on Android 12 device-scoped, will be 3009 // treated as COMPLEXITY_HIGH for application. See PasswordQuality for 3010 // details. 3011 // "COMPLEX" - The password must meet the minimum requirements 3012 // specified in passwordMinimumLength, passwordMinimumLetters, 3013 // passwordMinimumSymbols, etc. For example, if passwordMinimumSymbols 3014 // is 2, the password must contain at least two symbols.This, when 3015 // applied on personally owned work profile devices on Android 12 3016 // device-scoped, will be treated as COMPLEXITY_HIGH for application. In 3017 // this case, the requirements in passwordMinimumLength, 3018 // passwordMinimumLetters, passwordMinimumSymbols, etc are not applied. 3019 // See PasswordQuality for details. 3020 // "COMPLEXITY_LOW" - Define the low password complexity band as: 3021 // pattern PIN with repeating (4444) or ordered (1234, 4321, 2468) 3022 // sequencesThis sets the minimum complexity band which the password 3023 // must meet.Enforcement varies among different Android versions, 3024 // management modes and password scopes. See PasswordQuality for 3025 // details. 3026 // "COMPLEXITY_MEDIUM" - Define the medium password complexity band 3027 // as: PIN with no repeating (4444) or ordered (1234, 4321, 2468) 3028 // sequences, length at least 4 alphabetic, length at least 4 3029 // alphanumeric, length at least 4This sets the minimum complexity band 3030 // which the password must meet.Enforcement varies among different 3031 // Android versions, management modes and password scopes. See 3032 // PasswordQuality for details. 3033 // "COMPLEXITY_HIGH" - Define the high password complexity band as:On 3034 // Android 12 and above: PIN with no repeating (4444) or ordered (1234, 3035 // 4321, 2468) sequences, length at least 8 alphabetic, length at least 3036 // 6 alphanumeric, length at least 6This sets the minimum complexity 3037 // band which the password must meet.Enforcement varies among different 3038 // Android versions, management modes and password scopes. See 3039 // PasswordQuality for details. 3040 PasswordQuality string `json:"passwordQuality,omitempty"` 3041 3042 // PasswordScope: The scope that the password requirement applies to. 3043 // 3044 // Possible values: 3045 // "SCOPE_UNSPECIFIED" - The scope is unspecified. The password 3046 // requirements are applied to the work profile for work profile devices 3047 // and the whole device for fully managed or dedicated devices. 3048 // "SCOPE_DEVICE" - The password requirements are only applied to the 3049 // device. 3050 // "SCOPE_PROFILE" - The password requirements are only applied to the 3051 // work profile. 3052 PasswordScope string `json:"passwordScope,omitempty"` 3053 3054 // RequirePasswordUnlock: The length of time after a device or work 3055 // profile is unlocked using a strong form of authentication (password, 3056 // PIN, pattern) that it can be unlocked using any other authentication 3057 // method (e.g. fingerprint, trust agents, face). After the specified 3058 // time period elapses, only strong forms of authentication can be used 3059 // to unlock the device or work profile. 3060 // 3061 // Possible values: 3062 // "REQUIRE_PASSWORD_UNLOCK_UNSPECIFIED" - Unspecified. Defaults to 3063 // USE_DEFAULT_DEVICE_TIMEOUT. 3064 // "USE_DEFAULT_DEVICE_TIMEOUT" - The timeout period is set to the 3065 // device’s default. 3066 // "REQUIRE_EVERY_DAY" - The timeout period is set to 24 hours. 3067 RequirePasswordUnlock string `json:"requirePasswordUnlock,omitempty"` 3068 3069 // ForceSendFields is a list of field names (e.g. 3070 // "MaximumFailedPasswordsForWipe") to unconditionally include in API 3071 // requests. By default, fields with empty or default values are omitted 3072 // from API requests. However, any non-pointer, non-interface field 3073 // appearing in ForceSendFields will be sent to the server regardless of 3074 // whether the field is empty or not. This may be used to include empty 3075 // fields in Patch requests. 3076 ForceSendFields []string `json:"-"` 3077 3078 // NullFields is a list of field names (e.g. 3079 // "MaximumFailedPasswordsForWipe") to include in API requests with the 3080 // JSON null value. By default, fields with empty values are omitted 3081 // from API requests. However, any field with an empty value appearing 3082 // in NullFields will be sent to the server as null. It is an error if a 3083 // field in this list has a non-empty value. This may be used to include 3084 // null fields in Patch requests. 3085 NullFields []string `json:"-"` 3086} 3087 3088func (s *PasswordRequirements) MarshalJSON() ([]byte, error) { 3089 type NoMethod PasswordRequirements 3090 raw := NoMethod(*s) 3091 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3092} 3093 3094// PermissionGrant: Configuration for an Android permission and its 3095// grant state. 3096type PermissionGrant struct { 3097 // Permission: The Android permission or group, e.g. 3098 // android.permission.READ_CALENDAR or 3099 // android.permission_group.CALENDAR. 3100 Permission string `json:"permission,omitempty"` 3101 3102 // Policy: The policy for granting the permission. 3103 // 3104 // Possible values: 3105 // "PERMISSION_POLICY_UNSPECIFIED" - Policy not specified. If no 3106 // policy is specified for a permission at any level, then the PROMPT 3107 // behavior is used by default. 3108 // "PROMPT" - Prompt the user to grant a permission. 3109 // "GRANT" - Automatically grant a permission. 3110 // "DENY" - Automatically deny a permission. 3111 Policy string `json:"policy,omitempty"` 3112 3113 // ForceSendFields is a list of field names (e.g. "Permission") to 3114 // unconditionally include in API requests. By default, fields with 3115 // empty or default values are omitted from API requests. However, any 3116 // non-pointer, non-interface field appearing in ForceSendFields will be 3117 // sent to the server regardless of whether the field is empty or not. 3118 // This may be used to include empty fields in Patch requests. 3119 ForceSendFields []string `json:"-"` 3120 3121 // NullFields is a list of field names (e.g. "Permission") to include in 3122 // API requests with the JSON null value. By default, fields with empty 3123 // values are omitted from API requests. However, any field with an 3124 // empty value appearing in NullFields will be sent to the server as 3125 // null. It is an error if a field in this list has a non-empty value. 3126 // This may be used to include null fields in Patch requests. 3127 NullFields []string `json:"-"` 3128} 3129 3130func (s *PermissionGrant) MarshalJSON() ([]byte, error) { 3131 type NoMethod PermissionGrant 3132 raw := NoMethod(*s) 3133 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3134} 3135 3136// PersistentPreferredActivity: A default activity for handling intents 3137// that match a particular intent filter. Note: To set up a kiosk, use 3138// InstallType to KIOSK rather than use persistent preferred activities. 3139type PersistentPreferredActivity struct { 3140 // Actions: The intent actions to match in the filter. If any actions 3141 // are included in the filter, then an intent's action must be one of 3142 // those values for it to match. If no actions are included, the intent 3143 // action is ignored. 3144 Actions []string `json:"actions,omitempty"` 3145 3146 // Categories: The intent categories to match in the filter. An intent 3147 // includes the categories that it requires, all of which must be 3148 // included in the filter in order to match. In other words, adding a 3149 // category to the filter has no impact on matching unless that category 3150 // is specified in the intent. 3151 Categories []string `json:"categories,omitempty"` 3152 3153 // ReceiverActivity: The activity that should be the default intent 3154 // handler. This should be an Android component name, e.g. 3155 // com.android.enterprise.app/.MainActivity. Alternatively, the value 3156 // may be the package name of an app, which causes Android Device Policy 3157 // to choose an appropriate activity from the app to handle the intent. 3158 ReceiverActivity string `json:"receiverActivity,omitempty"` 3159 3160 // ForceSendFields is a list of field names (e.g. "Actions") to 3161 // unconditionally include in API requests. By default, fields with 3162 // empty or default values are omitted from API requests. However, any 3163 // non-pointer, non-interface field appearing in ForceSendFields will be 3164 // sent to the server regardless of whether the field is empty or not. 3165 // This may be used to include empty fields in Patch requests. 3166 ForceSendFields []string `json:"-"` 3167 3168 // NullFields is a list of field names (e.g. "Actions") to include in 3169 // API requests with the JSON null value. By default, fields with empty 3170 // values are omitted from API requests. However, any field with an 3171 // empty value appearing in NullFields will be sent to the server as 3172 // null. It is an error if a field in this list has a non-empty value. 3173 // This may be used to include null fields in Patch requests. 3174 NullFields []string `json:"-"` 3175} 3176 3177func (s *PersistentPreferredActivity) MarshalJSON() ([]byte, error) { 3178 type NoMethod PersistentPreferredActivity 3179 raw := NoMethod(*s) 3180 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3181} 3182 3183// PersonalApplicationPolicy: Policies for apps in the personal profile 3184// of a company-owned device with a work profile. 3185type PersonalApplicationPolicy struct { 3186 // InstallType: The type of installation to perform. 3187 // 3188 // Possible values: 3189 // "INSTALL_TYPE_UNSPECIFIED" - Unspecified. Defaults to AVAILABLE. 3190 // "BLOCKED" - The app is blocked and can't be installed in the 3191 // personal profile. 3192 // "AVAILABLE" - The app is available to install in the personal 3193 // profile. 3194 InstallType string `json:"installType,omitempty"` 3195 3196 // PackageName: The package name of the application. 3197 PackageName string `json:"packageName,omitempty"` 3198 3199 // ForceSendFields is a list of field names (e.g. "InstallType") to 3200 // unconditionally include in API requests. By default, fields with 3201 // empty or default values are omitted from API requests. However, any 3202 // non-pointer, non-interface field appearing in ForceSendFields will be 3203 // sent to the server regardless of whether the field is empty or not. 3204 // This may be used to include empty fields in Patch requests. 3205 ForceSendFields []string `json:"-"` 3206 3207 // NullFields is a list of field names (e.g. "InstallType") to include 3208 // in API requests with the JSON null value. By default, fields with 3209 // empty values are omitted from API requests. However, any field with 3210 // an empty value appearing in NullFields will be sent to the server as 3211 // null. It is an error if a field in this list has a non-empty value. 3212 // This may be used to include null fields in Patch requests. 3213 NullFields []string `json:"-"` 3214} 3215 3216func (s *PersonalApplicationPolicy) MarshalJSON() ([]byte, error) { 3217 type NoMethod PersonalApplicationPolicy 3218 raw := NoMethod(*s) 3219 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3220} 3221 3222// PersonalUsagePolicies: Policies controlling personal usage on a 3223// company-owned device with a work profile. 3224type PersonalUsagePolicies struct { 3225 // AccountTypesWithManagementDisabled: Account types that can't be 3226 // managed by the user. 3227 AccountTypesWithManagementDisabled []string `json:"accountTypesWithManagementDisabled,omitempty"` 3228 3229 // CameraDisabled: Whether camera is disabled. 3230 CameraDisabled bool `json:"cameraDisabled,omitempty"` 3231 3232 // MaxDaysWithWorkOff: Controls how long the work profile can stay off. 3233 // The duration must be at least 3 days. 3234 MaxDaysWithWorkOff int64 `json:"maxDaysWithWorkOff,omitempty"` 3235 3236 // PersonalApplications: Policy applied to applications in the personal 3237 // profile. 3238 PersonalApplications []*PersonalApplicationPolicy `json:"personalApplications,omitempty"` 3239 3240 // PersonalPlayStoreMode: Used together with personalApplications to 3241 // control how apps in the personal profile are allowed or blocked. 3242 // 3243 // Possible values: 3244 // "PLAY_STORE_MODE_UNSPECIFIED" - Unspecified. Defaults to BLOCKLIST. 3245 // "BLACKLIST" - All Play Store apps are available for installation in 3246 // the personal profile, except those whose installType is BLOCKED in 3247 // personalApplications. 3248 // "BLOCKLIST" - All Play Store apps are available for installation in 3249 // the personal profile, except those whose installType is BLOCKED in 3250 // personalApplications. 3251 // "ALLOWLIST" - Only apps explicitly specified in 3252 // personalApplications with installType set to AVAILABLE are allowed to 3253 // be installed in the personal profile. 3254 PersonalPlayStoreMode string `json:"personalPlayStoreMode,omitempty"` 3255 3256 // ScreenCaptureDisabled: Whether screen capture is disabled. 3257 ScreenCaptureDisabled bool `json:"screenCaptureDisabled,omitempty"` 3258 3259 // ForceSendFields is a list of field names (e.g. 3260 // "AccountTypesWithManagementDisabled") to unconditionally include in 3261 // API requests. By default, fields with empty or default values are 3262 // omitted from API requests. However, any non-pointer, non-interface 3263 // field appearing in ForceSendFields will be sent to the server 3264 // regardless of whether the field is empty or not. This may be used to 3265 // include empty fields in Patch requests. 3266 ForceSendFields []string `json:"-"` 3267 3268 // NullFields is a list of field names (e.g. 3269 // "AccountTypesWithManagementDisabled") to include in API requests with 3270 // the JSON null value. By default, fields with empty values are omitted 3271 // from API requests. However, any field with an empty value appearing 3272 // in NullFields will be sent to the server as null. It is an error if a 3273 // field in this list has a non-empty value. This may be used to include 3274 // null fields in Patch requests. 3275 NullFields []string `json:"-"` 3276} 3277 3278func (s *PersonalUsagePolicies) MarshalJSON() ([]byte, error) { 3279 type NoMethod PersonalUsagePolicies 3280 raw := NoMethod(*s) 3281 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3282} 3283 3284// Policy: A policy resource represents a group of settings that govern 3285// the behavior of a managed device and the apps installed on it. 3286type Policy struct { 3287 // AccountTypesWithManagementDisabled: Account types that can't be 3288 // managed by the user. 3289 AccountTypesWithManagementDisabled []string `json:"accountTypesWithManagementDisabled,omitempty"` 3290 3291 // AddUserDisabled: Whether adding new users and profiles is disabled. 3292 AddUserDisabled bool `json:"addUserDisabled,omitempty"` 3293 3294 // AdjustVolumeDisabled: Whether adjusting the master volume is 3295 // disabled. Also mutes the device. 3296 AdjustVolumeDisabled bool `json:"adjustVolumeDisabled,omitempty"` 3297 3298 // AdvancedSecurityOverrides: Security policies set to the most secure 3299 // values by default. To maintain the security posture of a device, we 3300 // don't recommend overriding any of the default values. 3301 AdvancedSecurityOverrides *AdvancedSecurityOverrides `json:"advancedSecurityOverrides,omitempty"` 3302 3303 // AlwaysOnVpnPackage: Configuration for an always-on VPN connection. 3304 // Use with vpn_config_disabled to prevent modification of this setting. 3305 AlwaysOnVpnPackage *AlwaysOnVpnPackage `json:"alwaysOnVpnPackage,omitempty"` 3306 3307 // AndroidDevicePolicyTracks: The app tracks for Android Device Policy 3308 // the device can access. The device receives the latest version among 3309 // all accessible tracks. If no tracks are specified, then the device 3310 // only uses the production track. 3311 // 3312 // Possible values: 3313 // "APP_TRACK_UNSPECIFIED" - This value is ignored. 3314 // "PRODUCTION" - The production track, which provides the latest 3315 // stable release. 3316 // "BETA" - The beta track, which provides the latest beta release. 3317 AndroidDevicePolicyTracks []string `json:"androidDevicePolicyTracks,omitempty"` 3318 3319 // AppAutoUpdatePolicy: Deprecated. Use autoUpdateMode instead.When 3320 // autoUpdateMode is set to AUTO_UPDATE_POSTPONED or 3321 // AUTO_UPDATE_HIGH_PRIORITY, this field has no effect.The app auto 3322 // update policy, which controls when automatic app updates can be 3323 // applied. 3324 // 3325 // Possible values: 3326 // "APP_AUTO_UPDATE_POLICY_UNSPECIFIED" - The auto-update policy is 3327 // not set. Equivalent to CHOICE_TO_THE_USER. 3328 // "CHOICE_TO_THE_USER" - The user can control auto-updates. 3329 // "NEVER" - Apps are never auto-updated. 3330 // "WIFI_ONLY" - Apps are auto-updated over Wi-Fi only. 3331 // "ALWAYS" - Apps are auto-updated at any time. Data charges may 3332 // apply. 3333 AppAutoUpdatePolicy string `json:"appAutoUpdatePolicy,omitempty"` 3334 3335 // Applications: Policy applied to apps. 3336 Applications []*ApplicationPolicy `json:"applications,omitempty"` 3337 3338 // AutoDateAndTimeZone: Whether auto date, time, and time zone are 3339 // enabled on a company-owned device. If this is set, then 3340 // autoTimeRequired is ignored. 3341 // 3342 // Possible values: 3343 // "AUTO_DATE_AND_TIME_ZONE_UNSPECIFIED" - Unspecified. Defaults to 3344 // AUTO_DATE_AND_TIME_ZONE_USER_CHOICE. 3345 // "AUTO_DATE_AND_TIME_ZONE_USER_CHOICE" - Auto date, time, and time 3346 // zone are left to user's choice. 3347 // "AUTO_DATE_AND_TIME_ZONE_ENFORCED" - Enforce auto date, time, and 3348 // time zone on the device. 3349 AutoDateAndTimeZone string `json:"autoDateAndTimeZone,omitempty"` 3350 3351 // AutoTimeRequired: Whether auto time is required, which prevents the 3352 // user from manually setting the date and time. If autoDateAndTimeZone 3353 // is set, this field is ignored. 3354 AutoTimeRequired bool `json:"autoTimeRequired,omitempty"` 3355 3356 // BlockApplicationsEnabled: Whether applications other than the ones 3357 // configured in applications are blocked from being installed. When 3358 // set, applications that were installed under a previous policy but no 3359 // longer appear in the policy are automatically uninstalled. 3360 BlockApplicationsEnabled bool `json:"blockApplicationsEnabled,omitempty"` 3361 3362 // BluetoothConfigDisabled: Whether configuring bluetooth is disabled. 3363 BluetoothConfigDisabled bool `json:"bluetoothConfigDisabled,omitempty"` 3364 3365 // BluetoothContactSharingDisabled: Whether bluetooth contact sharing is 3366 // disabled. 3367 BluetoothContactSharingDisabled bool `json:"bluetoothContactSharingDisabled,omitempty"` 3368 3369 // BluetoothDisabled: Whether bluetooth is disabled. Prefer this setting 3370 // over bluetooth_config_disabled because bluetooth_config_disabled can 3371 // be bypassed by the user. 3372 BluetoothDisabled bool `json:"bluetoothDisabled,omitempty"` 3373 3374 // CameraDisabled: Whether all cameras on the device are disabled. 3375 CameraDisabled bool `json:"cameraDisabled,omitempty"` 3376 3377 // CellBroadcastsConfigDisabled: Whether configuring cell broadcast is 3378 // disabled. 3379 CellBroadcastsConfigDisabled bool `json:"cellBroadcastsConfigDisabled,omitempty"` 3380 3381 // ChoosePrivateKeyRules: Rules for determining apps' access to private 3382 // keys. See ChoosePrivateKeyRule for details. 3383 ChoosePrivateKeyRules []*ChoosePrivateKeyRule `json:"choosePrivateKeyRules,omitempty"` 3384 3385 // ComplianceRules: Rules declaring which mitigating actions to take 3386 // when a device is not compliant with its policy. When the conditions 3387 // for multiple rules are satisfied, all of the mitigating actions for 3388 // the rules are taken. There is a maximum limit of 100 rules. Use 3389 // policy enforcement rules instead. 3390 ComplianceRules []*ComplianceRule `json:"complianceRules,omitempty"` 3391 3392 // CreateWindowsDisabled: Whether creating windows besides app windows 3393 // is disabled. 3394 CreateWindowsDisabled bool `json:"createWindowsDisabled,omitempty"` 3395 3396 // CredentialsConfigDisabled: Whether configuring user credentials is 3397 // disabled. 3398 CredentialsConfigDisabled bool `json:"credentialsConfigDisabled,omitempty"` 3399 3400 // DataRoamingDisabled: Whether roaming data services are disabled. 3401 DataRoamingDisabled bool `json:"dataRoamingDisabled,omitempty"` 3402 3403 // DebuggingFeaturesAllowed: Whether the user is allowed to enable 3404 // debugging features. 3405 DebuggingFeaturesAllowed bool `json:"debuggingFeaturesAllowed,omitempty"` 3406 3407 // DefaultPermissionPolicy: The default permission policy for runtime 3408 // permission requests. 3409 // 3410 // Possible values: 3411 // "PERMISSION_POLICY_UNSPECIFIED" - Policy not specified. If no 3412 // policy is specified for a permission at any level, then the PROMPT 3413 // behavior is used by default. 3414 // "PROMPT" - Prompt the user to grant a permission. 3415 // "GRANT" - Automatically grant a permission. 3416 // "DENY" - Automatically deny a permission. 3417 DefaultPermissionPolicy string `json:"defaultPermissionPolicy,omitempty"` 3418 3419 // DeviceOwnerLockScreenInfo: The device owner information to be shown 3420 // on the lock screen. 3421 DeviceOwnerLockScreenInfo *UserFacingMessage `json:"deviceOwnerLockScreenInfo,omitempty"` 3422 3423 // EncryptionPolicy: Whether encryption is enabled 3424 // 3425 // Possible values: 3426 // "ENCRYPTION_POLICY_UNSPECIFIED" - This value is ignored, i.e. no 3427 // encryption required 3428 // "ENABLED_WITHOUT_PASSWORD" - Encryption required but no password 3429 // required to boot 3430 // "ENABLED_WITH_PASSWORD" - Encryption required with password 3431 // required to boot 3432 EncryptionPolicy string `json:"encryptionPolicy,omitempty"` 3433 3434 // EnsureVerifyAppsEnabled: Whether app verification is force-enabled. 3435 EnsureVerifyAppsEnabled bool `json:"ensureVerifyAppsEnabled,omitempty"` 3436 3437 // FactoryResetDisabled: Whether factory resetting from settings is 3438 // disabled. 3439 FactoryResetDisabled bool `json:"factoryResetDisabled,omitempty"` 3440 3441 // FrpAdminEmails: Email addresses of device administrators for factory 3442 // reset protection. When the device is factory reset, it will require 3443 // one of these admins to log in with the Google account email and 3444 // password to unlock the device. If no admins are specified, the device 3445 // won't provide factory reset protection. 3446 FrpAdminEmails []string `json:"frpAdminEmails,omitempty"` 3447 3448 // FunDisabled: Whether the user is allowed to have fun. Controls 3449 // whether the Easter egg game in Settings is disabled. 3450 FunDisabled bool `json:"funDisabled,omitempty"` 3451 3452 // InstallAppsDisabled: Whether user installation of apps is disabled. 3453 InstallAppsDisabled bool `json:"installAppsDisabled,omitempty"` 3454 3455 // InstallUnknownSourcesAllowed: This field has no effect. 3456 InstallUnknownSourcesAllowed bool `json:"installUnknownSourcesAllowed,omitempty"` 3457 3458 // KeyguardDisabled: Whether the keyguard is disabled. 3459 KeyguardDisabled bool `json:"keyguardDisabled,omitempty"` 3460 3461 // KeyguardDisabledFeatures: Disabled keyguard customizations, such as 3462 // widgets. 3463 // 3464 // Possible values: 3465 // "KEYGUARD_DISABLED_FEATURE_UNSPECIFIED" - This value is ignored. 3466 // "CAMERA" - Disable the camera on secure keyguard screens (e.g. 3467 // PIN). 3468 // "NOTIFICATIONS" - Disable showing all notifications on secure 3469 // keyguard screens. 3470 // "UNREDACTED_NOTIFICATIONS" - Disable unredacted notifications on 3471 // secure keyguard screens. 3472 // "TRUST_AGENTS" - Ignore trust agent state on secure keyguard 3473 // screens. 3474 // "DISABLE_FINGERPRINT" - Disable fingerprint sensor on secure 3475 // keyguard screens. 3476 // "DISABLE_REMOTE_INPUT" - Disable text entry into notifications on 3477 // secure keyguard screens. 3478 // "FACE" - Disable face authentication on secure keyguard screens. 3479 // "IRIS" - Disable iris authentication on secure keyguard screens. 3480 // "BIOMETRICS" - Disable all biometric authentication on secure 3481 // keyguard screens. 3482 // "ALL_FEATURES" - Disable all current and future keyguard 3483 // customizations. 3484 KeyguardDisabledFeatures []string `json:"keyguardDisabledFeatures,omitempty"` 3485 3486 // KioskCustomLauncherEnabled: Whether the kiosk custom launcher is 3487 // enabled. This replaces the home screen with a launcher that locks 3488 // down the device to the apps installed via the applications setting. 3489 // Apps appear on a single page in alphabetical order. Use 3490 // kioskCustomization to further configure the kiosk device behavior. 3491 KioskCustomLauncherEnabled bool `json:"kioskCustomLauncherEnabled,omitempty"` 3492 3493 // KioskCustomization: Settings controlling the behavior of a device in 3494 // kiosk mode. To enable kiosk mode, set kioskCustomLauncherEnabled to 3495 // true or specify an app in the policy with installType KIOSK. 3496 KioskCustomization *KioskCustomization `json:"kioskCustomization,omitempty"` 3497 3498 // LocationMode: The degree of location detection enabled. 3499 // 3500 // Possible values: 3501 // "LOCATION_MODE_UNSPECIFIED" - Defaults to LOCATION_USER_CHOICE. 3502 // "HIGH_ACCURACY" - On Android 8 and below, all location detection 3503 // methods are enabled, including GPS, networks, and other sensors. On 3504 // Android 9 and above, this is equivalent to LOCATION_ENFORCED. 3505 // "SENSORS_ONLY" - On Android 8 and below, only GPS and other sensors 3506 // are enabled. On Android 9 and above, this is equivalent to 3507 // LOCATION_ENFORCED. 3508 // "BATTERY_SAVING" - On Android 8 and below, only the network 3509 // location provider is enabled. On Android 9 and above, this is 3510 // equivalent to LOCATION_ENFORCED. 3511 // "OFF" - On Android 8 and below, location setting and accuracy are 3512 // disabled. On Android 9 and above, this is equivalent to 3513 // LOCATION_DISABLED. 3514 // "LOCATION_USER_CHOICE" - Location setting is not restricted on the 3515 // device. No specific behavior is set or enforced. 3516 // "LOCATION_ENFORCED" - Enable location setting on the device. 3517 // "LOCATION_DISABLED" - Disable location setting on the device. 3518 LocationMode string `json:"locationMode,omitempty"` 3519 3520 // LongSupportMessage: A message displayed to the user in the device 3521 // administators settings screen. 3522 LongSupportMessage *UserFacingMessage `json:"longSupportMessage,omitempty"` 3523 3524 // MaximumTimeToLock: Maximum time in milliseconds for user activity 3525 // until the device locks. A value of 0 means there is no restriction. 3526 MaximumTimeToLock int64 `json:"maximumTimeToLock,omitempty,string"` 3527 3528 // MinimumApiLevel: The minimum allowed Android API level. 3529 MinimumApiLevel int64 `json:"minimumApiLevel,omitempty"` 3530 3531 // MobileNetworksConfigDisabled: Whether configuring mobile networks is 3532 // disabled. 3533 MobileNetworksConfigDisabled bool `json:"mobileNetworksConfigDisabled,omitempty"` 3534 3535 // ModifyAccountsDisabled: Whether adding or removing accounts is 3536 // disabled. 3537 ModifyAccountsDisabled bool `json:"modifyAccountsDisabled,omitempty"` 3538 3539 // MountPhysicalMediaDisabled: Whether the user mounting physical 3540 // external media is disabled. 3541 MountPhysicalMediaDisabled bool `json:"mountPhysicalMediaDisabled,omitempty"` 3542 3543 // Name: The name of the policy in the form 3544 // enterprises/{enterpriseId}/policies/{policyId}. 3545 Name string `json:"name,omitempty"` 3546 3547 // NetworkEscapeHatchEnabled: Whether the network escape hatch is 3548 // enabled. If a network connection can't be made at boot time, the 3549 // escape hatch prompts the user to temporarily connect to a network in 3550 // order to refresh the device policy. After applying policy, the 3551 // temporary network will be forgotten and the device will continue 3552 // booting. This prevents being unable to connect to a network if there 3553 // is no suitable network in the last policy and the device boots into 3554 // an app in lock task mode, or the user is otherwise unable to reach 3555 // device settings.Note: Setting wifiConfigDisabled to true will 3556 // override this setting under specific circumstances. Please see 3557 // wifiConfigDisabled for further details. 3558 NetworkEscapeHatchEnabled bool `json:"networkEscapeHatchEnabled,omitempty"` 3559 3560 // NetworkResetDisabled: Whether resetting network settings is disabled. 3561 NetworkResetDisabled bool `json:"networkResetDisabled,omitempty"` 3562 3563 // OncCertificateProviders: This feature is not generally available. 3564 OncCertificateProviders []*OncCertificateProvider `json:"oncCertificateProviders,omitempty"` 3565 3566 // OpenNetworkConfiguration: Network configuration for the device. See 3567 // configure networks for more information. 3568 OpenNetworkConfiguration googleapi.RawMessage `json:"openNetworkConfiguration,omitempty"` 3569 3570 // OutgoingBeamDisabled: Whether using NFC to beam data from apps is 3571 // disabled. 3572 OutgoingBeamDisabled bool `json:"outgoingBeamDisabled,omitempty"` 3573 3574 // OutgoingCallsDisabled: Whether outgoing calls are disabled. 3575 OutgoingCallsDisabled bool `json:"outgoingCallsDisabled,omitempty"` 3576 3577 // PasswordPolicies: Password requirement policies. Different policies 3578 // can be set for work profile or fully managed devices by setting the 3579 // password_scope field in the policy. 3580 PasswordPolicies []*PasswordRequirements `json:"passwordPolicies,omitempty"` 3581 3582 // PasswordRequirements: Password requirements. The field 3583 // password_requirements.require_password_unlock must not be set. 3584 // DEPRECATED - Use password_policies.Note:Complexity-based values of 3585 // PasswordQuality, that is, COMPLEXITY_LOW, COMPLEXITY_MEDIUM, and 3586 // COMPLEXITY_HIGH, cannot be used here. 3587 PasswordRequirements *PasswordRequirements `json:"passwordRequirements,omitempty"` 3588 3589 // PermissionGrants: Explicit permission or group grants or denials for 3590 // all apps. These values override the default_permission_policy. 3591 PermissionGrants []*PermissionGrant `json:"permissionGrants,omitempty"` 3592 3593 // PermittedAccessibilityServices: Specifies permitted accessibility 3594 // services. If the field is not set, any accessibility service can be 3595 // used. If the field is set, only the accessibility services in this 3596 // list and the system's built-in accessibility service can be used. In 3597 // particular, if the field is set to empty, only the system's built-in 3598 // accessibility servicess can be used. 3599 PermittedAccessibilityServices *PackageNameList `json:"permittedAccessibilityServices,omitempty"` 3600 3601 // PermittedInputMethods: If present, only the input methods provided by 3602 // packages in this list are permitted. If this field is present, but 3603 // the list is empty, then only system input methods are permitted. 3604 PermittedInputMethods *PackageNameList `json:"permittedInputMethods,omitempty"` 3605 3606 // PersistentPreferredActivities: Default intent handler activities. 3607 PersistentPreferredActivities []*PersistentPreferredActivity `json:"persistentPreferredActivities,omitempty"` 3608 3609 // PersonalUsagePolicies: Policies managing personal usage on a 3610 // company-owned device. 3611 PersonalUsagePolicies *PersonalUsagePolicies `json:"personalUsagePolicies,omitempty"` 3612 3613 // PlayStoreMode: This mode controls which apps are available to the 3614 // user in the Play Store and the behavior on the device when apps are 3615 // removed from the policy. 3616 // 3617 // Possible values: 3618 // "PLAY_STORE_MODE_UNSPECIFIED" - Unspecified. Defaults to WHITELIST. 3619 // "WHITELIST" - Only apps that are in the policy are available and 3620 // any app not in the policy will be automatically uninstalled from the 3621 // device. 3622 // "BLACKLIST" - All apps are available and any app that should not be 3623 // on the device should be explicitly marked as 'BLOCKED' in the 3624 // applications policy. 3625 PlayStoreMode string `json:"playStoreMode,omitempty"` 3626 3627 // PolicyEnforcementRules: Rules that define the behavior when a 3628 // particular policy can not be applied on device 3629 PolicyEnforcementRules []*PolicyEnforcementRule `json:"policyEnforcementRules,omitempty"` 3630 3631 // PrivateKeySelectionEnabled: Allows showing UI on a device for a user 3632 // to choose a private key alias if there are no matching rules in 3633 // ChoosePrivateKeyRules. For devices below Android P, setting this may 3634 // leave enterprise keys vulnerable. 3635 PrivateKeySelectionEnabled bool `json:"privateKeySelectionEnabled,omitempty"` 3636 3637 // RecommendedGlobalProxy: The network-independent global HTTP proxy. 3638 // Typically proxies should be configured per-network in 3639 // open_network_configuration. However for unusual configurations like 3640 // general internal filtering a global HTTP proxy may be useful. If the 3641 // proxy is not accessible, network access may break. The global proxy 3642 // is only a recommendation and some apps may ignore it. 3643 RecommendedGlobalProxy *ProxyInfo `json:"recommendedGlobalProxy,omitempty"` 3644 3645 // RemoveUserDisabled: Whether removing other users is disabled. 3646 RemoveUserDisabled bool `json:"removeUserDisabled,omitempty"` 3647 3648 // SafeBootDisabled: Whether rebooting the device into safe boot is 3649 // disabled. 3650 SafeBootDisabled bool `json:"safeBootDisabled,omitempty"` 3651 3652 // ScreenCaptureDisabled: Whether screen capture is disabled. 3653 ScreenCaptureDisabled bool `json:"screenCaptureDisabled,omitempty"` 3654 3655 // SetUserIconDisabled: Whether changing the user icon is disabled. 3656 SetUserIconDisabled bool `json:"setUserIconDisabled,omitempty"` 3657 3658 // SetWallpaperDisabled: Whether changing the wallpaper is disabled. 3659 SetWallpaperDisabled bool `json:"setWallpaperDisabled,omitempty"` 3660 3661 // SetupActions: Actions to take during the setup process. 3662 SetupActions []*SetupAction `json:"setupActions,omitempty"` 3663 3664 // ShareLocationDisabled: Whether location sharing is disabled. 3665 ShareLocationDisabled bool `json:"shareLocationDisabled,omitempty"` 3666 3667 // ShortSupportMessage: A message displayed to the user in the settings 3668 // screen wherever functionality has been disabled by the admin. If the 3669 // message is longer than 200 characters it may be truncated. 3670 ShortSupportMessage *UserFacingMessage `json:"shortSupportMessage,omitempty"` 3671 3672 // SkipFirstUseHintsEnabled: Flag to skip hints on the first use. 3673 // Enterprise admin can enable the system recommendation for apps to 3674 // skip their user tutorial and other introductory hints on first 3675 // start-up. 3676 SkipFirstUseHintsEnabled bool `json:"skipFirstUseHintsEnabled,omitempty"` 3677 3678 // SmsDisabled: Whether sending and receiving SMS messages is disabled. 3679 SmsDisabled bool `json:"smsDisabled,omitempty"` 3680 3681 // StatusBarDisabled: Whether the status bar is disabled. This disables 3682 // notifications, quick settings, and other screen overlays that allow 3683 // escape from full-screen mode. DEPRECATED. To disable the status bar 3684 // on a kiosk device, use InstallType KIOSK or 3685 // kioskCustomLauncherEnabled. 3686 StatusBarDisabled bool `json:"statusBarDisabled,omitempty"` 3687 3688 // StatusReportingSettings: Status reporting settings 3689 StatusReportingSettings *StatusReportingSettings `json:"statusReportingSettings,omitempty"` 3690 3691 // StayOnPluggedModes: The battery plugged in modes for which the device 3692 // stays on. When using this setting, it is recommended to clear 3693 // maximum_time_to_lock so that the device doesn't lock itself while it 3694 // stays on. 3695 // 3696 // Possible values: 3697 // "BATTERY_PLUGGED_MODE_UNSPECIFIED" - This value is ignored. 3698 // "AC" - Power source is an AC charger. 3699 // "USB" - Power source is a USB port. 3700 // "WIRELESS" - Power source is wireless. 3701 StayOnPluggedModes []string `json:"stayOnPluggedModes,omitempty"` 3702 3703 // SystemUpdate: The system update policy, which controls how OS updates 3704 // are applied. If the update type is WINDOWED, the update window will 3705 // automatically apply to Play app updates as well. 3706 SystemUpdate *SystemUpdate `json:"systemUpdate,omitempty"` 3707 3708 // TetheringConfigDisabled: Whether configuring tethering and portable 3709 // hotspots is disabled. 3710 TetheringConfigDisabled bool `json:"tetheringConfigDisabled,omitempty"` 3711 3712 // UninstallAppsDisabled: Whether user uninstallation of applications is 3713 // disabled. 3714 UninstallAppsDisabled bool `json:"uninstallAppsDisabled,omitempty"` 3715 3716 // UnmuteMicrophoneDisabled: Whether the microphone is muted and 3717 // adjusting microphone volume is disabled. 3718 UnmuteMicrophoneDisabled bool `json:"unmuteMicrophoneDisabled,omitempty"` 3719 3720 // UsbFileTransferDisabled: Whether transferring files over USB is 3721 // disabled. 3722 UsbFileTransferDisabled bool `json:"usbFileTransferDisabled,omitempty"` 3723 3724 // UsbMassStorageEnabled: Whether USB storage is enabled. Deprecated. 3725 UsbMassStorageEnabled bool `json:"usbMassStorageEnabled,omitempty"` 3726 3727 // Version: The version of the policy. This is a read-only field. The 3728 // version is incremented each time the policy is updated. 3729 Version int64 `json:"version,omitempty,string"` 3730 3731 // VpnConfigDisabled: Whether configuring VPN is disabled. 3732 VpnConfigDisabled bool `json:"vpnConfigDisabled,omitempty"` 3733 3734 // WifiConfigDisabled: Whether configuring Wi-Fi access points is 3735 // disabled.Note: If a network connection can't be made at boot time and 3736 // configuring Wi-Fi is disabled then network escape hatch will be shown 3737 // in order to refresh the device policy (see 3738 // networkEscapeHatchEnabled). 3739 WifiConfigDisabled bool `json:"wifiConfigDisabled,omitempty"` 3740 3741 // WifiConfigsLockdownEnabled: DEPRECATED - Use wifi_config_disabled. 3742 WifiConfigsLockdownEnabled bool `json:"wifiConfigsLockdownEnabled,omitempty"` 3743 3744 // ServerResponse contains the HTTP response code and headers from the 3745 // server. 3746 googleapi.ServerResponse `json:"-"` 3747 3748 // ForceSendFields is a list of field names (e.g. 3749 // "AccountTypesWithManagementDisabled") to unconditionally include in 3750 // API requests. By default, fields with empty or default values are 3751 // omitted from API requests. However, any non-pointer, non-interface 3752 // field appearing in ForceSendFields will be sent to the server 3753 // regardless of whether the field is empty or not. This may be used to 3754 // include empty fields in Patch requests. 3755 ForceSendFields []string `json:"-"` 3756 3757 // NullFields is a list of field names (e.g. 3758 // "AccountTypesWithManagementDisabled") to include in API requests with 3759 // the JSON null value. By default, fields with empty values are omitted 3760 // from API requests. However, any field with an empty value appearing 3761 // in NullFields will be sent to the server as null. It is an error if a 3762 // field in this list has a non-empty value. This may be used to include 3763 // null fields in Patch requests. 3764 NullFields []string `json:"-"` 3765} 3766 3767func (s *Policy) MarshalJSON() ([]byte, error) { 3768 type NoMethod Policy 3769 raw := NoMethod(*s) 3770 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3771} 3772 3773// PolicyEnforcementRule: A rule that defines the actions to take if a 3774// device or work profile is not compliant with the policy specified in 3775// settingName. 3776type PolicyEnforcementRule struct { 3777 // BlockAction: An action to block access to apps and data on a fully 3778 // managed device or in a work profile. This action also triggers a 3779 // user-facing notification with information (where possible) on how to 3780 // correct the compliance issue. Note: wipeAction must also be 3781 // specified. 3782 BlockAction *BlockAction `json:"blockAction,omitempty"` 3783 3784 // SettingName: The top-level policy to enforce. For example, 3785 // applications or passwordPolicies. 3786 SettingName string `json:"settingName,omitempty"` 3787 3788 // WipeAction: An action to reset a fully managed device or delete a 3789 // work profile. Note: blockAction must also be specified. 3790 WipeAction *WipeAction `json:"wipeAction,omitempty"` 3791 3792 // ForceSendFields is a list of field names (e.g. "BlockAction") to 3793 // unconditionally include in API requests. By default, fields with 3794 // empty or default values are omitted from API requests. However, any 3795 // non-pointer, non-interface field appearing in ForceSendFields will be 3796 // sent to the server regardless of whether the field is empty or not. 3797 // This may be used to include empty fields in Patch requests. 3798 ForceSendFields []string `json:"-"` 3799 3800 // NullFields is a list of field names (e.g. "BlockAction") to include 3801 // in API requests with the JSON null value. By default, fields with 3802 // empty values are omitted from API requests. However, any field with 3803 // an empty value appearing in NullFields will be sent to the server as 3804 // null. It is an error if a field in this list has a non-empty value. 3805 // This may be used to include null fields in Patch requests. 3806 NullFields []string `json:"-"` 3807} 3808 3809func (s *PolicyEnforcementRule) MarshalJSON() ([]byte, error) { 3810 type NoMethod PolicyEnforcementRule 3811 raw := NoMethod(*s) 3812 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3813} 3814 3815// PostureDetail: Additional details regarding the security posture of 3816// the device. 3817type PostureDetail struct { 3818 // Advice: Corresponding admin-facing advice to mitigate this security 3819 // risk and improve the security posture of the device. 3820 Advice []*UserFacingMessage `json:"advice,omitempty"` 3821 3822 // SecurityRisk: A specific security risk that negatively affects the 3823 // security posture of the device. 3824 // 3825 // Possible values: 3826 // "SECURITY_RISK_UNSPECIFIED" - Unspecified. 3827 // "UNKNOWN_OS" - SafetyNet detects that the device is running an 3828 // unknown OS (basicIntegrity check succeeds but ctsProfileMatch fails). 3829 // "COMPROMISED_OS" - SafetyNet detects that the device is running a 3830 // compromised OS (basicIntegrity check fails). 3831 SecurityRisk string `json:"securityRisk,omitempty"` 3832 3833 // ForceSendFields is a list of field names (e.g. "Advice") to 3834 // unconditionally include in API requests. By default, fields with 3835 // empty or default values are omitted from API requests. However, any 3836 // non-pointer, non-interface field appearing in ForceSendFields will be 3837 // sent to the server regardless of whether the field is empty or not. 3838 // This may be used to include empty fields in Patch requests. 3839 ForceSendFields []string `json:"-"` 3840 3841 // NullFields is a list of field names (e.g. "Advice") to include in API 3842 // requests with the JSON null value. By default, fields with empty 3843 // values are omitted from API requests. However, any field with an 3844 // empty value appearing in NullFields will be sent to the server as 3845 // null. It is an error if a field in this list has a non-empty value. 3846 // This may be used to include null fields in Patch requests. 3847 NullFields []string `json:"-"` 3848} 3849 3850func (s *PostureDetail) MarshalJSON() ([]byte, error) { 3851 type NoMethod PostureDetail 3852 raw := NoMethod(*s) 3853 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3854} 3855 3856// PowerManagementEvent: A power management event. 3857type PowerManagementEvent struct { 3858 // BatteryLevel: For BATTERY_LEVEL_COLLECTED events, the battery level 3859 // as a percentage. 3860 BatteryLevel float64 `json:"batteryLevel,omitempty"` 3861 3862 // CreateTime: The creation time of the event. 3863 CreateTime string `json:"createTime,omitempty"` 3864 3865 // EventType: Event type. 3866 // 3867 // Possible values: 3868 // "POWER_MANAGEMENT_EVENT_TYPE_UNSPECIFIED" - Unspecified. No events 3869 // have this type. 3870 // "BATTERY_LEVEL_COLLECTED" - Battery level was measured. 3871 // "POWER_CONNECTED" - The device started charging. 3872 // "POWER_DISCONNECTED" - The device stopped charging. 3873 // "BATTERY_LOW" - The device entered low-power mode. 3874 // "BATTERY_OKAY" - The device exited low-power mode. 3875 // "BOOT_COMPLETED" - The device booted. 3876 // "SHUTDOWN" - The device shut down. 3877 EventType string `json:"eventType,omitempty"` 3878 3879 // ForceSendFields is a list of field names (e.g. "BatteryLevel") to 3880 // unconditionally include in API requests. By default, fields with 3881 // empty or default values are omitted from API requests. However, any 3882 // non-pointer, non-interface field appearing in ForceSendFields will be 3883 // sent to the server regardless of whether the field is empty or not. 3884 // This may be used to include empty fields in Patch requests. 3885 ForceSendFields []string `json:"-"` 3886 3887 // NullFields is a list of field names (e.g. "BatteryLevel") to include 3888 // in API requests with the JSON null value. By default, fields with 3889 // empty values are omitted from API requests. However, any field with 3890 // an empty value appearing in NullFields will be sent to the server as 3891 // null. It is an error if a field in this list has a non-empty value. 3892 // This may be used to include null fields in Patch requests. 3893 NullFields []string `json:"-"` 3894} 3895 3896func (s *PowerManagementEvent) MarshalJSON() ([]byte, error) { 3897 type NoMethod PowerManagementEvent 3898 raw := NoMethod(*s) 3899 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3900} 3901 3902func (s *PowerManagementEvent) UnmarshalJSON(data []byte) error { 3903 type NoMethod PowerManagementEvent 3904 var s1 struct { 3905 BatteryLevel gensupport.JSONFloat64 `json:"batteryLevel"` 3906 *NoMethod 3907 } 3908 s1.NoMethod = (*NoMethod)(s) 3909 if err := json.Unmarshal(data, &s1); err != nil { 3910 return err 3911 } 3912 s.BatteryLevel = float64(s1.BatteryLevel) 3913 return nil 3914} 3915 3916// ProxyInfo: Configuration info for an HTTP proxy. For a direct proxy, 3917// set the host, port, and excluded_hosts fields. For a PAC script 3918// proxy, set the pac_uri field. 3919type ProxyInfo struct { 3920 // ExcludedHosts: For a direct proxy, the hosts for which the proxy is 3921 // bypassed. The host names may contain wildcards such as *.example.com. 3922 ExcludedHosts []string `json:"excludedHosts,omitempty"` 3923 3924 // Host: The host of the direct proxy. 3925 Host string `json:"host,omitempty"` 3926 3927 // PacUri: The URI of the PAC script used to configure the proxy. 3928 PacUri string `json:"pacUri,omitempty"` 3929 3930 // Port: The port of the direct proxy. 3931 Port int64 `json:"port,omitempty"` 3932 3933 // ForceSendFields is a list of field names (e.g. "ExcludedHosts") to 3934 // unconditionally include in API requests. By default, fields with 3935 // empty or default values are omitted from API requests. However, any 3936 // non-pointer, non-interface field appearing in ForceSendFields will be 3937 // sent to the server regardless of whether the field is empty or not. 3938 // This may be used to include empty fields in Patch requests. 3939 ForceSendFields []string `json:"-"` 3940 3941 // NullFields is a list of field names (e.g. "ExcludedHosts") to include 3942 // in API requests with the JSON null value. By default, fields with 3943 // empty values are omitted from API requests. However, any field with 3944 // an empty value appearing in NullFields will be sent to the server as 3945 // null. It is an error if a field in this list has a non-empty value. 3946 // This may be used to include null fields in Patch requests. 3947 NullFields []string `json:"-"` 3948} 3949 3950func (s *ProxyInfo) MarshalJSON() ([]byte, error) { 3951 type NoMethod ProxyInfo 3952 raw := NoMethod(*s) 3953 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3954} 3955 3956// SecurityPosture: The security posture of the device, as determined by 3957// the current device state and the policies applied. 3958type SecurityPosture struct { 3959 // DevicePosture: Device's security posture value. 3960 // 3961 // Possible values: 3962 // "POSTURE_UNSPECIFIED" - Unspecified. There is no posture detail for 3963 // this posture value. 3964 // "SECURE" - This device is secure. 3965 // "AT_RISK" - This device may be more vulnerable to malicious actors 3966 // than is recommended for use with corporate data. 3967 // "POTENTIALLY_COMPROMISED" - This device may be compromised and 3968 // corporate data may be accessible to unauthorized actors. 3969 DevicePosture string `json:"devicePosture,omitempty"` 3970 3971 // PostureDetails: Additional details regarding the security posture of 3972 // the device. 3973 PostureDetails []*PostureDetail `json:"postureDetails,omitempty"` 3974 3975 // ForceSendFields is a list of field names (e.g. "DevicePosture") to 3976 // unconditionally include in API requests. By default, fields with 3977 // empty or default values are omitted from API requests. However, any 3978 // non-pointer, non-interface field appearing in ForceSendFields will be 3979 // sent to the server regardless of whether the field is empty or not. 3980 // This may be used to include empty fields in Patch requests. 3981 ForceSendFields []string `json:"-"` 3982 3983 // NullFields is a list of field names (e.g. "DevicePosture") to include 3984 // in API requests with the JSON null value. By default, fields with 3985 // empty values are omitted from API requests. However, any field with 3986 // an empty value appearing in NullFields will be sent to the server as 3987 // null. It is an error if a field in this list has a non-empty value. 3988 // This may be used to include null fields in Patch requests. 3989 NullFields []string `json:"-"` 3990} 3991 3992func (s *SecurityPosture) MarshalJSON() ([]byte, error) { 3993 type NoMethod SecurityPosture 3994 raw := NoMethod(*s) 3995 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3996} 3997 3998// SetupAction: An action executed during setup. 3999type SetupAction struct { 4000 // Description: Description of this action. 4001 Description *UserFacingMessage `json:"description,omitempty"` 4002 4003 // LaunchApp: An action to launch an app. 4004 LaunchApp *LaunchAppAction `json:"launchApp,omitempty"` 4005 4006 // Title: Title of this action. 4007 Title *UserFacingMessage `json:"title,omitempty"` 4008 4009 // ForceSendFields is a list of field names (e.g. "Description") to 4010 // unconditionally include in API requests. By default, fields with 4011 // empty or default values are omitted from API requests. However, any 4012 // non-pointer, non-interface field appearing in ForceSendFields will be 4013 // sent to the server regardless of whether the field is empty or not. 4014 // This may be used to include empty fields in Patch requests. 4015 ForceSendFields []string `json:"-"` 4016 4017 // NullFields is a list of field names (e.g. "Description") to include 4018 // in API requests with the JSON null value. By default, fields with 4019 // empty values are omitted from API requests. However, any field with 4020 // an empty value appearing in NullFields will be sent to the server as 4021 // null. It is an error if a field in this list has a non-empty value. 4022 // This may be used to include null fields in Patch requests. 4023 NullFields []string `json:"-"` 4024} 4025 4026func (s *SetupAction) MarshalJSON() ([]byte, error) { 4027 type NoMethod SetupAction 4028 raw := NoMethod(*s) 4029 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4030} 4031 4032// SigninDetail: A resource containing sign in details for an 4033// enterprise. 4034type SigninDetail struct { 4035 // AllowPersonalUsage: Controls whether personal usage is allowed on a 4036 // device provisioned with this enrollment token.For company-owned 4037 // devices: Enabling personal usage allows the user to set up a work 4038 // profile on the device. Disabling personal usage requires the user 4039 // provision the device as a fully managed device.For personally-owned 4040 // devices: Enabling personal usage allows the user to set up a work 4041 // profile on the device. Disabling personal usage will prevent the 4042 // device from provisioning. Personal usage cannot be disabled on 4043 // personally-owned device. 4044 // 4045 // Possible values: 4046 // "ALLOW_PERSONAL_USAGE_UNSPECIFIED" - Personal usage restriction is 4047 // not specified 4048 // "PERSONAL_USAGE_ALLOWED" - Personal usage is allowed 4049 // "PERSONAL_USAGE_DISALLOWED" - Personal usage is disallowed 4050 AllowPersonalUsage string `json:"allowPersonalUsage,omitempty"` 4051 4052 // QrCode: A JSON string whose UTF-8 representation can be used to 4053 // generate a QR code to enroll a device with this enrollment token. To 4054 // enroll a device using NFC, the NFC record must contain a serialized 4055 // java.util.Properties representation of the properties in the JSON. 4056 // This is a read-only field generated by the server. 4057 QrCode string `json:"qrCode,omitempty"` 4058 4059 // SigninEnrollmentToken: An enterprise wide enrollment token used to 4060 // trigger custom sign-in flow. This is a read-only field generated by 4061 // the server. 4062 SigninEnrollmentToken string `json:"signinEnrollmentToken,omitempty"` 4063 4064 // SigninUrl: Sign-in URL for authentication when device is provisioned 4065 // with a sign-in enrollment token. The sign-in endpoint should finish 4066 // authentication flow with a URL in the form of 4067 // https://enterprise.google.com/android/enroll?et= for a successful 4068 // login, or https://enterprise.google.com/android/enroll/invalid for a 4069 // failed login. 4070 SigninUrl string `json:"signinUrl,omitempty"` 4071 4072 // ForceSendFields is a list of field names (e.g. "AllowPersonalUsage") 4073 // to unconditionally include in API requests. By default, fields with 4074 // empty or default values are omitted from API requests. However, any 4075 // non-pointer, non-interface field appearing in ForceSendFields will be 4076 // sent to the server regardless of whether the field is empty or not. 4077 // This may be used to include empty fields in Patch requests. 4078 ForceSendFields []string `json:"-"` 4079 4080 // NullFields is a list of field names (e.g. "AllowPersonalUsage") to 4081 // include in API requests with the JSON null value. By default, fields 4082 // with empty values are omitted from API requests. However, any field 4083 // with an empty value appearing in NullFields will be sent to the 4084 // server as null. It is an error if a field in this list has a 4085 // non-empty value. This may be used to include null fields in Patch 4086 // requests. 4087 NullFields []string `json:"-"` 4088} 4089 4090func (s *SigninDetail) MarshalJSON() ([]byte, error) { 4091 type NoMethod SigninDetail 4092 raw := NoMethod(*s) 4093 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4094} 4095 4096// SignupUrl: An enterprise signup URL. 4097type SignupUrl struct { 4098 // Name: The name of the resource. Use this value in the signupUrl field 4099 // when calling enterprises.create to complete the enterprise signup 4100 // flow. 4101 Name string `json:"name,omitempty"` 4102 4103 // Url: A URL where an enterprise admin can register their enterprise. 4104 // The page can't be rendered in an iframe. 4105 Url string `json:"url,omitempty"` 4106 4107 // ServerResponse contains the HTTP response code and headers from the 4108 // server. 4109 googleapi.ServerResponse `json:"-"` 4110 4111 // ForceSendFields is a list of field names (e.g. "Name") to 4112 // unconditionally include in API requests. By default, fields with 4113 // empty or default values are omitted from API requests. However, any 4114 // non-pointer, non-interface field appearing in ForceSendFields will be 4115 // sent to the server regardless of whether the field is empty or not. 4116 // This may be used to include empty fields in Patch requests. 4117 ForceSendFields []string `json:"-"` 4118 4119 // NullFields is a list of field names (e.g. "Name") to include in API 4120 // requests with the JSON null value. By default, fields with empty 4121 // values are omitted from API requests. However, any field with an 4122 // empty value appearing in NullFields will be sent to the server as 4123 // null. It is an error if a field in this list has a non-empty value. 4124 // This may be used to include null fields in Patch requests. 4125 NullFields []string `json:"-"` 4126} 4127 4128func (s *SignupUrl) MarshalJSON() ([]byte, error) { 4129 type NoMethod SignupUrl 4130 raw := NoMethod(*s) 4131 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4132} 4133 4134// SoftwareInfo: Information about device software. 4135type SoftwareInfo struct { 4136 // AndroidBuildNumber: Android build ID string meant for displaying to 4137 // the user. For example, shamu-userdebug 6.0.1 MOB30I 2756745 dev-keys. 4138 AndroidBuildNumber string `json:"androidBuildNumber,omitempty"` 4139 4140 // AndroidBuildTime: Build time. 4141 AndroidBuildTime string `json:"androidBuildTime,omitempty"` 4142 4143 // AndroidDevicePolicyVersionCode: The Android Device Policy app version 4144 // code. 4145 AndroidDevicePolicyVersionCode int64 `json:"androidDevicePolicyVersionCode,omitempty"` 4146 4147 // AndroidDevicePolicyVersionName: The Android Device Policy app version 4148 // as displayed to the user. 4149 AndroidDevicePolicyVersionName string `json:"androidDevicePolicyVersionName,omitempty"` 4150 4151 // AndroidVersion: The user-visible Android version string. For example, 4152 // 6.0.1. 4153 AndroidVersion string `json:"androidVersion,omitempty"` 4154 4155 // BootloaderVersion: The system bootloader version number, e.g. 0.6.7. 4156 BootloaderVersion string `json:"bootloaderVersion,omitempty"` 4157 4158 // DeviceBuildSignature: SHA-256 hash of android.content.pm.Signature 4159 // (https://developer.android.com/reference/android/content/pm/Signature.html) 4160 // associated with the system package, which can be used to verify that 4161 // the system build hasn't been modified. 4162 DeviceBuildSignature string `json:"deviceBuildSignature,omitempty"` 4163 4164 // DeviceKernelVersion: Kernel version, for example, 2.6.32.9-g103d848. 4165 DeviceKernelVersion string `json:"deviceKernelVersion,omitempty"` 4166 4167 // PrimaryLanguageCode: An IETF BCP 47 language code for the primary 4168 // locale on the device. 4169 PrimaryLanguageCode string `json:"primaryLanguageCode,omitempty"` 4170 4171 // SecurityPatchLevel: Security patch level, e.g. 2016-05-01. 4172 SecurityPatchLevel string `json:"securityPatchLevel,omitempty"` 4173 4174 // SystemUpdateInfo: Information about a potential pending system 4175 // update. 4176 SystemUpdateInfo *SystemUpdateInfo `json:"systemUpdateInfo,omitempty"` 4177 4178 // ForceSendFields is a list of field names (e.g. "AndroidBuildNumber") 4179 // to unconditionally include in API requests. By default, fields with 4180 // empty or default values are omitted from API requests. However, any 4181 // non-pointer, non-interface field appearing in ForceSendFields will be 4182 // sent to the server regardless of whether the field is empty or not. 4183 // This may be used to include empty fields in Patch requests. 4184 ForceSendFields []string `json:"-"` 4185 4186 // NullFields is a list of field names (e.g. "AndroidBuildNumber") to 4187 // include in API requests with the JSON null value. By default, fields 4188 // with empty values are omitted from API requests. However, any field 4189 // with an empty value appearing in NullFields will be sent to the 4190 // server as null. It is an error if a field in this list has a 4191 // non-empty value. This may be used to include null fields in Patch 4192 // requests. 4193 NullFields []string `json:"-"` 4194} 4195 4196func (s *SoftwareInfo) MarshalJSON() ([]byte, error) { 4197 type NoMethod SoftwareInfo 4198 raw := NoMethod(*s) 4199 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4200} 4201 4202// Status: The Status type defines a logical error model that is 4203// suitable for different programming environments, including REST APIs 4204// and RPC APIs. It is used by gRPC (https://github.com/grpc). Each 4205// Status message contains three pieces of data: error code, error 4206// message, and error details.You can find out more about this error 4207// model and how to work with it in the API Design Guide 4208// (https://cloud.google.com/apis/design/errors). 4209type Status struct { 4210 // Code: The status code, which should be an enum value of 4211 // google.rpc.Code. 4212 Code int64 `json:"code,omitempty"` 4213 4214 // Details: A list of messages that carry the error details. There is a 4215 // common set of message types for APIs to use. 4216 Details []googleapi.RawMessage `json:"details,omitempty"` 4217 4218 // Message: A developer-facing error message, which should be in 4219 // English. Any user-facing error message should be localized and sent 4220 // in the google.rpc.Status.details field, or localized by the client. 4221 Message string `json:"message,omitempty"` 4222 4223 // ForceSendFields is a list of field names (e.g. "Code") to 4224 // unconditionally include in API requests. By default, fields with 4225 // empty or default values are omitted from API requests. However, any 4226 // non-pointer, non-interface field appearing in ForceSendFields will be 4227 // sent to the server regardless of whether the field is empty or not. 4228 // This may be used to include empty fields in Patch requests. 4229 ForceSendFields []string `json:"-"` 4230 4231 // NullFields is a list of field names (e.g. "Code") to include in API 4232 // requests with the JSON null value. By default, fields with empty 4233 // values are omitted from API requests. However, any field with an 4234 // empty value appearing in NullFields will be sent to the server as 4235 // null. It is an error if a field in this list has a non-empty value. 4236 // This may be used to include null fields in Patch requests. 4237 NullFields []string `json:"-"` 4238} 4239 4240func (s *Status) MarshalJSON() ([]byte, error) { 4241 type NoMethod Status 4242 raw := NoMethod(*s) 4243 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4244} 4245 4246// StatusReportingSettings: Settings controlling the behavior of status 4247// reports. 4248type StatusReportingSettings struct { 4249 // ApplicationReportingSettings: Application reporting settings. Only 4250 // applicable if application_reports_enabled is true. 4251 ApplicationReportingSettings *ApplicationReportingSettings `json:"applicationReportingSettings,omitempty"` 4252 4253 // ApplicationReportsEnabled: Whether app reports are enabled. 4254 ApplicationReportsEnabled bool `json:"applicationReportsEnabled,omitempty"` 4255 4256 // CommonCriteriaModeEnabled: Whether Common Criteria Mode reporting is 4257 // enabled. 4258 CommonCriteriaModeEnabled bool `json:"commonCriteriaModeEnabled,omitempty"` 4259 4260 // DeviceSettingsEnabled: Whether device settings reporting is enabled. 4261 DeviceSettingsEnabled bool `json:"deviceSettingsEnabled,omitempty"` 4262 4263 // DisplayInfoEnabled: Whether displays reporting is enabled. Report 4264 // data is not available for personally owned devices with work 4265 // profiles. 4266 DisplayInfoEnabled bool `json:"displayInfoEnabled,omitempty"` 4267 4268 // HardwareStatusEnabled: Whether hardware status reporting is enabled. 4269 // Report data is not available for personally owned devices with work 4270 // profiles. 4271 HardwareStatusEnabled bool `json:"hardwareStatusEnabled,omitempty"` 4272 4273 // MemoryInfoEnabled: Whether memory event reporting is enabled. 4274 MemoryInfoEnabled bool `json:"memoryInfoEnabled,omitempty"` 4275 4276 // NetworkInfoEnabled: Whether network info reporting is enabled. 4277 NetworkInfoEnabled bool `json:"networkInfoEnabled,omitempty"` 4278 4279 // PowerManagementEventsEnabled: Whether power management event 4280 // reporting is enabled. Report data is not available for personally 4281 // owned devices with work profiles. 4282 PowerManagementEventsEnabled bool `json:"powerManagementEventsEnabled,omitempty"` 4283 4284 // SoftwareInfoEnabled: Whether software info reporting is enabled. 4285 SoftwareInfoEnabled bool `json:"softwareInfoEnabled,omitempty"` 4286 4287 // SystemPropertiesEnabled: Whether system properties reporting is 4288 // enabled. 4289 SystemPropertiesEnabled bool `json:"systemPropertiesEnabled,omitempty"` 4290 4291 // ForceSendFields is a list of field names (e.g. 4292 // "ApplicationReportingSettings") to unconditionally include in API 4293 // requests. By default, fields with empty or default values are omitted 4294 // from API requests. However, any non-pointer, non-interface field 4295 // appearing in ForceSendFields will be sent to the server regardless of 4296 // whether the field is empty or not. This may be used to include empty 4297 // fields in Patch requests. 4298 ForceSendFields []string `json:"-"` 4299 4300 // NullFields is a list of field names (e.g. 4301 // "ApplicationReportingSettings") to include in API requests with the 4302 // JSON null value. By default, fields with empty values are omitted 4303 // from API requests. However, any field with an empty value appearing 4304 // in NullFields will be sent to the server as null. It is an error if a 4305 // field in this list has a non-empty value. This may be used to include 4306 // null fields in Patch requests. 4307 NullFields []string `json:"-"` 4308} 4309 4310func (s *StatusReportingSettings) MarshalJSON() ([]byte, error) { 4311 type NoMethod StatusReportingSettings 4312 raw := NoMethod(*s) 4313 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4314} 4315 4316// SystemUpdate: Configuration for managing system updates 4317type SystemUpdate struct { 4318 // EndMinutes: If the type is WINDOWED, the end of the maintenance 4319 // window, measured as the number of minutes after midnight in device's 4320 // local time. This value must be between 0 and 1439, inclusive. If this 4321 // value is less than start_minutes, then the maintenance window spans 4322 // midnight. If the maintenance window specified is smaller than 30 4323 // minutes, the actual window is extended to 30 minutes beyond the start 4324 // time. 4325 EndMinutes int64 `json:"endMinutes,omitempty"` 4326 4327 // FreezePeriods: An annually repeating time period in which 4328 // over-the-air (OTA) system updates are postponed to freeze the OS 4329 // version running on a device. To prevent freezing the device 4330 // indefinitely, each freeze period must be separated by at least 60 4331 // days. 4332 FreezePeriods []*FreezePeriod `json:"freezePeriods,omitempty"` 4333 4334 // StartMinutes: If the type is WINDOWED, the start of the maintenance 4335 // window, measured as the number of minutes after midnight in the 4336 // device's local time. This value must be between 0 and 1439, 4337 // inclusive. 4338 StartMinutes int64 `json:"startMinutes,omitempty"` 4339 4340 // Type: The type of system update to configure. 4341 // 4342 // Possible values: 4343 // "SYSTEM_UPDATE_TYPE_UNSPECIFIED" - Follow the default update 4344 // behavior for the device, which typically requires the user to accept 4345 // system updates. 4346 // "AUTOMATIC" - Install automatically as soon as an update is 4347 // available. 4348 // "WINDOWED" - Install automatically within a daily maintenance 4349 // window. This also configures Play apps to be updated within the 4350 // window. This is strongly recommended for kiosk devices because this 4351 // is the only way apps persistently pinned to the foreground can be 4352 // updated by Play.If autoUpdateMode is set to AUTO_UPDATE_HIGH_PRIORITY 4353 // for an app, then the maintenance window is ignored for that app and 4354 // it is updated as soon as possible even outside of the maintenance 4355 // window. 4356 // "POSTPONE" - Postpone automatic install up to a maximum of 30 days. 4357 Type string `json:"type,omitempty"` 4358 4359 // ForceSendFields is a list of field names (e.g. "EndMinutes") to 4360 // unconditionally include in API requests. By default, fields with 4361 // empty or default values are omitted from API requests. However, any 4362 // non-pointer, non-interface field appearing in ForceSendFields will be 4363 // sent to the server regardless of whether the field is empty or not. 4364 // This may be used to include empty fields in Patch requests. 4365 ForceSendFields []string `json:"-"` 4366 4367 // NullFields is a list of field names (e.g. "EndMinutes") to include in 4368 // API requests with the JSON null value. By default, fields with empty 4369 // values are omitted from API requests. However, any field with an 4370 // empty value appearing in NullFields will be sent to the server as 4371 // null. It is an error if a field in this list has a non-empty value. 4372 // This may be used to include null fields in Patch requests. 4373 NullFields []string `json:"-"` 4374} 4375 4376func (s *SystemUpdate) MarshalJSON() ([]byte, error) { 4377 type NoMethod SystemUpdate 4378 raw := NoMethod(*s) 4379 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4380} 4381 4382// SystemUpdateInfo: Information about a potential pending system 4383// update. 4384type SystemUpdateInfo struct { 4385 // UpdateReceivedTime: The time when the update was first available. A 4386 // zero value indicates that this field is not set. This field is set 4387 // only if an update is available (that is, updateStatus is neither 4388 // UPDATE_STATUS_UNKNOWN nor UP_TO_DATE). 4389 UpdateReceivedTime string `json:"updateReceivedTime,omitempty"` 4390 4391 // UpdateStatus: The status of an update: whether an update exists and 4392 // what type it is. 4393 // 4394 // Possible values: 4395 // "UPDATE_STATUS_UNKNOWN" - It is unknown whether there is a pending 4396 // system update. This happens when, for example, the device API level 4397 // is less than 26, or if the version of Android Device Policy is 4398 // outdated. 4399 // "UP_TO_DATE" - There is no pending system update available on the 4400 // device. 4401 // "UNKNOWN_UPDATE_AVAILABLE" - There is a pending system update 4402 // available, but its type is not known. 4403 // "SECURITY_UPDATE_AVAILABLE" - There is a pending security update 4404 // available. 4405 // "OS_UPDATE_AVAILABLE" - There is a pending OS update available. 4406 UpdateStatus string `json:"updateStatus,omitempty"` 4407 4408 // ForceSendFields is a list of field names (e.g. "UpdateReceivedTime") 4409 // to unconditionally include in API requests. By default, fields with 4410 // empty or default values are omitted from API requests. However, any 4411 // non-pointer, non-interface field appearing in ForceSendFields will be 4412 // sent to the server regardless of whether the field is empty or not. 4413 // This may be used to include empty fields in Patch requests. 4414 ForceSendFields []string `json:"-"` 4415 4416 // NullFields is a list of field names (e.g. "UpdateReceivedTime") to 4417 // include in API requests with the JSON null value. By default, fields 4418 // with empty values are omitted from API requests. However, any field 4419 // with an empty value appearing in NullFields will be sent to the 4420 // server as null. It is an error if a field in this list has a 4421 // non-empty value. This may be used to include null fields in Patch 4422 // requests. 4423 NullFields []string `json:"-"` 4424} 4425 4426func (s *SystemUpdateInfo) MarshalJSON() ([]byte, error) { 4427 type NoMethod SystemUpdateInfo 4428 raw := NoMethod(*s) 4429 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4430} 4431 4432// TelephonyInfo: Telephony information associated with a given SIM card 4433// on the device. Only supported on fully managed devices starting from 4434// Android API level 23. 4435type TelephonyInfo struct { 4436 // CarrierName: The carrier name associated with this SIM card. 4437 CarrierName string `json:"carrierName,omitempty"` 4438 4439 // PhoneNumber: The phone number associated with this SIM card. 4440 PhoneNumber string `json:"phoneNumber,omitempty"` 4441 4442 // ForceSendFields is a list of field names (e.g. "CarrierName") to 4443 // unconditionally include in API requests. By default, fields with 4444 // empty or default values are omitted from API requests. However, any 4445 // non-pointer, non-interface field appearing in ForceSendFields will be 4446 // sent to the server regardless of whether the field is empty or not. 4447 // This may be used to include empty fields in Patch requests. 4448 ForceSendFields []string `json:"-"` 4449 4450 // NullFields is a list of field names (e.g. "CarrierName") to include 4451 // in API requests with the JSON null value. By default, fields with 4452 // empty values are omitted from API requests. However, any field with 4453 // an empty value appearing in NullFields will be sent to the server as 4454 // null. It is an error if a field in this list has a non-empty value. 4455 // This may be used to include null fields in Patch requests. 4456 NullFields []string `json:"-"` 4457} 4458 4459func (s *TelephonyInfo) MarshalJSON() ([]byte, error) { 4460 type NoMethod TelephonyInfo 4461 raw := NoMethod(*s) 4462 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4463} 4464 4465// TermsAndConditions: A terms and conditions page to be accepted during 4466// provisioning. 4467type TermsAndConditions struct { 4468 // Content: A well-formatted HTML string. It will be parsed on the 4469 // client with android.text.Html#fromHtml. 4470 Content *UserFacingMessage `json:"content,omitempty"` 4471 4472 // Header: A short header which appears above the HTML content. 4473 Header *UserFacingMessage `json:"header,omitempty"` 4474 4475 // ForceSendFields is a list of field names (e.g. "Content") to 4476 // unconditionally include in API requests. By default, fields with 4477 // empty or default values are omitted from API requests. However, any 4478 // non-pointer, non-interface field appearing in ForceSendFields will be 4479 // sent to the server regardless of whether the field is empty or not. 4480 // This may be used to include empty fields in Patch requests. 4481 ForceSendFields []string `json:"-"` 4482 4483 // NullFields is a list of field names (e.g. "Content") to include in 4484 // API requests with the JSON null value. By default, fields with empty 4485 // values are omitted from API requests. However, any field with an 4486 // empty value appearing in NullFields will be sent to the server as 4487 // null. It is an error if a field in this list has a non-empty value. 4488 // This may be used to include null fields in Patch requests. 4489 NullFields []string `json:"-"` 4490} 4491 4492func (s *TermsAndConditions) MarshalJSON() ([]byte, error) { 4493 type NoMethod TermsAndConditions 4494 raw := NoMethod(*s) 4495 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4496} 4497 4498// User: A user belonging to an enterprise. 4499type User struct { 4500 // AccountIdentifier: A unique identifier you create for this user, such 4501 // as user342 or asset#44418. This field must be set when the user is 4502 // created and can't be updated. This field must not contain personally 4503 // identifiable information (PII). This identifier must be 1024 4504 // characters or less; otherwise, the update policy request will fail. 4505 AccountIdentifier string `json:"accountIdentifier,omitempty"` 4506 4507 // ForceSendFields is a list of field names (e.g. "AccountIdentifier") 4508 // to unconditionally include in API requests. By default, fields with 4509 // empty or default values are omitted from API requests. However, any 4510 // non-pointer, non-interface field appearing in ForceSendFields will be 4511 // sent to the server regardless of whether the field is empty or not. 4512 // This may be used to include empty fields in Patch requests. 4513 ForceSendFields []string `json:"-"` 4514 4515 // NullFields is a list of field names (e.g. "AccountIdentifier") to 4516 // include in API requests with the JSON null value. By default, fields 4517 // with empty values are omitted from API requests. However, any field 4518 // with an empty value appearing in NullFields will be sent to the 4519 // server as null. It is an error if a field in this list has a 4520 // non-empty value. This may be used to include null fields in Patch 4521 // requests. 4522 NullFields []string `json:"-"` 4523} 4524 4525func (s *User) MarshalJSON() ([]byte, error) { 4526 type NoMethod User 4527 raw := NoMethod(*s) 4528 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4529} 4530 4531// UserFacingMessage: Provides a user-facing message with locale info. 4532// The maximum message length is 4096 characters. 4533type UserFacingMessage struct { 4534 // DefaultMessage: The default message displayed if no localized message 4535 // is specified or the user's locale doesn't match with any of the 4536 // localized messages. A default message must be provided if any 4537 // localized messages are provided. 4538 DefaultMessage string `json:"defaultMessage,omitempty"` 4539 4540 // LocalizedMessages: A map containing pairs, where locale is a 4541 // well-formed BCP 47 language 4542 // (https://www.w3.org/International/articles/language-tags/) code, such 4543 // as en-US, es-ES, or fr. 4544 LocalizedMessages map[string]string `json:"localizedMessages,omitempty"` 4545 4546 // ForceSendFields is a list of field names (e.g. "DefaultMessage") to 4547 // unconditionally include in API requests. By default, fields with 4548 // empty or default values are omitted from API requests. However, any 4549 // non-pointer, non-interface field appearing in ForceSendFields will be 4550 // sent to the server regardless of whether the field is empty or not. 4551 // This may be used to include empty fields in Patch requests. 4552 ForceSendFields []string `json:"-"` 4553 4554 // NullFields is a list of field names (e.g. "DefaultMessage") to 4555 // include in API requests with the JSON null value. By default, fields 4556 // with empty values are omitted from API requests. However, any field 4557 // with an empty value appearing in NullFields will be sent to the 4558 // server as null. It is an error if a field in this list has a 4559 // non-empty value. This may be used to include null fields in Patch 4560 // requests. 4561 NullFields []string `json:"-"` 4562} 4563 4564func (s *UserFacingMessage) MarshalJSON() ([]byte, error) { 4565 type NoMethod UserFacingMessage 4566 raw := NoMethod(*s) 4567 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4568} 4569 4570// WebApp: A web app. 4571type WebApp struct { 4572 // DisplayMode: The display mode of the web app. 4573 // 4574 // Possible values: 4575 // "DISPLAY_MODE_UNSPECIFIED" - Not used. 4576 // "MINIMAL_UI" - Opens the web app with a minimal set of browser UI 4577 // elements for controlling navigation and viewing the page URL. 4578 // "STANDALONE" - Opens the web app to look and feel like a standalone 4579 // native application. The browser UI elements and page URL are not 4580 // visible, however the system status bar and back button are visible. 4581 // "FULL_SCREEN" - Opens the web app in full screen without any 4582 // visible controls. The browser UI elements, page URL, system status 4583 // bar and back button are not visible, and the web app takes up the 4584 // entirety of the available display area. 4585 DisplayMode string `json:"displayMode,omitempty"` 4586 4587 // Icons: A list of icons for the web app. Must have at least one 4588 // element. 4589 Icons []*WebAppIcon `json:"icons,omitempty"` 4590 4591 // Name: The name of the web app, which is generated by the server 4592 // during creation in the form 4593 // enterprises/{enterpriseId}/webApps/{packageName}. 4594 Name string `json:"name,omitempty"` 4595 4596 // StartUrl: The start URL, i.e. the URL that should load when the user 4597 // opens the application. 4598 StartUrl string `json:"startUrl,omitempty"` 4599 4600 // Title: The title of the web app as displayed to the user (e.g., 4601 // amongst a list of other applications, or as a label for an icon). 4602 Title string `json:"title,omitempty"` 4603 4604 // VersionCode: The current version of the app.Note that the version can 4605 // automatically increase during the lifetime of the web app, while 4606 // Google does internal housekeeping to keep the web app up-to-date. 4607 VersionCode int64 `json:"versionCode,omitempty,string"` 4608 4609 // ServerResponse contains the HTTP response code and headers from the 4610 // server. 4611 googleapi.ServerResponse `json:"-"` 4612 4613 // ForceSendFields is a list of field names (e.g. "DisplayMode") to 4614 // unconditionally include in API requests. By default, fields with 4615 // empty or default values are omitted from API requests. However, any 4616 // non-pointer, non-interface field appearing in ForceSendFields will be 4617 // sent to the server regardless of whether the field is empty or not. 4618 // This may be used to include empty fields in Patch requests. 4619 ForceSendFields []string `json:"-"` 4620 4621 // NullFields is a list of field names (e.g. "DisplayMode") to include 4622 // in API requests with the JSON null value. By default, fields with 4623 // empty values are omitted from API requests. However, any field with 4624 // an empty value appearing in NullFields will be sent to the server as 4625 // null. It is an error if a field in this list has a non-empty value. 4626 // This may be used to include null fields in Patch requests. 4627 NullFields []string `json:"-"` 4628} 4629 4630func (s *WebApp) MarshalJSON() ([]byte, error) { 4631 type NoMethod WebApp 4632 raw := NoMethod(*s) 4633 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4634} 4635 4636// WebAppIcon: An icon for a web app. Supported formats are: png, jpg 4637// and webp. 4638type WebAppIcon struct { 4639 // ImageData: The actual bytes of the image in a base64url encoded 4640 // string (c.f. RFC4648, section 5 "Base 64 Encoding with URL and 4641 // Filename Safe Alphabet"). - The image type can be png or jpg. - The 4642 // image should ideally be square. - The image should ideally have a 4643 // size of 512x512. 4644 ImageData string `json:"imageData,omitempty"` 4645 4646 // ForceSendFields is a list of field names (e.g. "ImageData") to 4647 // unconditionally include in API requests. By default, fields with 4648 // empty or default values are omitted from API requests. However, any 4649 // non-pointer, non-interface field appearing in ForceSendFields will be 4650 // sent to the server regardless of whether the field is empty or not. 4651 // This may be used to include empty fields in Patch requests. 4652 ForceSendFields []string `json:"-"` 4653 4654 // NullFields is a list of field names (e.g. "ImageData") to include in 4655 // API requests with the JSON null value. By default, fields with empty 4656 // values are omitted from API requests. However, any field with an 4657 // empty value appearing in NullFields will be sent to the server as 4658 // null. It is an error if a field in this list has a non-empty value. 4659 // This may be used to include null fields in Patch requests. 4660 NullFields []string `json:"-"` 4661} 4662 4663func (s *WebAppIcon) MarshalJSON() ([]byte, error) { 4664 type NoMethod WebAppIcon 4665 raw := NoMethod(*s) 4666 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4667} 4668 4669// WebToken: A web token used to access the managed Google Play iframe. 4670type WebToken struct { 4671 // EnabledFeatures: The features to enable. Use this if you want to 4672 // control exactly which feature(s) will be activated; leave empty to 4673 // allow all features.Restrictions / things to note: - If no features 4674 // are listed here, all features are enabled — this is the default 4675 // behavior where you give access to all features to your admins. - This 4676 // must not contain any FEATURE_UNSPECIFIED values. - Repeated values 4677 // are ignored 4678 // 4679 // Possible values: 4680 // "FEATURE_UNSPECIFIED" - Unspecified feature. 4681 // "PLAY_SEARCH" - The Managed Play search apps page 4682 // (https://developers.google.com/android/management/apps#search-apps). 4683 // "PRIVATE_APPS" - The private apps page 4684 // (https://developers.google.com/android/management/apps#private-apps). 4685 // "WEB_APPS" - The Web Apps page 4686 // (https://developers.google.com/android/management/apps#web-apps). 4687 // "STORE_BUILDER" - The organize apps page 4688 // (https://developers.google.com/android/management/apps#organize-apps). 4689 // "MANAGED_CONFIGURATIONS" - The managed configurations page 4690 // (https://developers.google.com/android/management/managed-configurations-iframe). 4691 // "ZERO_TOUCH_CUSTOMER_MANAGEMENT" - The zero-touch iframe 4692 // (https://developers.google.com/android/management/zero-touch-iframe). 4693 EnabledFeatures []string `json:"enabledFeatures,omitempty"` 4694 4695 // Name: The name of the web token, which is generated by the server 4696 // during creation in the form 4697 // enterprises/{enterpriseId}/webTokens/{webTokenId}. 4698 Name string `json:"name,omitempty"` 4699 4700 // ParentFrameUrl: The URL of the parent frame hosting the iframe with 4701 // the embedded UI. To prevent XSS, the iframe may not be hosted at 4702 // other URLs. The URL must use the https scheme. 4703 ParentFrameUrl string `json:"parentFrameUrl,omitempty"` 4704 4705 // Permissions: Permissions available to an admin in the embedded UI. An 4706 // admin must have all of these permissions in order to view the UI. 4707 // This field is deprecated. 4708 // 4709 // Possible values: 4710 // "WEB_TOKEN_PERMISSION_UNSPECIFIED" - This value is ignored. 4711 // "APPROVE_APPS" - The permission to approve apps for the enterprise. 4712 Permissions []string `json:"permissions,omitempty"` 4713 4714 // Value: The token value which is used in the hosting page to generate 4715 // the iframe with the embedded UI. This is a read-only field generated 4716 // by the server. 4717 Value string `json:"value,omitempty"` 4718 4719 // ServerResponse contains the HTTP response code and headers from the 4720 // server. 4721 googleapi.ServerResponse `json:"-"` 4722 4723 // ForceSendFields is a list of field names (e.g. "EnabledFeatures") to 4724 // unconditionally include in API requests. By default, fields with 4725 // empty or default values are omitted from API requests. However, any 4726 // non-pointer, non-interface field appearing in ForceSendFields will be 4727 // sent to the server regardless of whether the field is empty or not. 4728 // This may be used to include empty fields in Patch requests. 4729 ForceSendFields []string `json:"-"` 4730 4731 // NullFields is a list of field names (e.g. "EnabledFeatures") to 4732 // include in API requests with the JSON null value. By default, fields 4733 // with empty values are omitted from API requests. However, any field 4734 // with an empty value appearing in NullFields will be sent to the 4735 // server as null. It is an error if a field in this list has a 4736 // non-empty value. This may be used to include null fields in Patch 4737 // requests. 4738 NullFields []string `json:"-"` 4739} 4740 4741func (s *WebToken) MarshalJSON() ([]byte, error) { 4742 type NoMethod WebToken 4743 raw := NoMethod(*s) 4744 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4745} 4746 4747// WipeAction: An action to reset a fully managed device or delete a 4748// work profile. Note: blockAction must also be specified. 4749type WipeAction struct { 4750 // PreserveFrp: Whether the factory-reset protection data is preserved 4751 // on the device. This setting doesn’t apply to work profiles. 4752 PreserveFrp bool `json:"preserveFrp,omitempty"` 4753 4754 // WipeAfterDays: Number of days the policy is non-compliant before the 4755 // device or work profile is wiped. wipeAfterDays must be greater than 4756 // blockAfterDays. 4757 WipeAfterDays int64 `json:"wipeAfterDays,omitempty"` 4758 4759 // ForceSendFields is a list of field names (e.g. "PreserveFrp") to 4760 // unconditionally include in API requests. By default, fields with 4761 // empty or default values are omitted from API requests. However, any 4762 // non-pointer, non-interface field appearing in ForceSendFields will be 4763 // sent to the server regardless of whether the field is empty or not. 4764 // This may be used to include empty fields in Patch requests. 4765 ForceSendFields []string `json:"-"` 4766 4767 // NullFields is a list of field names (e.g. "PreserveFrp") to include 4768 // in API requests with the JSON null value. By default, fields with 4769 // empty values are omitted from API requests. However, any field with 4770 // an empty value appearing in NullFields will be sent to the server as 4771 // null. It is an error if a field in this list has a non-empty value. 4772 // This may be used to include null fields in Patch requests. 4773 NullFields []string `json:"-"` 4774} 4775 4776func (s *WipeAction) MarshalJSON() ([]byte, error) { 4777 type NoMethod WipeAction 4778 raw := NoMethod(*s) 4779 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 4780} 4781 4782// method id "androidmanagement.enterprises.create": 4783 4784type EnterprisesCreateCall struct { 4785 s *Service 4786 enterprise *Enterprise 4787 urlParams_ gensupport.URLParams 4788 ctx_ context.Context 4789 header_ http.Header 4790} 4791 4792// Create: Creates an enterprise. This is the last step in the 4793// enterprise signup flow. 4794func (r *EnterprisesService) Create(enterprise *Enterprise) *EnterprisesCreateCall { 4795 c := &EnterprisesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4796 c.enterprise = enterprise 4797 return c 4798} 4799 4800// AgreementAccepted sets the optional parameter "agreementAccepted": 4801// Whether the enterprise admin has seen and agreed to the managed 4802// Google Play Agreement (https://www.android.com/enterprise/terms/). 4803// Always set this to true when creating an EMM-managed enterprise. Do 4804// not create the enterprise until the admin has viewed and accepted the 4805// agreement. 4806func (c *EnterprisesCreateCall) AgreementAccepted(agreementAccepted bool) *EnterprisesCreateCall { 4807 c.urlParams_.Set("agreementAccepted", fmt.Sprint(agreementAccepted)) 4808 return c 4809} 4810 4811// EnterpriseToken sets the optional parameter "enterpriseToken": The 4812// enterprise token appended to the callback URL. Only set this when 4813// creating a customer-managed enterprise. 4814func (c *EnterprisesCreateCall) EnterpriseToken(enterpriseToken string) *EnterprisesCreateCall { 4815 c.urlParams_.Set("enterpriseToken", enterpriseToken) 4816 return c 4817} 4818 4819// ProjectId sets the optional parameter "projectId": The ID of the 4820// Google Cloud Platform project which will own the enterprise. 4821func (c *EnterprisesCreateCall) ProjectId(projectId string) *EnterprisesCreateCall { 4822 c.urlParams_.Set("projectId", projectId) 4823 return c 4824} 4825 4826// SignupUrlName sets the optional parameter "signupUrlName": The name 4827// of the SignupUrl used to sign up for the enterprise. Only set this 4828// when creating a customer-managed enterprise. 4829func (c *EnterprisesCreateCall) SignupUrlName(signupUrlName string) *EnterprisesCreateCall { 4830 c.urlParams_.Set("signupUrlName", signupUrlName) 4831 return c 4832} 4833 4834// Fields allows partial responses to be retrieved. See 4835// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4836// for more information. 4837func (c *EnterprisesCreateCall) Fields(s ...googleapi.Field) *EnterprisesCreateCall { 4838 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4839 return c 4840} 4841 4842// Context sets the context to be used in this call's Do method. Any 4843// pending HTTP request will be aborted if the provided context is 4844// canceled. 4845func (c *EnterprisesCreateCall) Context(ctx context.Context) *EnterprisesCreateCall { 4846 c.ctx_ = ctx 4847 return c 4848} 4849 4850// Header returns an http.Header that can be modified by the caller to 4851// add HTTP headers to the request. 4852func (c *EnterprisesCreateCall) Header() http.Header { 4853 if c.header_ == nil { 4854 c.header_ = make(http.Header) 4855 } 4856 return c.header_ 4857} 4858 4859func (c *EnterprisesCreateCall) doRequest(alt string) (*http.Response, error) { 4860 reqHeaders := make(http.Header) 4861 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 4862 for k, v := range c.header_ { 4863 reqHeaders[k] = v 4864 } 4865 reqHeaders.Set("User-Agent", c.s.userAgent()) 4866 var body io.Reader = nil 4867 body, err := googleapi.WithoutDataWrapper.JSONReader(c.enterprise) 4868 if err != nil { 4869 return nil, err 4870 } 4871 reqHeaders.Set("Content-Type", "application/json") 4872 c.urlParams_.Set("alt", alt) 4873 c.urlParams_.Set("prettyPrint", "false") 4874 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/enterprises") 4875 urls += "?" + c.urlParams_.Encode() 4876 req, err := http.NewRequest("POST", urls, body) 4877 if err != nil { 4878 return nil, err 4879 } 4880 req.Header = reqHeaders 4881 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4882} 4883 4884// Do executes the "androidmanagement.enterprises.create" call. 4885// Exactly one of *Enterprise or error will be non-nil. Any non-2xx 4886// status code is an error. Response headers are in either 4887// *Enterprise.ServerResponse.Header or (if a response was returned at 4888// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 4889// to check whether the returned error was because 4890// http.StatusNotModified was returned. 4891func (c *EnterprisesCreateCall) Do(opts ...googleapi.CallOption) (*Enterprise, error) { 4892 gensupport.SetOptions(c.urlParams_, opts...) 4893 res, err := c.doRequest("json") 4894 if res != nil && res.StatusCode == http.StatusNotModified { 4895 if res.Body != nil { 4896 res.Body.Close() 4897 } 4898 return nil, &googleapi.Error{ 4899 Code: res.StatusCode, 4900 Header: res.Header, 4901 } 4902 } 4903 if err != nil { 4904 return nil, err 4905 } 4906 defer googleapi.CloseBody(res) 4907 if err := googleapi.CheckResponse(res); err != nil { 4908 return nil, err 4909 } 4910 ret := &Enterprise{ 4911 ServerResponse: googleapi.ServerResponse{ 4912 Header: res.Header, 4913 HTTPStatusCode: res.StatusCode, 4914 }, 4915 } 4916 target := &ret 4917 if err := gensupport.DecodeResponse(target, res); err != nil { 4918 return nil, err 4919 } 4920 return ret, nil 4921 // { 4922 // "description": "Creates an enterprise. This is the last step in the enterprise signup flow.", 4923 // "flatPath": "v1/enterprises", 4924 // "httpMethod": "POST", 4925 // "id": "androidmanagement.enterprises.create", 4926 // "parameterOrder": [], 4927 // "parameters": { 4928 // "agreementAccepted": { 4929 // "description": "Whether the enterprise admin has seen and agreed to the managed Google Play Agreement (https://www.android.com/enterprise/terms/). Always set this to true when creating an EMM-managed enterprise. Do not create the enterprise until the admin has viewed and accepted the agreement.", 4930 // "location": "query", 4931 // "type": "boolean" 4932 // }, 4933 // "enterpriseToken": { 4934 // "description": "The enterprise token appended to the callback URL. Only set this when creating a customer-managed enterprise.", 4935 // "location": "query", 4936 // "type": "string" 4937 // }, 4938 // "projectId": { 4939 // "description": "The ID of the Google Cloud Platform project which will own the enterprise.", 4940 // "location": "query", 4941 // "type": "string" 4942 // }, 4943 // "signupUrlName": { 4944 // "description": "The name of the SignupUrl used to sign up for the enterprise. Only set this when creating a customer-managed enterprise.", 4945 // "location": "query", 4946 // "type": "string" 4947 // } 4948 // }, 4949 // "path": "v1/enterprises", 4950 // "request": { 4951 // "$ref": "Enterprise" 4952 // }, 4953 // "response": { 4954 // "$ref": "Enterprise" 4955 // }, 4956 // "scopes": [ 4957 // "https://www.googleapis.com/auth/androidmanagement" 4958 // ] 4959 // } 4960 4961} 4962 4963// method id "androidmanagement.enterprises.delete": 4964 4965type EnterprisesDeleteCall struct { 4966 s *Service 4967 name string 4968 urlParams_ gensupport.URLParams 4969 ctx_ context.Context 4970 header_ http.Header 4971} 4972 4973// Delete: Deletes an enterprise. Only available for EMM-managed 4974// enterprises. 4975// 4976// - name: The name of the enterprise in the form 4977// enterprises/{enterpriseId}. 4978func (r *EnterprisesService) Delete(name string) *EnterprisesDeleteCall { 4979 c := &EnterprisesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4980 c.name = name 4981 return c 4982} 4983 4984// Fields allows partial responses to be retrieved. See 4985// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4986// for more information. 4987func (c *EnterprisesDeleteCall) Fields(s ...googleapi.Field) *EnterprisesDeleteCall { 4988 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4989 return c 4990} 4991 4992// Context sets the context to be used in this call's Do method. Any 4993// pending HTTP request will be aborted if the provided context is 4994// canceled. 4995func (c *EnterprisesDeleteCall) Context(ctx context.Context) *EnterprisesDeleteCall { 4996 c.ctx_ = ctx 4997 return c 4998} 4999 5000// Header returns an http.Header that can be modified by the caller to 5001// add HTTP headers to the request. 5002func (c *EnterprisesDeleteCall) Header() http.Header { 5003 if c.header_ == nil { 5004 c.header_ = make(http.Header) 5005 } 5006 return c.header_ 5007} 5008 5009func (c *EnterprisesDeleteCall) doRequest(alt string) (*http.Response, error) { 5010 reqHeaders := make(http.Header) 5011 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 5012 for k, v := range c.header_ { 5013 reqHeaders[k] = v 5014 } 5015 reqHeaders.Set("User-Agent", c.s.userAgent()) 5016 var body io.Reader = nil 5017 c.urlParams_.Set("alt", alt) 5018 c.urlParams_.Set("prettyPrint", "false") 5019 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 5020 urls += "?" + c.urlParams_.Encode() 5021 req, err := http.NewRequest("DELETE", urls, body) 5022 if err != nil { 5023 return nil, err 5024 } 5025 req.Header = reqHeaders 5026 googleapi.Expand(req.URL, map[string]string{ 5027 "name": c.name, 5028 }) 5029 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5030} 5031 5032// Do executes the "androidmanagement.enterprises.delete" call. 5033// Exactly one of *Empty or error will be non-nil. Any non-2xx status 5034// code is an error. Response headers are in either 5035// *Empty.ServerResponse.Header or (if a response was returned at all) 5036// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 5037// check whether the returned error was because http.StatusNotModified 5038// was returned. 5039func (c *EnterprisesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 5040 gensupport.SetOptions(c.urlParams_, opts...) 5041 res, err := c.doRequest("json") 5042 if res != nil && res.StatusCode == http.StatusNotModified { 5043 if res.Body != nil { 5044 res.Body.Close() 5045 } 5046 return nil, &googleapi.Error{ 5047 Code: res.StatusCode, 5048 Header: res.Header, 5049 } 5050 } 5051 if err != nil { 5052 return nil, err 5053 } 5054 defer googleapi.CloseBody(res) 5055 if err := googleapi.CheckResponse(res); err != nil { 5056 return nil, err 5057 } 5058 ret := &Empty{ 5059 ServerResponse: googleapi.ServerResponse{ 5060 Header: res.Header, 5061 HTTPStatusCode: res.StatusCode, 5062 }, 5063 } 5064 target := &ret 5065 if err := gensupport.DecodeResponse(target, res); err != nil { 5066 return nil, err 5067 } 5068 return ret, nil 5069 // { 5070 // "description": "Deletes an enterprise. Only available for EMM-managed enterprises.", 5071 // "flatPath": "v1/enterprises/{enterprisesId}", 5072 // "httpMethod": "DELETE", 5073 // "id": "androidmanagement.enterprises.delete", 5074 // "parameterOrder": [ 5075 // "name" 5076 // ], 5077 // "parameters": { 5078 // "name": { 5079 // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", 5080 // "location": "path", 5081 // "pattern": "^enterprises/[^/]+$", 5082 // "required": true, 5083 // "type": "string" 5084 // } 5085 // }, 5086 // "path": "v1/{+name}", 5087 // "response": { 5088 // "$ref": "Empty" 5089 // }, 5090 // "scopes": [ 5091 // "https://www.googleapis.com/auth/androidmanagement" 5092 // ] 5093 // } 5094 5095} 5096 5097// method id "androidmanagement.enterprises.get": 5098 5099type EnterprisesGetCall struct { 5100 s *Service 5101 name string 5102 urlParams_ gensupport.URLParams 5103 ifNoneMatch_ string 5104 ctx_ context.Context 5105 header_ http.Header 5106} 5107 5108// Get: Gets an enterprise. 5109// 5110// - name: The name of the enterprise in the form 5111// enterprises/{enterpriseId}. 5112func (r *EnterprisesService) Get(name string) *EnterprisesGetCall { 5113 c := &EnterprisesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5114 c.name = name 5115 return c 5116} 5117 5118// Fields allows partial responses to be retrieved. See 5119// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5120// for more information. 5121func (c *EnterprisesGetCall) Fields(s ...googleapi.Field) *EnterprisesGetCall { 5122 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5123 return c 5124} 5125 5126// IfNoneMatch sets the optional parameter which makes the operation 5127// fail if the object's ETag matches the given value. This is useful for 5128// getting updates only after the object has changed since the last 5129// request. Use googleapi.IsNotModified to check whether the response 5130// error from Do is the result of In-None-Match. 5131func (c *EnterprisesGetCall) IfNoneMatch(entityTag string) *EnterprisesGetCall { 5132 c.ifNoneMatch_ = entityTag 5133 return c 5134} 5135 5136// Context sets the context to be used in this call's Do method. Any 5137// pending HTTP request will be aborted if the provided context is 5138// canceled. 5139func (c *EnterprisesGetCall) Context(ctx context.Context) *EnterprisesGetCall { 5140 c.ctx_ = ctx 5141 return c 5142} 5143 5144// Header returns an http.Header that can be modified by the caller to 5145// add HTTP headers to the request. 5146func (c *EnterprisesGetCall) Header() http.Header { 5147 if c.header_ == nil { 5148 c.header_ = make(http.Header) 5149 } 5150 return c.header_ 5151} 5152 5153func (c *EnterprisesGetCall) doRequest(alt string) (*http.Response, error) { 5154 reqHeaders := make(http.Header) 5155 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 5156 for k, v := range c.header_ { 5157 reqHeaders[k] = v 5158 } 5159 reqHeaders.Set("User-Agent", c.s.userAgent()) 5160 if c.ifNoneMatch_ != "" { 5161 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 5162 } 5163 var body io.Reader = nil 5164 c.urlParams_.Set("alt", alt) 5165 c.urlParams_.Set("prettyPrint", "false") 5166 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 5167 urls += "?" + c.urlParams_.Encode() 5168 req, err := http.NewRequest("GET", urls, body) 5169 if err != nil { 5170 return nil, err 5171 } 5172 req.Header = reqHeaders 5173 googleapi.Expand(req.URL, map[string]string{ 5174 "name": c.name, 5175 }) 5176 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5177} 5178 5179// Do executes the "androidmanagement.enterprises.get" call. 5180// Exactly one of *Enterprise or error will be non-nil. Any non-2xx 5181// status code is an error. Response headers are in either 5182// *Enterprise.ServerResponse.Header or (if a response was returned at 5183// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 5184// to check whether the returned error was because 5185// http.StatusNotModified was returned. 5186func (c *EnterprisesGetCall) Do(opts ...googleapi.CallOption) (*Enterprise, error) { 5187 gensupport.SetOptions(c.urlParams_, opts...) 5188 res, err := c.doRequest("json") 5189 if res != nil && res.StatusCode == http.StatusNotModified { 5190 if res.Body != nil { 5191 res.Body.Close() 5192 } 5193 return nil, &googleapi.Error{ 5194 Code: res.StatusCode, 5195 Header: res.Header, 5196 } 5197 } 5198 if err != nil { 5199 return nil, err 5200 } 5201 defer googleapi.CloseBody(res) 5202 if err := googleapi.CheckResponse(res); err != nil { 5203 return nil, err 5204 } 5205 ret := &Enterprise{ 5206 ServerResponse: googleapi.ServerResponse{ 5207 Header: res.Header, 5208 HTTPStatusCode: res.StatusCode, 5209 }, 5210 } 5211 target := &ret 5212 if err := gensupport.DecodeResponse(target, res); err != nil { 5213 return nil, err 5214 } 5215 return ret, nil 5216 // { 5217 // "description": "Gets an enterprise.", 5218 // "flatPath": "v1/enterprises/{enterprisesId}", 5219 // "httpMethod": "GET", 5220 // "id": "androidmanagement.enterprises.get", 5221 // "parameterOrder": [ 5222 // "name" 5223 // ], 5224 // "parameters": { 5225 // "name": { 5226 // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", 5227 // "location": "path", 5228 // "pattern": "^enterprises/[^/]+$", 5229 // "required": true, 5230 // "type": "string" 5231 // } 5232 // }, 5233 // "path": "v1/{+name}", 5234 // "response": { 5235 // "$ref": "Enterprise" 5236 // }, 5237 // "scopes": [ 5238 // "https://www.googleapis.com/auth/androidmanagement" 5239 // ] 5240 // } 5241 5242} 5243 5244// method id "androidmanagement.enterprises.list": 5245 5246type EnterprisesListCall struct { 5247 s *Service 5248 urlParams_ gensupport.URLParams 5249 ifNoneMatch_ string 5250 ctx_ context.Context 5251 header_ http.Header 5252} 5253 5254// List: Lists EMM-managed enterprises. Only BASIC fields are returned. 5255func (r *EnterprisesService) List() *EnterprisesListCall { 5256 c := &EnterprisesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5257 return c 5258} 5259 5260// PageSize sets the optional parameter "pageSize": The requested page 5261// size. The actual page size may be fixed to a min or max value. 5262func (c *EnterprisesListCall) PageSize(pageSize int64) *EnterprisesListCall { 5263 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 5264 return c 5265} 5266 5267// PageToken sets the optional parameter "pageToken": A token 5268// identifying a page of results returned by the server. 5269func (c *EnterprisesListCall) PageToken(pageToken string) *EnterprisesListCall { 5270 c.urlParams_.Set("pageToken", pageToken) 5271 return c 5272} 5273 5274// ProjectId sets the optional parameter "projectId": Required. The 5275// Cloud project ID of the EMM managing the enterprises. 5276func (c *EnterprisesListCall) ProjectId(projectId string) *EnterprisesListCall { 5277 c.urlParams_.Set("projectId", projectId) 5278 return c 5279} 5280 5281// View sets the optional parameter "view": Specifies which Enterprise 5282// fields to return. This method only supports BASIC. 5283// 5284// Possible values: 5285// "ENTERPRISE_VIEW_UNSPECIFIED" - The API will default to the BASIC 5286// view for the List method. 5287// "BASIC" - Includes name and enterprise_display_name fields. 5288func (c *EnterprisesListCall) View(view string) *EnterprisesListCall { 5289 c.urlParams_.Set("view", view) 5290 return c 5291} 5292 5293// Fields allows partial responses to be retrieved. See 5294// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5295// for more information. 5296func (c *EnterprisesListCall) Fields(s ...googleapi.Field) *EnterprisesListCall { 5297 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5298 return c 5299} 5300 5301// IfNoneMatch sets the optional parameter which makes the operation 5302// fail if the object's ETag matches the given value. This is useful for 5303// getting updates only after the object has changed since the last 5304// request. Use googleapi.IsNotModified to check whether the response 5305// error from Do is the result of In-None-Match. 5306func (c *EnterprisesListCall) IfNoneMatch(entityTag string) *EnterprisesListCall { 5307 c.ifNoneMatch_ = entityTag 5308 return c 5309} 5310 5311// Context sets the context to be used in this call's Do method. Any 5312// pending HTTP request will be aborted if the provided context is 5313// canceled. 5314func (c *EnterprisesListCall) Context(ctx context.Context) *EnterprisesListCall { 5315 c.ctx_ = ctx 5316 return c 5317} 5318 5319// Header returns an http.Header that can be modified by the caller to 5320// add HTTP headers to the request. 5321func (c *EnterprisesListCall) Header() http.Header { 5322 if c.header_ == nil { 5323 c.header_ = make(http.Header) 5324 } 5325 return c.header_ 5326} 5327 5328func (c *EnterprisesListCall) doRequest(alt string) (*http.Response, error) { 5329 reqHeaders := make(http.Header) 5330 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 5331 for k, v := range c.header_ { 5332 reqHeaders[k] = v 5333 } 5334 reqHeaders.Set("User-Agent", c.s.userAgent()) 5335 if c.ifNoneMatch_ != "" { 5336 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 5337 } 5338 var body io.Reader = nil 5339 c.urlParams_.Set("alt", alt) 5340 c.urlParams_.Set("prettyPrint", "false") 5341 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/enterprises") 5342 urls += "?" + c.urlParams_.Encode() 5343 req, err := http.NewRequest("GET", urls, body) 5344 if err != nil { 5345 return nil, err 5346 } 5347 req.Header = reqHeaders 5348 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5349} 5350 5351// Do executes the "androidmanagement.enterprises.list" call. 5352// Exactly one of *ListEnterprisesResponse or error will be non-nil. Any 5353// non-2xx status code is an error. Response headers are in either 5354// *ListEnterprisesResponse.ServerResponse.Header or (if a response was 5355// returned at all) in error.(*googleapi.Error).Header. Use 5356// googleapi.IsNotModified to check whether the returned error was 5357// because http.StatusNotModified was returned. 5358func (c *EnterprisesListCall) Do(opts ...googleapi.CallOption) (*ListEnterprisesResponse, error) { 5359 gensupport.SetOptions(c.urlParams_, opts...) 5360 res, err := c.doRequest("json") 5361 if res != nil && res.StatusCode == http.StatusNotModified { 5362 if res.Body != nil { 5363 res.Body.Close() 5364 } 5365 return nil, &googleapi.Error{ 5366 Code: res.StatusCode, 5367 Header: res.Header, 5368 } 5369 } 5370 if err != nil { 5371 return nil, err 5372 } 5373 defer googleapi.CloseBody(res) 5374 if err := googleapi.CheckResponse(res); err != nil { 5375 return nil, err 5376 } 5377 ret := &ListEnterprisesResponse{ 5378 ServerResponse: googleapi.ServerResponse{ 5379 Header: res.Header, 5380 HTTPStatusCode: res.StatusCode, 5381 }, 5382 } 5383 target := &ret 5384 if err := gensupport.DecodeResponse(target, res); err != nil { 5385 return nil, err 5386 } 5387 return ret, nil 5388 // { 5389 // "description": "Lists EMM-managed enterprises. Only BASIC fields are returned.", 5390 // "flatPath": "v1/enterprises", 5391 // "httpMethod": "GET", 5392 // "id": "androidmanagement.enterprises.list", 5393 // "parameterOrder": [], 5394 // "parameters": { 5395 // "pageSize": { 5396 // "description": "The requested page size. The actual page size may be fixed to a min or max value.", 5397 // "format": "int32", 5398 // "location": "query", 5399 // "type": "integer" 5400 // }, 5401 // "pageToken": { 5402 // "description": "A token identifying a page of results returned by the server.", 5403 // "location": "query", 5404 // "type": "string" 5405 // }, 5406 // "projectId": { 5407 // "description": "Required. The Cloud project ID of the EMM managing the enterprises.", 5408 // "location": "query", 5409 // "type": "string" 5410 // }, 5411 // "view": { 5412 // "description": "Specifies which Enterprise fields to return. This method only supports BASIC.", 5413 // "enum": [ 5414 // "ENTERPRISE_VIEW_UNSPECIFIED", 5415 // "BASIC" 5416 // ], 5417 // "enumDescriptions": [ 5418 // "The API will default to the BASIC view for the List method.", 5419 // "Includes name and enterprise_display_name fields." 5420 // ], 5421 // "location": "query", 5422 // "type": "string" 5423 // } 5424 // }, 5425 // "path": "v1/enterprises", 5426 // "response": { 5427 // "$ref": "ListEnterprisesResponse" 5428 // }, 5429 // "scopes": [ 5430 // "https://www.googleapis.com/auth/androidmanagement" 5431 // ] 5432 // } 5433 5434} 5435 5436// Pages invokes f for each page of results. 5437// A non-nil error returned from f will halt the iteration. 5438// The provided context supersedes any context provided to the Context method. 5439func (c *EnterprisesListCall) Pages(ctx context.Context, f func(*ListEnterprisesResponse) error) error { 5440 c.ctx_ = ctx 5441 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 5442 for { 5443 x, err := c.Do() 5444 if err != nil { 5445 return err 5446 } 5447 if err := f(x); err != nil { 5448 return err 5449 } 5450 if x.NextPageToken == "" { 5451 return nil 5452 } 5453 c.PageToken(x.NextPageToken) 5454 } 5455} 5456 5457// method id "androidmanagement.enterprises.patch": 5458 5459type EnterprisesPatchCall struct { 5460 s *Service 5461 name string 5462 enterprise *Enterprise 5463 urlParams_ gensupport.URLParams 5464 ctx_ context.Context 5465 header_ http.Header 5466} 5467 5468// Patch: Updates an enterprise. 5469// 5470// - name: The name of the enterprise in the form 5471// enterprises/{enterpriseId}. 5472func (r *EnterprisesService) Patch(name string, enterprise *Enterprise) *EnterprisesPatchCall { 5473 c := &EnterprisesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5474 c.name = name 5475 c.enterprise = enterprise 5476 return c 5477} 5478 5479// UpdateMask sets the optional parameter "updateMask": The field mask 5480// indicating the fields to update. If not set, all modifiable fields 5481// will be modified. 5482func (c *EnterprisesPatchCall) UpdateMask(updateMask string) *EnterprisesPatchCall { 5483 c.urlParams_.Set("updateMask", updateMask) 5484 return c 5485} 5486 5487// Fields allows partial responses to be retrieved. See 5488// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5489// for more information. 5490func (c *EnterprisesPatchCall) Fields(s ...googleapi.Field) *EnterprisesPatchCall { 5491 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5492 return c 5493} 5494 5495// Context sets the context to be used in this call's Do method. Any 5496// pending HTTP request will be aborted if the provided context is 5497// canceled. 5498func (c *EnterprisesPatchCall) Context(ctx context.Context) *EnterprisesPatchCall { 5499 c.ctx_ = ctx 5500 return c 5501} 5502 5503// Header returns an http.Header that can be modified by the caller to 5504// add HTTP headers to the request. 5505func (c *EnterprisesPatchCall) Header() http.Header { 5506 if c.header_ == nil { 5507 c.header_ = make(http.Header) 5508 } 5509 return c.header_ 5510} 5511 5512func (c *EnterprisesPatchCall) doRequest(alt string) (*http.Response, error) { 5513 reqHeaders := make(http.Header) 5514 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 5515 for k, v := range c.header_ { 5516 reqHeaders[k] = v 5517 } 5518 reqHeaders.Set("User-Agent", c.s.userAgent()) 5519 var body io.Reader = nil 5520 body, err := googleapi.WithoutDataWrapper.JSONReader(c.enterprise) 5521 if err != nil { 5522 return nil, err 5523 } 5524 reqHeaders.Set("Content-Type", "application/json") 5525 c.urlParams_.Set("alt", alt) 5526 c.urlParams_.Set("prettyPrint", "false") 5527 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 5528 urls += "?" + c.urlParams_.Encode() 5529 req, err := http.NewRequest("PATCH", urls, body) 5530 if err != nil { 5531 return nil, err 5532 } 5533 req.Header = reqHeaders 5534 googleapi.Expand(req.URL, map[string]string{ 5535 "name": c.name, 5536 }) 5537 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5538} 5539 5540// Do executes the "androidmanagement.enterprises.patch" call. 5541// Exactly one of *Enterprise or error will be non-nil. Any non-2xx 5542// status code is an error. Response headers are in either 5543// *Enterprise.ServerResponse.Header or (if a response was returned at 5544// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 5545// to check whether the returned error was because 5546// http.StatusNotModified was returned. 5547func (c *EnterprisesPatchCall) Do(opts ...googleapi.CallOption) (*Enterprise, error) { 5548 gensupport.SetOptions(c.urlParams_, opts...) 5549 res, err := c.doRequest("json") 5550 if res != nil && res.StatusCode == http.StatusNotModified { 5551 if res.Body != nil { 5552 res.Body.Close() 5553 } 5554 return nil, &googleapi.Error{ 5555 Code: res.StatusCode, 5556 Header: res.Header, 5557 } 5558 } 5559 if err != nil { 5560 return nil, err 5561 } 5562 defer googleapi.CloseBody(res) 5563 if err := googleapi.CheckResponse(res); err != nil { 5564 return nil, err 5565 } 5566 ret := &Enterprise{ 5567 ServerResponse: googleapi.ServerResponse{ 5568 Header: res.Header, 5569 HTTPStatusCode: res.StatusCode, 5570 }, 5571 } 5572 target := &ret 5573 if err := gensupport.DecodeResponse(target, res); err != nil { 5574 return nil, err 5575 } 5576 return ret, nil 5577 // { 5578 // "description": "Updates an enterprise.", 5579 // "flatPath": "v1/enterprises/{enterprisesId}", 5580 // "httpMethod": "PATCH", 5581 // "id": "androidmanagement.enterprises.patch", 5582 // "parameterOrder": [ 5583 // "name" 5584 // ], 5585 // "parameters": { 5586 // "name": { 5587 // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", 5588 // "location": "path", 5589 // "pattern": "^enterprises/[^/]+$", 5590 // "required": true, 5591 // "type": "string" 5592 // }, 5593 // "updateMask": { 5594 // "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.", 5595 // "format": "google-fieldmask", 5596 // "location": "query", 5597 // "type": "string" 5598 // } 5599 // }, 5600 // "path": "v1/{+name}", 5601 // "request": { 5602 // "$ref": "Enterprise" 5603 // }, 5604 // "response": { 5605 // "$ref": "Enterprise" 5606 // }, 5607 // "scopes": [ 5608 // "https://www.googleapis.com/auth/androidmanagement" 5609 // ] 5610 // } 5611 5612} 5613 5614// method id "androidmanagement.enterprises.applications.get": 5615 5616type EnterprisesApplicationsGetCall struct { 5617 s *Service 5618 name string 5619 urlParams_ gensupport.URLParams 5620 ifNoneMatch_ string 5621 ctx_ context.Context 5622 header_ http.Header 5623} 5624 5625// Get: Gets info about an application. 5626// 5627// - name: The name of the application in the form 5628// enterprises/{enterpriseId}/applications/{package_name}. 5629func (r *EnterprisesApplicationsService) Get(name string) *EnterprisesApplicationsGetCall { 5630 c := &EnterprisesApplicationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5631 c.name = name 5632 return c 5633} 5634 5635// LanguageCode sets the optional parameter "languageCode": The 5636// preferred language for localized application info, as a BCP47 tag 5637// (e.g. "en-US", "de"). If not specified the default language of the 5638// application will be used. 5639func (c *EnterprisesApplicationsGetCall) LanguageCode(languageCode string) *EnterprisesApplicationsGetCall { 5640 c.urlParams_.Set("languageCode", languageCode) 5641 return c 5642} 5643 5644// Fields allows partial responses to be retrieved. See 5645// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5646// for more information. 5647func (c *EnterprisesApplicationsGetCall) Fields(s ...googleapi.Field) *EnterprisesApplicationsGetCall { 5648 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5649 return c 5650} 5651 5652// IfNoneMatch sets the optional parameter which makes the operation 5653// fail if the object's ETag matches the given value. This is useful for 5654// getting updates only after the object has changed since the last 5655// request. Use googleapi.IsNotModified to check whether the response 5656// error from Do is the result of In-None-Match. 5657func (c *EnterprisesApplicationsGetCall) IfNoneMatch(entityTag string) *EnterprisesApplicationsGetCall { 5658 c.ifNoneMatch_ = entityTag 5659 return c 5660} 5661 5662// Context sets the context to be used in this call's Do method. Any 5663// pending HTTP request will be aborted if the provided context is 5664// canceled. 5665func (c *EnterprisesApplicationsGetCall) Context(ctx context.Context) *EnterprisesApplicationsGetCall { 5666 c.ctx_ = ctx 5667 return c 5668} 5669 5670// Header returns an http.Header that can be modified by the caller to 5671// add HTTP headers to the request. 5672func (c *EnterprisesApplicationsGetCall) Header() http.Header { 5673 if c.header_ == nil { 5674 c.header_ = make(http.Header) 5675 } 5676 return c.header_ 5677} 5678 5679func (c *EnterprisesApplicationsGetCall) doRequest(alt string) (*http.Response, error) { 5680 reqHeaders := make(http.Header) 5681 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 5682 for k, v := range c.header_ { 5683 reqHeaders[k] = v 5684 } 5685 reqHeaders.Set("User-Agent", c.s.userAgent()) 5686 if c.ifNoneMatch_ != "" { 5687 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 5688 } 5689 var body io.Reader = nil 5690 c.urlParams_.Set("alt", alt) 5691 c.urlParams_.Set("prettyPrint", "false") 5692 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 5693 urls += "?" + c.urlParams_.Encode() 5694 req, err := http.NewRequest("GET", urls, body) 5695 if err != nil { 5696 return nil, err 5697 } 5698 req.Header = reqHeaders 5699 googleapi.Expand(req.URL, map[string]string{ 5700 "name": c.name, 5701 }) 5702 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5703} 5704 5705// Do executes the "androidmanagement.enterprises.applications.get" call. 5706// Exactly one of *Application or error will be non-nil. Any non-2xx 5707// status code is an error. Response headers are in either 5708// *Application.ServerResponse.Header or (if a response was returned at 5709// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 5710// to check whether the returned error was because 5711// http.StatusNotModified was returned. 5712func (c *EnterprisesApplicationsGetCall) Do(opts ...googleapi.CallOption) (*Application, error) { 5713 gensupport.SetOptions(c.urlParams_, opts...) 5714 res, err := c.doRequest("json") 5715 if res != nil && res.StatusCode == http.StatusNotModified { 5716 if res.Body != nil { 5717 res.Body.Close() 5718 } 5719 return nil, &googleapi.Error{ 5720 Code: res.StatusCode, 5721 Header: res.Header, 5722 } 5723 } 5724 if err != nil { 5725 return nil, err 5726 } 5727 defer googleapi.CloseBody(res) 5728 if err := googleapi.CheckResponse(res); err != nil { 5729 return nil, err 5730 } 5731 ret := &Application{ 5732 ServerResponse: googleapi.ServerResponse{ 5733 Header: res.Header, 5734 HTTPStatusCode: res.StatusCode, 5735 }, 5736 } 5737 target := &ret 5738 if err := gensupport.DecodeResponse(target, res); err != nil { 5739 return nil, err 5740 } 5741 return ret, nil 5742 // { 5743 // "description": "Gets info about an application.", 5744 // "flatPath": "v1/enterprises/{enterprisesId}/applications/{applicationsId}", 5745 // "httpMethod": "GET", 5746 // "id": "androidmanagement.enterprises.applications.get", 5747 // "parameterOrder": [ 5748 // "name" 5749 // ], 5750 // "parameters": { 5751 // "languageCode": { 5752 // "description": "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.", 5753 // "location": "query", 5754 // "type": "string" 5755 // }, 5756 // "name": { 5757 // "description": "The name of the application in the form enterprises/{enterpriseId}/applications/{package_name}.", 5758 // "location": "path", 5759 // "pattern": "^enterprises/[^/]+/applications/[^/]+$", 5760 // "required": true, 5761 // "type": "string" 5762 // } 5763 // }, 5764 // "path": "v1/{+name}", 5765 // "response": { 5766 // "$ref": "Application" 5767 // }, 5768 // "scopes": [ 5769 // "https://www.googleapis.com/auth/androidmanagement" 5770 // ] 5771 // } 5772 5773} 5774 5775// method id "androidmanagement.enterprises.devices.delete": 5776 5777type EnterprisesDevicesDeleteCall struct { 5778 s *Service 5779 name string 5780 urlParams_ gensupport.URLParams 5781 ctx_ context.Context 5782 header_ http.Header 5783} 5784 5785// Delete: Deletes a device. This operation wipes the device. 5786// 5787// - name: The name of the device in the form 5788// enterprises/{enterpriseId}/devices/{deviceId}. 5789func (r *EnterprisesDevicesService) Delete(name string) *EnterprisesDevicesDeleteCall { 5790 c := &EnterprisesDevicesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5791 c.name = name 5792 return c 5793} 5794 5795// WipeDataFlags sets the optional parameter "wipeDataFlags": Optional 5796// flags that control the device wiping behavior. 5797// 5798// Possible values: 5799// "WIPE_DATA_FLAG_UNSPECIFIED" - This value is ignored. 5800// "PRESERVE_RESET_PROTECTION_DATA" - Preserve the factory reset 5801// protection data on the device. 5802// "WIPE_EXTERNAL_STORAGE" - Additionally wipe the device's external 5803// storage (such as SD cards). 5804func (c *EnterprisesDevicesDeleteCall) WipeDataFlags(wipeDataFlags ...string) *EnterprisesDevicesDeleteCall { 5805 c.urlParams_.SetMulti("wipeDataFlags", append([]string{}, wipeDataFlags...)) 5806 return c 5807} 5808 5809// WipeReasonMessage sets the optional parameter "wipeReasonMessage": A 5810// short message displayed to the user before wiping the work profile on 5811// personal devices. This has no effect on company owned devices. The 5812// maximum message length is 200 characters. 5813func (c *EnterprisesDevicesDeleteCall) WipeReasonMessage(wipeReasonMessage string) *EnterprisesDevicesDeleteCall { 5814 c.urlParams_.Set("wipeReasonMessage", wipeReasonMessage) 5815 return c 5816} 5817 5818// Fields allows partial responses to be retrieved. See 5819// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5820// for more information. 5821func (c *EnterprisesDevicesDeleteCall) Fields(s ...googleapi.Field) *EnterprisesDevicesDeleteCall { 5822 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5823 return c 5824} 5825 5826// Context sets the context to be used in this call's Do method. Any 5827// pending HTTP request will be aborted if the provided context is 5828// canceled. 5829func (c *EnterprisesDevicesDeleteCall) Context(ctx context.Context) *EnterprisesDevicesDeleteCall { 5830 c.ctx_ = ctx 5831 return c 5832} 5833 5834// Header returns an http.Header that can be modified by the caller to 5835// add HTTP headers to the request. 5836func (c *EnterprisesDevicesDeleteCall) Header() http.Header { 5837 if c.header_ == nil { 5838 c.header_ = make(http.Header) 5839 } 5840 return c.header_ 5841} 5842 5843func (c *EnterprisesDevicesDeleteCall) doRequest(alt string) (*http.Response, error) { 5844 reqHeaders := make(http.Header) 5845 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 5846 for k, v := range c.header_ { 5847 reqHeaders[k] = v 5848 } 5849 reqHeaders.Set("User-Agent", c.s.userAgent()) 5850 var body io.Reader = nil 5851 c.urlParams_.Set("alt", alt) 5852 c.urlParams_.Set("prettyPrint", "false") 5853 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 5854 urls += "?" + c.urlParams_.Encode() 5855 req, err := http.NewRequest("DELETE", urls, body) 5856 if err != nil { 5857 return nil, err 5858 } 5859 req.Header = reqHeaders 5860 googleapi.Expand(req.URL, map[string]string{ 5861 "name": c.name, 5862 }) 5863 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5864} 5865 5866// Do executes the "androidmanagement.enterprises.devices.delete" call. 5867// Exactly one of *Empty or error will be non-nil. Any non-2xx status 5868// code is an error. Response headers are in either 5869// *Empty.ServerResponse.Header or (if a response was returned at all) 5870// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 5871// check whether the returned error was because http.StatusNotModified 5872// was returned. 5873func (c *EnterprisesDevicesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 5874 gensupport.SetOptions(c.urlParams_, opts...) 5875 res, err := c.doRequest("json") 5876 if res != nil && res.StatusCode == http.StatusNotModified { 5877 if res.Body != nil { 5878 res.Body.Close() 5879 } 5880 return nil, &googleapi.Error{ 5881 Code: res.StatusCode, 5882 Header: res.Header, 5883 } 5884 } 5885 if err != nil { 5886 return nil, err 5887 } 5888 defer googleapi.CloseBody(res) 5889 if err := googleapi.CheckResponse(res); err != nil { 5890 return nil, err 5891 } 5892 ret := &Empty{ 5893 ServerResponse: googleapi.ServerResponse{ 5894 Header: res.Header, 5895 HTTPStatusCode: res.StatusCode, 5896 }, 5897 } 5898 target := &ret 5899 if err := gensupport.DecodeResponse(target, res); err != nil { 5900 return nil, err 5901 } 5902 return ret, nil 5903 // { 5904 // "description": "Deletes a device. This operation wipes the device.", 5905 // "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", 5906 // "httpMethod": "DELETE", 5907 // "id": "androidmanagement.enterprises.devices.delete", 5908 // "parameterOrder": [ 5909 // "name" 5910 // ], 5911 // "parameters": { 5912 // "name": { 5913 // "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", 5914 // "location": "path", 5915 // "pattern": "^enterprises/[^/]+/devices/[^/]+$", 5916 // "required": true, 5917 // "type": "string" 5918 // }, 5919 // "wipeDataFlags": { 5920 // "description": "Optional flags that control the device wiping behavior.", 5921 // "enum": [ 5922 // "WIPE_DATA_FLAG_UNSPECIFIED", 5923 // "PRESERVE_RESET_PROTECTION_DATA", 5924 // "WIPE_EXTERNAL_STORAGE" 5925 // ], 5926 // "enumDescriptions": [ 5927 // "This value is ignored.", 5928 // "Preserve the factory reset protection data on the device.", 5929 // "Additionally wipe the device's external storage (such as SD cards)." 5930 // ], 5931 // "location": "query", 5932 // "repeated": true, 5933 // "type": "string" 5934 // }, 5935 // "wipeReasonMessage": { 5936 // "description": "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.", 5937 // "location": "query", 5938 // "type": "string" 5939 // } 5940 // }, 5941 // "path": "v1/{+name}", 5942 // "response": { 5943 // "$ref": "Empty" 5944 // }, 5945 // "scopes": [ 5946 // "https://www.googleapis.com/auth/androidmanagement" 5947 // ] 5948 // } 5949 5950} 5951 5952// method id "androidmanagement.enterprises.devices.get": 5953 5954type EnterprisesDevicesGetCall struct { 5955 s *Service 5956 name string 5957 urlParams_ gensupport.URLParams 5958 ifNoneMatch_ string 5959 ctx_ context.Context 5960 header_ http.Header 5961} 5962 5963// Get: Gets a device. 5964// 5965// - name: The name of the device in the form 5966// enterprises/{enterpriseId}/devices/{deviceId}. 5967func (r *EnterprisesDevicesService) Get(name string) *EnterprisesDevicesGetCall { 5968 c := &EnterprisesDevicesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5969 c.name = name 5970 return c 5971} 5972 5973// Fields allows partial responses to be retrieved. See 5974// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5975// for more information. 5976func (c *EnterprisesDevicesGetCall) Fields(s ...googleapi.Field) *EnterprisesDevicesGetCall { 5977 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5978 return c 5979} 5980 5981// IfNoneMatch sets the optional parameter which makes the operation 5982// fail if the object's ETag matches the given value. This is useful for 5983// getting updates only after the object has changed since the last 5984// request. Use googleapi.IsNotModified to check whether the response 5985// error from Do is the result of In-None-Match. 5986func (c *EnterprisesDevicesGetCall) IfNoneMatch(entityTag string) *EnterprisesDevicesGetCall { 5987 c.ifNoneMatch_ = entityTag 5988 return c 5989} 5990 5991// Context sets the context to be used in this call's Do method. Any 5992// pending HTTP request will be aborted if the provided context is 5993// canceled. 5994func (c *EnterprisesDevicesGetCall) Context(ctx context.Context) *EnterprisesDevicesGetCall { 5995 c.ctx_ = ctx 5996 return c 5997} 5998 5999// Header returns an http.Header that can be modified by the caller to 6000// add HTTP headers to the request. 6001func (c *EnterprisesDevicesGetCall) Header() http.Header { 6002 if c.header_ == nil { 6003 c.header_ = make(http.Header) 6004 } 6005 return c.header_ 6006} 6007 6008func (c *EnterprisesDevicesGetCall) doRequest(alt string) (*http.Response, error) { 6009 reqHeaders := make(http.Header) 6010 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 6011 for k, v := range c.header_ { 6012 reqHeaders[k] = v 6013 } 6014 reqHeaders.Set("User-Agent", c.s.userAgent()) 6015 if c.ifNoneMatch_ != "" { 6016 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6017 } 6018 var body io.Reader = nil 6019 c.urlParams_.Set("alt", alt) 6020 c.urlParams_.Set("prettyPrint", "false") 6021 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 6022 urls += "?" + c.urlParams_.Encode() 6023 req, err := http.NewRequest("GET", urls, body) 6024 if err != nil { 6025 return nil, err 6026 } 6027 req.Header = reqHeaders 6028 googleapi.Expand(req.URL, map[string]string{ 6029 "name": c.name, 6030 }) 6031 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6032} 6033 6034// Do executes the "androidmanagement.enterprises.devices.get" call. 6035// Exactly one of *Device or error will be non-nil. Any non-2xx status 6036// code is an error. Response headers are in either 6037// *Device.ServerResponse.Header or (if a response was returned at all) 6038// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 6039// check whether the returned error was because http.StatusNotModified 6040// was returned. 6041func (c *EnterprisesDevicesGetCall) Do(opts ...googleapi.CallOption) (*Device, error) { 6042 gensupport.SetOptions(c.urlParams_, opts...) 6043 res, err := c.doRequest("json") 6044 if res != nil && res.StatusCode == http.StatusNotModified { 6045 if res.Body != nil { 6046 res.Body.Close() 6047 } 6048 return nil, &googleapi.Error{ 6049 Code: res.StatusCode, 6050 Header: res.Header, 6051 } 6052 } 6053 if err != nil { 6054 return nil, err 6055 } 6056 defer googleapi.CloseBody(res) 6057 if err := googleapi.CheckResponse(res); err != nil { 6058 return nil, err 6059 } 6060 ret := &Device{ 6061 ServerResponse: googleapi.ServerResponse{ 6062 Header: res.Header, 6063 HTTPStatusCode: res.StatusCode, 6064 }, 6065 } 6066 target := &ret 6067 if err := gensupport.DecodeResponse(target, res); err != nil { 6068 return nil, err 6069 } 6070 return ret, nil 6071 // { 6072 // "description": "Gets a device.", 6073 // "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", 6074 // "httpMethod": "GET", 6075 // "id": "androidmanagement.enterprises.devices.get", 6076 // "parameterOrder": [ 6077 // "name" 6078 // ], 6079 // "parameters": { 6080 // "name": { 6081 // "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", 6082 // "location": "path", 6083 // "pattern": "^enterprises/[^/]+/devices/[^/]+$", 6084 // "required": true, 6085 // "type": "string" 6086 // } 6087 // }, 6088 // "path": "v1/{+name}", 6089 // "response": { 6090 // "$ref": "Device" 6091 // }, 6092 // "scopes": [ 6093 // "https://www.googleapis.com/auth/androidmanagement" 6094 // ] 6095 // } 6096 6097} 6098 6099// method id "androidmanagement.enterprises.devices.issueCommand": 6100 6101type EnterprisesDevicesIssueCommandCall struct { 6102 s *Service 6103 name string 6104 command *Command 6105 urlParams_ gensupport.URLParams 6106 ctx_ context.Context 6107 header_ http.Header 6108} 6109 6110// IssueCommand: Issues a command to a device. The Operation resource 6111// returned contains a Command in its metadata field. Use the get 6112// operation method to get the status of the command. 6113// 6114// - name: The name of the device in the form 6115// enterprises/{enterpriseId}/devices/{deviceId}. 6116func (r *EnterprisesDevicesService) IssueCommand(name string, command *Command) *EnterprisesDevicesIssueCommandCall { 6117 c := &EnterprisesDevicesIssueCommandCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6118 c.name = name 6119 c.command = command 6120 return c 6121} 6122 6123// Fields allows partial responses to be retrieved. See 6124// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6125// for more information. 6126func (c *EnterprisesDevicesIssueCommandCall) Fields(s ...googleapi.Field) *EnterprisesDevicesIssueCommandCall { 6127 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6128 return c 6129} 6130 6131// Context sets the context to be used in this call's Do method. Any 6132// pending HTTP request will be aborted if the provided context is 6133// canceled. 6134func (c *EnterprisesDevicesIssueCommandCall) Context(ctx context.Context) *EnterprisesDevicesIssueCommandCall { 6135 c.ctx_ = ctx 6136 return c 6137} 6138 6139// Header returns an http.Header that can be modified by the caller to 6140// add HTTP headers to the request. 6141func (c *EnterprisesDevicesIssueCommandCall) Header() http.Header { 6142 if c.header_ == nil { 6143 c.header_ = make(http.Header) 6144 } 6145 return c.header_ 6146} 6147 6148func (c *EnterprisesDevicesIssueCommandCall) doRequest(alt string) (*http.Response, error) { 6149 reqHeaders := make(http.Header) 6150 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 6151 for k, v := range c.header_ { 6152 reqHeaders[k] = v 6153 } 6154 reqHeaders.Set("User-Agent", c.s.userAgent()) 6155 var body io.Reader = nil 6156 body, err := googleapi.WithoutDataWrapper.JSONReader(c.command) 6157 if err != nil { 6158 return nil, err 6159 } 6160 reqHeaders.Set("Content-Type", "application/json") 6161 c.urlParams_.Set("alt", alt) 6162 c.urlParams_.Set("prettyPrint", "false") 6163 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:issueCommand") 6164 urls += "?" + c.urlParams_.Encode() 6165 req, err := http.NewRequest("POST", urls, body) 6166 if err != nil { 6167 return nil, err 6168 } 6169 req.Header = reqHeaders 6170 googleapi.Expand(req.URL, map[string]string{ 6171 "name": c.name, 6172 }) 6173 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6174} 6175 6176// Do executes the "androidmanagement.enterprises.devices.issueCommand" call. 6177// Exactly one of *Operation or error will be non-nil. Any non-2xx 6178// status code is an error. Response headers are in either 6179// *Operation.ServerResponse.Header or (if a response was returned at 6180// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 6181// to check whether the returned error was because 6182// http.StatusNotModified was returned. 6183func (c *EnterprisesDevicesIssueCommandCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 6184 gensupport.SetOptions(c.urlParams_, opts...) 6185 res, err := c.doRequest("json") 6186 if res != nil && res.StatusCode == http.StatusNotModified { 6187 if res.Body != nil { 6188 res.Body.Close() 6189 } 6190 return nil, &googleapi.Error{ 6191 Code: res.StatusCode, 6192 Header: res.Header, 6193 } 6194 } 6195 if err != nil { 6196 return nil, err 6197 } 6198 defer googleapi.CloseBody(res) 6199 if err := googleapi.CheckResponse(res); err != nil { 6200 return nil, err 6201 } 6202 ret := &Operation{ 6203 ServerResponse: googleapi.ServerResponse{ 6204 Header: res.Header, 6205 HTTPStatusCode: res.StatusCode, 6206 }, 6207 } 6208 target := &ret 6209 if err := gensupport.DecodeResponse(target, res); err != nil { 6210 return nil, err 6211 } 6212 return ret, nil 6213 // { 6214 // "description": "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.", 6215 // "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}:issueCommand", 6216 // "httpMethod": "POST", 6217 // "id": "androidmanagement.enterprises.devices.issueCommand", 6218 // "parameterOrder": [ 6219 // "name" 6220 // ], 6221 // "parameters": { 6222 // "name": { 6223 // "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", 6224 // "location": "path", 6225 // "pattern": "^enterprises/[^/]+/devices/[^/]+$", 6226 // "required": true, 6227 // "type": "string" 6228 // } 6229 // }, 6230 // "path": "v1/{+name}:issueCommand", 6231 // "request": { 6232 // "$ref": "Command" 6233 // }, 6234 // "response": { 6235 // "$ref": "Operation" 6236 // }, 6237 // "scopes": [ 6238 // "https://www.googleapis.com/auth/androidmanagement" 6239 // ] 6240 // } 6241 6242} 6243 6244// method id "androidmanagement.enterprises.devices.list": 6245 6246type EnterprisesDevicesListCall struct { 6247 s *Service 6248 parent string 6249 urlParams_ gensupport.URLParams 6250 ifNoneMatch_ string 6251 ctx_ context.Context 6252 header_ http.Header 6253} 6254 6255// List: Lists devices for a given enterprise. 6256// 6257// - parent: The name of the enterprise in the form 6258// enterprises/{enterpriseId}. 6259func (r *EnterprisesDevicesService) List(parent string) *EnterprisesDevicesListCall { 6260 c := &EnterprisesDevicesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6261 c.parent = parent 6262 return c 6263} 6264 6265// PageSize sets the optional parameter "pageSize": The requested page 6266// size. The actual page size may be fixed to a min or max value. 6267func (c *EnterprisesDevicesListCall) PageSize(pageSize int64) *EnterprisesDevicesListCall { 6268 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 6269 return c 6270} 6271 6272// PageToken sets the optional parameter "pageToken": A token 6273// identifying a page of results returned by the server. 6274func (c *EnterprisesDevicesListCall) PageToken(pageToken string) *EnterprisesDevicesListCall { 6275 c.urlParams_.Set("pageToken", pageToken) 6276 return c 6277} 6278 6279// Fields allows partial responses to be retrieved. See 6280// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6281// for more information. 6282func (c *EnterprisesDevicesListCall) Fields(s ...googleapi.Field) *EnterprisesDevicesListCall { 6283 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6284 return c 6285} 6286 6287// IfNoneMatch sets the optional parameter which makes the operation 6288// fail if the object's ETag matches the given value. This is useful for 6289// getting updates only after the object has changed since the last 6290// request. Use googleapi.IsNotModified to check whether the response 6291// error from Do is the result of In-None-Match. 6292func (c *EnterprisesDevicesListCall) IfNoneMatch(entityTag string) *EnterprisesDevicesListCall { 6293 c.ifNoneMatch_ = entityTag 6294 return c 6295} 6296 6297// Context sets the context to be used in this call's Do method. Any 6298// pending HTTP request will be aborted if the provided context is 6299// canceled. 6300func (c *EnterprisesDevicesListCall) Context(ctx context.Context) *EnterprisesDevicesListCall { 6301 c.ctx_ = ctx 6302 return c 6303} 6304 6305// Header returns an http.Header that can be modified by the caller to 6306// add HTTP headers to the request. 6307func (c *EnterprisesDevicesListCall) Header() http.Header { 6308 if c.header_ == nil { 6309 c.header_ = make(http.Header) 6310 } 6311 return c.header_ 6312} 6313 6314func (c *EnterprisesDevicesListCall) doRequest(alt string) (*http.Response, error) { 6315 reqHeaders := make(http.Header) 6316 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 6317 for k, v := range c.header_ { 6318 reqHeaders[k] = v 6319 } 6320 reqHeaders.Set("User-Agent", c.s.userAgent()) 6321 if c.ifNoneMatch_ != "" { 6322 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6323 } 6324 var body io.Reader = nil 6325 c.urlParams_.Set("alt", alt) 6326 c.urlParams_.Set("prettyPrint", "false") 6327 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/devices") 6328 urls += "?" + c.urlParams_.Encode() 6329 req, err := http.NewRequest("GET", urls, body) 6330 if err != nil { 6331 return nil, err 6332 } 6333 req.Header = reqHeaders 6334 googleapi.Expand(req.URL, map[string]string{ 6335 "parent": c.parent, 6336 }) 6337 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6338} 6339 6340// Do executes the "androidmanagement.enterprises.devices.list" call. 6341// Exactly one of *ListDevicesResponse or error will be non-nil. Any 6342// non-2xx status code is an error. Response headers are in either 6343// *ListDevicesResponse.ServerResponse.Header or (if a response was 6344// returned at all) in error.(*googleapi.Error).Header. Use 6345// googleapi.IsNotModified to check whether the returned error was 6346// because http.StatusNotModified was returned. 6347func (c *EnterprisesDevicesListCall) Do(opts ...googleapi.CallOption) (*ListDevicesResponse, error) { 6348 gensupport.SetOptions(c.urlParams_, opts...) 6349 res, err := c.doRequest("json") 6350 if res != nil && res.StatusCode == http.StatusNotModified { 6351 if res.Body != nil { 6352 res.Body.Close() 6353 } 6354 return nil, &googleapi.Error{ 6355 Code: res.StatusCode, 6356 Header: res.Header, 6357 } 6358 } 6359 if err != nil { 6360 return nil, err 6361 } 6362 defer googleapi.CloseBody(res) 6363 if err := googleapi.CheckResponse(res); err != nil { 6364 return nil, err 6365 } 6366 ret := &ListDevicesResponse{ 6367 ServerResponse: googleapi.ServerResponse{ 6368 Header: res.Header, 6369 HTTPStatusCode: res.StatusCode, 6370 }, 6371 } 6372 target := &ret 6373 if err := gensupport.DecodeResponse(target, res); err != nil { 6374 return nil, err 6375 } 6376 return ret, nil 6377 // { 6378 // "description": "Lists devices for a given enterprise.", 6379 // "flatPath": "v1/enterprises/{enterprisesId}/devices", 6380 // "httpMethod": "GET", 6381 // "id": "androidmanagement.enterprises.devices.list", 6382 // "parameterOrder": [ 6383 // "parent" 6384 // ], 6385 // "parameters": { 6386 // "pageSize": { 6387 // "description": "The requested page size. The actual page size may be fixed to a min or max value.", 6388 // "format": "int32", 6389 // "location": "query", 6390 // "type": "integer" 6391 // }, 6392 // "pageToken": { 6393 // "description": "A token identifying a page of results returned by the server.", 6394 // "location": "query", 6395 // "type": "string" 6396 // }, 6397 // "parent": { 6398 // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", 6399 // "location": "path", 6400 // "pattern": "^enterprises/[^/]+$", 6401 // "required": true, 6402 // "type": "string" 6403 // } 6404 // }, 6405 // "path": "v1/{+parent}/devices", 6406 // "response": { 6407 // "$ref": "ListDevicesResponse" 6408 // }, 6409 // "scopes": [ 6410 // "https://www.googleapis.com/auth/androidmanagement" 6411 // ] 6412 // } 6413 6414} 6415 6416// Pages invokes f for each page of results. 6417// A non-nil error returned from f will halt the iteration. 6418// The provided context supersedes any context provided to the Context method. 6419func (c *EnterprisesDevicesListCall) Pages(ctx context.Context, f func(*ListDevicesResponse) error) error { 6420 c.ctx_ = ctx 6421 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 6422 for { 6423 x, err := c.Do() 6424 if err != nil { 6425 return err 6426 } 6427 if err := f(x); err != nil { 6428 return err 6429 } 6430 if x.NextPageToken == "" { 6431 return nil 6432 } 6433 c.PageToken(x.NextPageToken) 6434 } 6435} 6436 6437// method id "androidmanagement.enterprises.devices.patch": 6438 6439type EnterprisesDevicesPatchCall struct { 6440 s *Service 6441 name string 6442 device *Device 6443 urlParams_ gensupport.URLParams 6444 ctx_ context.Context 6445 header_ http.Header 6446} 6447 6448// Patch: Updates a device. 6449// 6450// - name: The name of the device in the form 6451// enterprises/{enterpriseId}/devices/{deviceId}. 6452func (r *EnterprisesDevicesService) Patch(name string, device *Device) *EnterprisesDevicesPatchCall { 6453 c := &EnterprisesDevicesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6454 c.name = name 6455 c.device = device 6456 return c 6457} 6458 6459// UpdateMask sets the optional parameter "updateMask": The field mask 6460// indicating the fields to update. If not set, all modifiable fields 6461// will be modified. 6462func (c *EnterprisesDevicesPatchCall) UpdateMask(updateMask string) *EnterprisesDevicesPatchCall { 6463 c.urlParams_.Set("updateMask", updateMask) 6464 return c 6465} 6466 6467// Fields allows partial responses to be retrieved. See 6468// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6469// for more information. 6470func (c *EnterprisesDevicesPatchCall) Fields(s ...googleapi.Field) *EnterprisesDevicesPatchCall { 6471 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6472 return c 6473} 6474 6475// Context sets the context to be used in this call's Do method. Any 6476// pending HTTP request will be aborted if the provided context is 6477// canceled. 6478func (c *EnterprisesDevicesPatchCall) Context(ctx context.Context) *EnterprisesDevicesPatchCall { 6479 c.ctx_ = ctx 6480 return c 6481} 6482 6483// Header returns an http.Header that can be modified by the caller to 6484// add HTTP headers to the request. 6485func (c *EnterprisesDevicesPatchCall) Header() http.Header { 6486 if c.header_ == nil { 6487 c.header_ = make(http.Header) 6488 } 6489 return c.header_ 6490} 6491 6492func (c *EnterprisesDevicesPatchCall) doRequest(alt string) (*http.Response, error) { 6493 reqHeaders := make(http.Header) 6494 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 6495 for k, v := range c.header_ { 6496 reqHeaders[k] = v 6497 } 6498 reqHeaders.Set("User-Agent", c.s.userAgent()) 6499 var body io.Reader = nil 6500 body, err := googleapi.WithoutDataWrapper.JSONReader(c.device) 6501 if err != nil { 6502 return nil, err 6503 } 6504 reqHeaders.Set("Content-Type", "application/json") 6505 c.urlParams_.Set("alt", alt) 6506 c.urlParams_.Set("prettyPrint", "false") 6507 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 6508 urls += "?" + c.urlParams_.Encode() 6509 req, err := http.NewRequest("PATCH", urls, body) 6510 if err != nil { 6511 return nil, err 6512 } 6513 req.Header = reqHeaders 6514 googleapi.Expand(req.URL, map[string]string{ 6515 "name": c.name, 6516 }) 6517 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6518} 6519 6520// Do executes the "androidmanagement.enterprises.devices.patch" call. 6521// Exactly one of *Device or error will be non-nil. Any non-2xx status 6522// code is an error. Response headers are in either 6523// *Device.ServerResponse.Header or (if a response was returned at all) 6524// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 6525// check whether the returned error was because http.StatusNotModified 6526// was returned. 6527func (c *EnterprisesDevicesPatchCall) Do(opts ...googleapi.CallOption) (*Device, error) { 6528 gensupport.SetOptions(c.urlParams_, opts...) 6529 res, err := c.doRequest("json") 6530 if res != nil && res.StatusCode == http.StatusNotModified { 6531 if res.Body != nil { 6532 res.Body.Close() 6533 } 6534 return nil, &googleapi.Error{ 6535 Code: res.StatusCode, 6536 Header: res.Header, 6537 } 6538 } 6539 if err != nil { 6540 return nil, err 6541 } 6542 defer googleapi.CloseBody(res) 6543 if err := googleapi.CheckResponse(res); err != nil { 6544 return nil, err 6545 } 6546 ret := &Device{ 6547 ServerResponse: googleapi.ServerResponse{ 6548 Header: res.Header, 6549 HTTPStatusCode: res.StatusCode, 6550 }, 6551 } 6552 target := &ret 6553 if err := gensupport.DecodeResponse(target, res); err != nil { 6554 return nil, err 6555 } 6556 return ret, nil 6557 // { 6558 // "description": "Updates a device.", 6559 // "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", 6560 // "httpMethod": "PATCH", 6561 // "id": "androidmanagement.enterprises.devices.patch", 6562 // "parameterOrder": [ 6563 // "name" 6564 // ], 6565 // "parameters": { 6566 // "name": { 6567 // "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", 6568 // "location": "path", 6569 // "pattern": "^enterprises/[^/]+/devices/[^/]+$", 6570 // "required": true, 6571 // "type": "string" 6572 // }, 6573 // "updateMask": { 6574 // "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.", 6575 // "format": "google-fieldmask", 6576 // "location": "query", 6577 // "type": "string" 6578 // } 6579 // }, 6580 // "path": "v1/{+name}", 6581 // "request": { 6582 // "$ref": "Device" 6583 // }, 6584 // "response": { 6585 // "$ref": "Device" 6586 // }, 6587 // "scopes": [ 6588 // "https://www.googleapis.com/auth/androidmanagement" 6589 // ] 6590 // } 6591 6592} 6593 6594// method id "androidmanagement.enterprises.devices.operations.cancel": 6595 6596type EnterprisesDevicesOperationsCancelCall struct { 6597 s *Service 6598 name string 6599 urlParams_ gensupport.URLParams 6600 ctx_ context.Context 6601 header_ http.Header 6602} 6603 6604// Cancel: Starts asynchronous cancellation on a long-running operation. 6605// The server makes a best effort to cancel the operation, but success 6606// is not guaranteed. If the server doesn't support this method, it 6607// returns google.rpc.Code.UNIMPLEMENTED. Clients can use 6608// Operations.GetOperation or other methods to check whether the 6609// cancellation succeeded or whether the operation completed despite 6610// cancellation. On successful cancellation, the operation is not 6611// deleted; instead, it becomes an operation with an Operation.error 6612// value with a google.rpc.Status.code of 1, corresponding to 6613// Code.CANCELLED. 6614// 6615// - name: The name of the operation resource to be cancelled. 6616func (r *EnterprisesDevicesOperationsService) Cancel(name string) *EnterprisesDevicesOperationsCancelCall { 6617 c := &EnterprisesDevicesOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6618 c.name = name 6619 return c 6620} 6621 6622// Fields allows partial responses to be retrieved. See 6623// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6624// for more information. 6625func (c *EnterprisesDevicesOperationsCancelCall) Fields(s ...googleapi.Field) *EnterprisesDevicesOperationsCancelCall { 6626 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6627 return c 6628} 6629 6630// Context sets the context to be used in this call's Do method. Any 6631// pending HTTP request will be aborted if the provided context is 6632// canceled. 6633func (c *EnterprisesDevicesOperationsCancelCall) Context(ctx context.Context) *EnterprisesDevicesOperationsCancelCall { 6634 c.ctx_ = ctx 6635 return c 6636} 6637 6638// Header returns an http.Header that can be modified by the caller to 6639// add HTTP headers to the request. 6640func (c *EnterprisesDevicesOperationsCancelCall) Header() http.Header { 6641 if c.header_ == nil { 6642 c.header_ = make(http.Header) 6643 } 6644 return c.header_ 6645} 6646 6647func (c *EnterprisesDevicesOperationsCancelCall) doRequest(alt string) (*http.Response, error) { 6648 reqHeaders := make(http.Header) 6649 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 6650 for k, v := range c.header_ { 6651 reqHeaders[k] = v 6652 } 6653 reqHeaders.Set("User-Agent", c.s.userAgent()) 6654 var body io.Reader = nil 6655 c.urlParams_.Set("alt", alt) 6656 c.urlParams_.Set("prettyPrint", "false") 6657 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:cancel") 6658 urls += "?" + c.urlParams_.Encode() 6659 req, err := http.NewRequest("POST", urls, body) 6660 if err != nil { 6661 return nil, err 6662 } 6663 req.Header = reqHeaders 6664 googleapi.Expand(req.URL, map[string]string{ 6665 "name": c.name, 6666 }) 6667 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6668} 6669 6670// Do executes the "androidmanagement.enterprises.devices.operations.cancel" call. 6671// Exactly one of *Empty or error will be non-nil. Any non-2xx status 6672// code is an error. Response headers are in either 6673// *Empty.ServerResponse.Header or (if a response was returned at all) 6674// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 6675// check whether the returned error was because http.StatusNotModified 6676// was returned. 6677func (c *EnterprisesDevicesOperationsCancelCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 6678 gensupport.SetOptions(c.urlParams_, opts...) 6679 res, err := c.doRequest("json") 6680 if res != nil && res.StatusCode == http.StatusNotModified { 6681 if res.Body != nil { 6682 res.Body.Close() 6683 } 6684 return nil, &googleapi.Error{ 6685 Code: res.StatusCode, 6686 Header: res.Header, 6687 } 6688 } 6689 if err != nil { 6690 return nil, err 6691 } 6692 defer googleapi.CloseBody(res) 6693 if err := googleapi.CheckResponse(res); err != nil { 6694 return nil, err 6695 } 6696 ret := &Empty{ 6697 ServerResponse: googleapi.ServerResponse{ 6698 Header: res.Header, 6699 HTTPStatusCode: res.StatusCode, 6700 }, 6701 } 6702 target := &ret 6703 if err := gensupport.DecodeResponse(target, res); err != nil { 6704 return nil, err 6705 } 6706 return ret, nil 6707 // { 6708 // "description": "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.", 6709 // "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}:cancel", 6710 // "httpMethod": "POST", 6711 // "id": "androidmanagement.enterprises.devices.operations.cancel", 6712 // "parameterOrder": [ 6713 // "name" 6714 // ], 6715 // "parameters": { 6716 // "name": { 6717 // "description": "The name of the operation resource to be cancelled.", 6718 // "location": "path", 6719 // "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", 6720 // "required": true, 6721 // "type": "string" 6722 // } 6723 // }, 6724 // "path": "v1/{+name}:cancel", 6725 // "response": { 6726 // "$ref": "Empty" 6727 // }, 6728 // "scopes": [ 6729 // "https://www.googleapis.com/auth/androidmanagement" 6730 // ] 6731 // } 6732 6733} 6734 6735// method id "androidmanagement.enterprises.devices.operations.delete": 6736 6737type EnterprisesDevicesOperationsDeleteCall struct { 6738 s *Service 6739 name string 6740 urlParams_ gensupport.URLParams 6741 ctx_ context.Context 6742 header_ http.Header 6743} 6744 6745// Delete: Deletes a long-running operation. This method indicates that 6746// the client is no longer interested in the operation result. It does 6747// not cancel the operation. If the server doesn't support this method, 6748// it returns google.rpc.Code.UNIMPLEMENTED. 6749// 6750// - name: The name of the operation resource to be deleted. 6751func (r *EnterprisesDevicesOperationsService) Delete(name string) *EnterprisesDevicesOperationsDeleteCall { 6752 c := &EnterprisesDevicesOperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6753 c.name = name 6754 return c 6755} 6756 6757// Fields allows partial responses to be retrieved. See 6758// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6759// for more information. 6760func (c *EnterprisesDevicesOperationsDeleteCall) Fields(s ...googleapi.Field) *EnterprisesDevicesOperationsDeleteCall { 6761 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6762 return c 6763} 6764 6765// Context sets the context to be used in this call's Do method. Any 6766// pending HTTP request will be aborted if the provided context is 6767// canceled. 6768func (c *EnterprisesDevicesOperationsDeleteCall) Context(ctx context.Context) *EnterprisesDevicesOperationsDeleteCall { 6769 c.ctx_ = ctx 6770 return c 6771} 6772 6773// Header returns an http.Header that can be modified by the caller to 6774// add HTTP headers to the request. 6775func (c *EnterprisesDevicesOperationsDeleteCall) Header() http.Header { 6776 if c.header_ == nil { 6777 c.header_ = make(http.Header) 6778 } 6779 return c.header_ 6780} 6781 6782func (c *EnterprisesDevicesOperationsDeleteCall) doRequest(alt string) (*http.Response, error) { 6783 reqHeaders := make(http.Header) 6784 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 6785 for k, v := range c.header_ { 6786 reqHeaders[k] = v 6787 } 6788 reqHeaders.Set("User-Agent", c.s.userAgent()) 6789 var body io.Reader = nil 6790 c.urlParams_.Set("alt", alt) 6791 c.urlParams_.Set("prettyPrint", "false") 6792 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 6793 urls += "?" + c.urlParams_.Encode() 6794 req, err := http.NewRequest("DELETE", urls, body) 6795 if err != nil { 6796 return nil, err 6797 } 6798 req.Header = reqHeaders 6799 googleapi.Expand(req.URL, map[string]string{ 6800 "name": c.name, 6801 }) 6802 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6803} 6804 6805// Do executes the "androidmanagement.enterprises.devices.operations.delete" call. 6806// Exactly one of *Empty or error will be non-nil. Any non-2xx status 6807// code is an error. Response headers are in either 6808// *Empty.ServerResponse.Header or (if a response was returned at all) 6809// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 6810// check whether the returned error was because http.StatusNotModified 6811// was returned. 6812func (c *EnterprisesDevicesOperationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 6813 gensupport.SetOptions(c.urlParams_, opts...) 6814 res, err := c.doRequest("json") 6815 if res != nil && res.StatusCode == http.StatusNotModified { 6816 if res.Body != nil { 6817 res.Body.Close() 6818 } 6819 return nil, &googleapi.Error{ 6820 Code: res.StatusCode, 6821 Header: res.Header, 6822 } 6823 } 6824 if err != nil { 6825 return nil, err 6826 } 6827 defer googleapi.CloseBody(res) 6828 if err := googleapi.CheckResponse(res); err != nil { 6829 return nil, err 6830 } 6831 ret := &Empty{ 6832 ServerResponse: googleapi.ServerResponse{ 6833 Header: res.Header, 6834 HTTPStatusCode: res.StatusCode, 6835 }, 6836 } 6837 target := &ret 6838 if err := gensupport.DecodeResponse(target, res); err != nil { 6839 return nil, err 6840 } 6841 return ret, nil 6842 // { 6843 // "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED.", 6844 // "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}", 6845 // "httpMethod": "DELETE", 6846 // "id": "androidmanagement.enterprises.devices.operations.delete", 6847 // "parameterOrder": [ 6848 // "name" 6849 // ], 6850 // "parameters": { 6851 // "name": { 6852 // "description": "The name of the operation resource to be deleted.", 6853 // "location": "path", 6854 // "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", 6855 // "required": true, 6856 // "type": "string" 6857 // } 6858 // }, 6859 // "path": "v1/{+name}", 6860 // "response": { 6861 // "$ref": "Empty" 6862 // }, 6863 // "scopes": [ 6864 // "https://www.googleapis.com/auth/androidmanagement" 6865 // ] 6866 // } 6867 6868} 6869 6870// method id "androidmanagement.enterprises.devices.operations.get": 6871 6872type EnterprisesDevicesOperationsGetCall struct { 6873 s *Service 6874 name string 6875 urlParams_ gensupport.URLParams 6876 ifNoneMatch_ string 6877 ctx_ context.Context 6878 header_ http.Header 6879} 6880 6881// Get: Gets the latest state of a long-running operation. Clients can 6882// use this method to poll the operation result at intervals as 6883// recommended by the API service. 6884// 6885// - name: The name of the operation resource. 6886func (r *EnterprisesDevicesOperationsService) Get(name string) *EnterprisesDevicesOperationsGetCall { 6887 c := &EnterprisesDevicesOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6888 c.name = name 6889 return c 6890} 6891 6892// Fields allows partial responses to be retrieved. See 6893// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6894// for more information. 6895func (c *EnterprisesDevicesOperationsGetCall) Fields(s ...googleapi.Field) *EnterprisesDevicesOperationsGetCall { 6896 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6897 return c 6898} 6899 6900// IfNoneMatch sets the optional parameter which makes the operation 6901// fail if the object's ETag matches the given value. This is useful for 6902// getting updates only after the object has changed since the last 6903// request. Use googleapi.IsNotModified to check whether the response 6904// error from Do is the result of In-None-Match. 6905func (c *EnterprisesDevicesOperationsGetCall) IfNoneMatch(entityTag string) *EnterprisesDevicesOperationsGetCall { 6906 c.ifNoneMatch_ = entityTag 6907 return c 6908} 6909 6910// Context sets the context to be used in this call's Do method. Any 6911// pending HTTP request will be aborted if the provided context is 6912// canceled. 6913func (c *EnterprisesDevicesOperationsGetCall) Context(ctx context.Context) *EnterprisesDevicesOperationsGetCall { 6914 c.ctx_ = ctx 6915 return c 6916} 6917 6918// Header returns an http.Header that can be modified by the caller to 6919// add HTTP headers to the request. 6920func (c *EnterprisesDevicesOperationsGetCall) Header() http.Header { 6921 if c.header_ == nil { 6922 c.header_ = make(http.Header) 6923 } 6924 return c.header_ 6925} 6926 6927func (c *EnterprisesDevicesOperationsGetCall) doRequest(alt string) (*http.Response, error) { 6928 reqHeaders := make(http.Header) 6929 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 6930 for k, v := range c.header_ { 6931 reqHeaders[k] = v 6932 } 6933 reqHeaders.Set("User-Agent", c.s.userAgent()) 6934 if c.ifNoneMatch_ != "" { 6935 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6936 } 6937 var body io.Reader = nil 6938 c.urlParams_.Set("alt", alt) 6939 c.urlParams_.Set("prettyPrint", "false") 6940 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 6941 urls += "?" + c.urlParams_.Encode() 6942 req, err := http.NewRequest("GET", urls, body) 6943 if err != nil { 6944 return nil, err 6945 } 6946 req.Header = reqHeaders 6947 googleapi.Expand(req.URL, map[string]string{ 6948 "name": c.name, 6949 }) 6950 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6951} 6952 6953// Do executes the "androidmanagement.enterprises.devices.operations.get" call. 6954// Exactly one of *Operation or error will be non-nil. Any non-2xx 6955// status code is an error. Response headers are in either 6956// *Operation.ServerResponse.Header or (if a response was returned at 6957// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 6958// to check whether the returned error was because 6959// http.StatusNotModified was returned. 6960func (c *EnterprisesDevicesOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 6961 gensupport.SetOptions(c.urlParams_, opts...) 6962 res, err := c.doRequest("json") 6963 if res != nil && res.StatusCode == http.StatusNotModified { 6964 if res.Body != nil { 6965 res.Body.Close() 6966 } 6967 return nil, &googleapi.Error{ 6968 Code: res.StatusCode, 6969 Header: res.Header, 6970 } 6971 } 6972 if err != nil { 6973 return nil, err 6974 } 6975 defer googleapi.CloseBody(res) 6976 if err := googleapi.CheckResponse(res); err != nil { 6977 return nil, err 6978 } 6979 ret := &Operation{ 6980 ServerResponse: googleapi.ServerResponse{ 6981 Header: res.Header, 6982 HTTPStatusCode: res.StatusCode, 6983 }, 6984 } 6985 target := &ret 6986 if err := gensupport.DecodeResponse(target, res); err != nil { 6987 return nil, err 6988 } 6989 return ret, nil 6990 // { 6991 // "description": "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.", 6992 // "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}", 6993 // "httpMethod": "GET", 6994 // "id": "androidmanagement.enterprises.devices.operations.get", 6995 // "parameterOrder": [ 6996 // "name" 6997 // ], 6998 // "parameters": { 6999 // "name": { 7000 // "description": "The name of the operation resource.", 7001 // "location": "path", 7002 // "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", 7003 // "required": true, 7004 // "type": "string" 7005 // } 7006 // }, 7007 // "path": "v1/{+name}", 7008 // "response": { 7009 // "$ref": "Operation" 7010 // }, 7011 // "scopes": [ 7012 // "https://www.googleapis.com/auth/androidmanagement" 7013 // ] 7014 // } 7015 7016} 7017 7018// method id "androidmanagement.enterprises.devices.operations.list": 7019 7020type EnterprisesDevicesOperationsListCall struct { 7021 s *Service 7022 name string 7023 urlParams_ gensupport.URLParams 7024 ifNoneMatch_ string 7025 ctx_ context.Context 7026 header_ http.Header 7027} 7028 7029// List: Lists operations that match the specified filter in the 7030// request. If the server doesn't support this method, it returns 7031// UNIMPLEMENTED.NOTE: the name binding allows API services to override 7032// the binding to use different resource name schemes, such as 7033// users/*/operations. To override the binding, API services can add a 7034// binding such as "/v1/{name=users/*}/operations" to their service 7035// configuration. For backwards compatibility, the default name includes 7036// the operations collection id, however overriding users must ensure 7037// the name binding is the parent resource, without the operations 7038// collection id. 7039// 7040// - name: The name of the operation's parent resource. 7041func (r *EnterprisesDevicesOperationsService) List(name string) *EnterprisesDevicesOperationsListCall { 7042 c := &EnterprisesDevicesOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7043 c.name = name 7044 return c 7045} 7046 7047// Filter sets the optional parameter "filter": The standard list 7048// filter. 7049func (c *EnterprisesDevicesOperationsListCall) Filter(filter string) *EnterprisesDevicesOperationsListCall { 7050 c.urlParams_.Set("filter", filter) 7051 return c 7052} 7053 7054// PageSize sets the optional parameter "pageSize": The standard list 7055// page size. 7056func (c *EnterprisesDevicesOperationsListCall) PageSize(pageSize int64) *EnterprisesDevicesOperationsListCall { 7057 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 7058 return c 7059} 7060 7061// PageToken sets the optional parameter "pageToken": The standard list 7062// page token. 7063func (c *EnterprisesDevicesOperationsListCall) PageToken(pageToken string) *EnterprisesDevicesOperationsListCall { 7064 c.urlParams_.Set("pageToken", pageToken) 7065 return c 7066} 7067 7068// Fields allows partial responses to be retrieved. See 7069// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7070// for more information. 7071func (c *EnterprisesDevicesOperationsListCall) Fields(s ...googleapi.Field) *EnterprisesDevicesOperationsListCall { 7072 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7073 return c 7074} 7075 7076// IfNoneMatch sets the optional parameter which makes the operation 7077// fail if the object's ETag matches the given value. This is useful for 7078// getting updates only after the object has changed since the last 7079// request. Use googleapi.IsNotModified to check whether the response 7080// error from Do is the result of In-None-Match. 7081func (c *EnterprisesDevicesOperationsListCall) IfNoneMatch(entityTag string) *EnterprisesDevicesOperationsListCall { 7082 c.ifNoneMatch_ = entityTag 7083 return c 7084} 7085 7086// Context sets the context to be used in this call's Do method. Any 7087// pending HTTP request will be aborted if the provided context is 7088// canceled. 7089func (c *EnterprisesDevicesOperationsListCall) Context(ctx context.Context) *EnterprisesDevicesOperationsListCall { 7090 c.ctx_ = ctx 7091 return c 7092} 7093 7094// Header returns an http.Header that can be modified by the caller to 7095// add HTTP headers to the request. 7096func (c *EnterprisesDevicesOperationsListCall) Header() http.Header { 7097 if c.header_ == nil { 7098 c.header_ = make(http.Header) 7099 } 7100 return c.header_ 7101} 7102 7103func (c *EnterprisesDevicesOperationsListCall) doRequest(alt string) (*http.Response, error) { 7104 reqHeaders := make(http.Header) 7105 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 7106 for k, v := range c.header_ { 7107 reqHeaders[k] = v 7108 } 7109 reqHeaders.Set("User-Agent", c.s.userAgent()) 7110 if c.ifNoneMatch_ != "" { 7111 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 7112 } 7113 var body io.Reader = nil 7114 c.urlParams_.Set("alt", alt) 7115 c.urlParams_.Set("prettyPrint", "false") 7116 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 7117 urls += "?" + c.urlParams_.Encode() 7118 req, err := http.NewRequest("GET", urls, body) 7119 if err != nil { 7120 return nil, err 7121 } 7122 req.Header = reqHeaders 7123 googleapi.Expand(req.URL, map[string]string{ 7124 "name": c.name, 7125 }) 7126 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7127} 7128 7129// Do executes the "androidmanagement.enterprises.devices.operations.list" call. 7130// Exactly one of *ListOperationsResponse or error will be non-nil. Any 7131// non-2xx status code is an error. Response headers are in either 7132// *ListOperationsResponse.ServerResponse.Header or (if a response was 7133// returned at all) in error.(*googleapi.Error).Header. Use 7134// googleapi.IsNotModified to check whether the returned error was 7135// because http.StatusNotModified was returned. 7136func (c *EnterprisesDevicesOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) { 7137 gensupport.SetOptions(c.urlParams_, opts...) 7138 res, err := c.doRequest("json") 7139 if res != nil && res.StatusCode == http.StatusNotModified { 7140 if res.Body != nil { 7141 res.Body.Close() 7142 } 7143 return nil, &googleapi.Error{ 7144 Code: res.StatusCode, 7145 Header: res.Header, 7146 } 7147 } 7148 if err != nil { 7149 return nil, err 7150 } 7151 defer googleapi.CloseBody(res) 7152 if err := googleapi.CheckResponse(res); err != nil { 7153 return nil, err 7154 } 7155 ret := &ListOperationsResponse{ 7156 ServerResponse: googleapi.ServerResponse{ 7157 Header: res.Header, 7158 HTTPStatusCode: res.StatusCode, 7159 }, 7160 } 7161 target := &ret 7162 if err := gensupport.DecodeResponse(target, res); err != nil { 7163 return nil, err 7164 } 7165 return ret, nil 7166 // { 7167 // "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", 7168 // "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations", 7169 // "httpMethod": "GET", 7170 // "id": "androidmanagement.enterprises.devices.operations.list", 7171 // "parameterOrder": [ 7172 // "name" 7173 // ], 7174 // "parameters": { 7175 // "filter": { 7176 // "description": "The standard list filter.", 7177 // "location": "query", 7178 // "type": "string" 7179 // }, 7180 // "name": { 7181 // "description": "The name of the operation's parent resource.", 7182 // "location": "path", 7183 // "pattern": "^enterprises/[^/]+/devices/[^/]+/operations$", 7184 // "required": true, 7185 // "type": "string" 7186 // }, 7187 // "pageSize": { 7188 // "description": "The standard list page size.", 7189 // "format": "int32", 7190 // "location": "query", 7191 // "type": "integer" 7192 // }, 7193 // "pageToken": { 7194 // "description": "The standard list page token.", 7195 // "location": "query", 7196 // "type": "string" 7197 // } 7198 // }, 7199 // "path": "v1/{+name}", 7200 // "response": { 7201 // "$ref": "ListOperationsResponse" 7202 // }, 7203 // "scopes": [ 7204 // "https://www.googleapis.com/auth/androidmanagement" 7205 // ] 7206 // } 7207 7208} 7209 7210// Pages invokes f for each page of results. 7211// A non-nil error returned from f will halt the iteration. 7212// The provided context supersedes any context provided to the Context method. 7213func (c *EnterprisesDevicesOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error { 7214 c.ctx_ = ctx 7215 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 7216 for { 7217 x, err := c.Do() 7218 if err != nil { 7219 return err 7220 } 7221 if err := f(x); err != nil { 7222 return err 7223 } 7224 if x.NextPageToken == "" { 7225 return nil 7226 } 7227 c.PageToken(x.NextPageToken) 7228 } 7229} 7230 7231// method id "androidmanagement.enterprises.enrollmentTokens.create": 7232 7233type EnterprisesEnrollmentTokensCreateCall struct { 7234 s *Service 7235 parent string 7236 enrollmenttoken *EnrollmentToken 7237 urlParams_ gensupport.URLParams 7238 ctx_ context.Context 7239 header_ http.Header 7240} 7241 7242// Create: Creates an enrollment token for a given enterprise. 7243// 7244// - parent: The name of the enterprise in the form 7245// enterprises/{enterpriseId}. 7246func (r *EnterprisesEnrollmentTokensService) Create(parent string, enrollmenttoken *EnrollmentToken) *EnterprisesEnrollmentTokensCreateCall { 7247 c := &EnterprisesEnrollmentTokensCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7248 c.parent = parent 7249 c.enrollmenttoken = enrollmenttoken 7250 return c 7251} 7252 7253// Fields allows partial responses to be retrieved. See 7254// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7255// for more information. 7256func (c *EnterprisesEnrollmentTokensCreateCall) Fields(s ...googleapi.Field) *EnterprisesEnrollmentTokensCreateCall { 7257 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7258 return c 7259} 7260 7261// Context sets the context to be used in this call's Do method. Any 7262// pending HTTP request will be aborted if the provided context is 7263// canceled. 7264func (c *EnterprisesEnrollmentTokensCreateCall) Context(ctx context.Context) *EnterprisesEnrollmentTokensCreateCall { 7265 c.ctx_ = ctx 7266 return c 7267} 7268 7269// Header returns an http.Header that can be modified by the caller to 7270// add HTTP headers to the request. 7271func (c *EnterprisesEnrollmentTokensCreateCall) Header() http.Header { 7272 if c.header_ == nil { 7273 c.header_ = make(http.Header) 7274 } 7275 return c.header_ 7276} 7277 7278func (c *EnterprisesEnrollmentTokensCreateCall) doRequest(alt string) (*http.Response, error) { 7279 reqHeaders := make(http.Header) 7280 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 7281 for k, v := range c.header_ { 7282 reqHeaders[k] = v 7283 } 7284 reqHeaders.Set("User-Agent", c.s.userAgent()) 7285 var body io.Reader = nil 7286 body, err := googleapi.WithoutDataWrapper.JSONReader(c.enrollmenttoken) 7287 if err != nil { 7288 return nil, err 7289 } 7290 reqHeaders.Set("Content-Type", "application/json") 7291 c.urlParams_.Set("alt", alt) 7292 c.urlParams_.Set("prettyPrint", "false") 7293 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/enrollmentTokens") 7294 urls += "?" + c.urlParams_.Encode() 7295 req, err := http.NewRequest("POST", urls, body) 7296 if err != nil { 7297 return nil, err 7298 } 7299 req.Header = reqHeaders 7300 googleapi.Expand(req.URL, map[string]string{ 7301 "parent": c.parent, 7302 }) 7303 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7304} 7305 7306// Do executes the "androidmanagement.enterprises.enrollmentTokens.create" call. 7307// Exactly one of *EnrollmentToken or error will be non-nil. Any non-2xx 7308// status code is an error. Response headers are in either 7309// *EnrollmentToken.ServerResponse.Header or (if a response was returned 7310// at all) in error.(*googleapi.Error).Header. Use 7311// googleapi.IsNotModified to check whether the returned error was 7312// because http.StatusNotModified was returned. 7313func (c *EnterprisesEnrollmentTokensCreateCall) Do(opts ...googleapi.CallOption) (*EnrollmentToken, error) { 7314 gensupport.SetOptions(c.urlParams_, opts...) 7315 res, err := c.doRequest("json") 7316 if res != nil && res.StatusCode == http.StatusNotModified { 7317 if res.Body != nil { 7318 res.Body.Close() 7319 } 7320 return nil, &googleapi.Error{ 7321 Code: res.StatusCode, 7322 Header: res.Header, 7323 } 7324 } 7325 if err != nil { 7326 return nil, err 7327 } 7328 defer googleapi.CloseBody(res) 7329 if err := googleapi.CheckResponse(res); err != nil { 7330 return nil, err 7331 } 7332 ret := &EnrollmentToken{ 7333 ServerResponse: googleapi.ServerResponse{ 7334 Header: res.Header, 7335 HTTPStatusCode: res.StatusCode, 7336 }, 7337 } 7338 target := &ret 7339 if err := gensupport.DecodeResponse(target, res); err != nil { 7340 return nil, err 7341 } 7342 return ret, nil 7343 // { 7344 // "description": "Creates an enrollment token for a given enterprise.", 7345 // "flatPath": "v1/enterprises/{enterprisesId}/enrollmentTokens", 7346 // "httpMethod": "POST", 7347 // "id": "androidmanagement.enterprises.enrollmentTokens.create", 7348 // "parameterOrder": [ 7349 // "parent" 7350 // ], 7351 // "parameters": { 7352 // "parent": { 7353 // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", 7354 // "location": "path", 7355 // "pattern": "^enterprises/[^/]+$", 7356 // "required": true, 7357 // "type": "string" 7358 // } 7359 // }, 7360 // "path": "v1/{+parent}/enrollmentTokens", 7361 // "request": { 7362 // "$ref": "EnrollmentToken" 7363 // }, 7364 // "response": { 7365 // "$ref": "EnrollmentToken" 7366 // }, 7367 // "scopes": [ 7368 // "https://www.googleapis.com/auth/androidmanagement" 7369 // ] 7370 // } 7371 7372} 7373 7374// method id "androidmanagement.enterprises.enrollmentTokens.delete": 7375 7376type EnterprisesEnrollmentTokensDeleteCall struct { 7377 s *Service 7378 name string 7379 urlParams_ gensupport.URLParams 7380 ctx_ context.Context 7381 header_ http.Header 7382} 7383 7384// Delete: Deletes an enrollment token. This operation invalidates the 7385// token, preventing its future use. 7386// 7387// - name: The name of the enrollment token in the form 7388// enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}. 7389func (r *EnterprisesEnrollmentTokensService) Delete(name string) *EnterprisesEnrollmentTokensDeleteCall { 7390 c := &EnterprisesEnrollmentTokensDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7391 c.name = name 7392 return c 7393} 7394 7395// Fields allows partial responses to be retrieved. See 7396// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7397// for more information. 7398func (c *EnterprisesEnrollmentTokensDeleteCall) Fields(s ...googleapi.Field) *EnterprisesEnrollmentTokensDeleteCall { 7399 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7400 return c 7401} 7402 7403// Context sets the context to be used in this call's Do method. Any 7404// pending HTTP request will be aborted if the provided context is 7405// canceled. 7406func (c *EnterprisesEnrollmentTokensDeleteCall) Context(ctx context.Context) *EnterprisesEnrollmentTokensDeleteCall { 7407 c.ctx_ = ctx 7408 return c 7409} 7410 7411// Header returns an http.Header that can be modified by the caller to 7412// add HTTP headers to the request. 7413func (c *EnterprisesEnrollmentTokensDeleteCall) Header() http.Header { 7414 if c.header_ == nil { 7415 c.header_ = make(http.Header) 7416 } 7417 return c.header_ 7418} 7419 7420func (c *EnterprisesEnrollmentTokensDeleteCall) doRequest(alt string) (*http.Response, error) { 7421 reqHeaders := make(http.Header) 7422 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 7423 for k, v := range c.header_ { 7424 reqHeaders[k] = v 7425 } 7426 reqHeaders.Set("User-Agent", c.s.userAgent()) 7427 var body io.Reader = nil 7428 c.urlParams_.Set("alt", alt) 7429 c.urlParams_.Set("prettyPrint", "false") 7430 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 7431 urls += "?" + c.urlParams_.Encode() 7432 req, err := http.NewRequest("DELETE", urls, body) 7433 if err != nil { 7434 return nil, err 7435 } 7436 req.Header = reqHeaders 7437 googleapi.Expand(req.URL, map[string]string{ 7438 "name": c.name, 7439 }) 7440 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7441} 7442 7443// Do executes the "androidmanagement.enterprises.enrollmentTokens.delete" call. 7444// Exactly one of *Empty or error will be non-nil. Any non-2xx status 7445// code is an error. Response headers are in either 7446// *Empty.ServerResponse.Header or (if a response was returned at all) 7447// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 7448// check whether the returned error was because http.StatusNotModified 7449// was returned. 7450func (c *EnterprisesEnrollmentTokensDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 7451 gensupport.SetOptions(c.urlParams_, opts...) 7452 res, err := c.doRequest("json") 7453 if res != nil && res.StatusCode == http.StatusNotModified { 7454 if res.Body != nil { 7455 res.Body.Close() 7456 } 7457 return nil, &googleapi.Error{ 7458 Code: res.StatusCode, 7459 Header: res.Header, 7460 } 7461 } 7462 if err != nil { 7463 return nil, err 7464 } 7465 defer googleapi.CloseBody(res) 7466 if err := googleapi.CheckResponse(res); err != nil { 7467 return nil, err 7468 } 7469 ret := &Empty{ 7470 ServerResponse: googleapi.ServerResponse{ 7471 Header: res.Header, 7472 HTTPStatusCode: res.StatusCode, 7473 }, 7474 } 7475 target := &ret 7476 if err := gensupport.DecodeResponse(target, res); err != nil { 7477 return nil, err 7478 } 7479 return ret, nil 7480 // { 7481 // "description": "Deletes an enrollment token. This operation invalidates the token, preventing its future use.", 7482 // "flatPath": "v1/enterprises/{enterprisesId}/enrollmentTokens/{enrollmentTokensId}", 7483 // "httpMethod": "DELETE", 7484 // "id": "androidmanagement.enterprises.enrollmentTokens.delete", 7485 // "parameterOrder": [ 7486 // "name" 7487 // ], 7488 // "parameters": { 7489 // "name": { 7490 // "description": "The name of the enrollment token in the form enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}.", 7491 // "location": "path", 7492 // "pattern": "^enterprises/[^/]+/enrollmentTokens/[^/]+$", 7493 // "required": true, 7494 // "type": "string" 7495 // } 7496 // }, 7497 // "path": "v1/{+name}", 7498 // "response": { 7499 // "$ref": "Empty" 7500 // }, 7501 // "scopes": [ 7502 // "https://www.googleapis.com/auth/androidmanagement" 7503 // ] 7504 // } 7505 7506} 7507 7508// method id "androidmanagement.enterprises.policies.delete": 7509 7510type EnterprisesPoliciesDeleteCall struct { 7511 s *Service 7512 name string 7513 urlParams_ gensupport.URLParams 7514 ctx_ context.Context 7515 header_ http.Header 7516} 7517 7518// Delete: Deletes a policy. This operation is only permitted if no 7519// devices are currently referencing the policy. 7520// 7521// - name: The name of the policy in the form 7522// enterprises/{enterpriseId}/policies/{policyId}. 7523func (r *EnterprisesPoliciesService) Delete(name string) *EnterprisesPoliciesDeleteCall { 7524 c := &EnterprisesPoliciesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7525 c.name = name 7526 return c 7527} 7528 7529// Fields allows partial responses to be retrieved. See 7530// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7531// for more information. 7532func (c *EnterprisesPoliciesDeleteCall) Fields(s ...googleapi.Field) *EnterprisesPoliciesDeleteCall { 7533 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7534 return c 7535} 7536 7537// Context sets the context to be used in this call's Do method. Any 7538// pending HTTP request will be aborted if the provided context is 7539// canceled. 7540func (c *EnterprisesPoliciesDeleteCall) Context(ctx context.Context) *EnterprisesPoliciesDeleteCall { 7541 c.ctx_ = ctx 7542 return c 7543} 7544 7545// Header returns an http.Header that can be modified by the caller to 7546// add HTTP headers to the request. 7547func (c *EnterprisesPoliciesDeleteCall) Header() http.Header { 7548 if c.header_ == nil { 7549 c.header_ = make(http.Header) 7550 } 7551 return c.header_ 7552} 7553 7554func (c *EnterprisesPoliciesDeleteCall) doRequest(alt string) (*http.Response, error) { 7555 reqHeaders := make(http.Header) 7556 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 7557 for k, v := range c.header_ { 7558 reqHeaders[k] = v 7559 } 7560 reqHeaders.Set("User-Agent", c.s.userAgent()) 7561 var body io.Reader = nil 7562 c.urlParams_.Set("alt", alt) 7563 c.urlParams_.Set("prettyPrint", "false") 7564 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 7565 urls += "?" + c.urlParams_.Encode() 7566 req, err := http.NewRequest("DELETE", urls, body) 7567 if err != nil { 7568 return nil, err 7569 } 7570 req.Header = reqHeaders 7571 googleapi.Expand(req.URL, map[string]string{ 7572 "name": c.name, 7573 }) 7574 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7575} 7576 7577// Do executes the "androidmanagement.enterprises.policies.delete" call. 7578// Exactly one of *Empty or error will be non-nil. Any non-2xx status 7579// code is an error. Response headers are in either 7580// *Empty.ServerResponse.Header or (if a response was returned at all) 7581// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 7582// check whether the returned error was because http.StatusNotModified 7583// was returned. 7584func (c *EnterprisesPoliciesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 7585 gensupport.SetOptions(c.urlParams_, opts...) 7586 res, err := c.doRequest("json") 7587 if res != nil && res.StatusCode == http.StatusNotModified { 7588 if res.Body != nil { 7589 res.Body.Close() 7590 } 7591 return nil, &googleapi.Error{ 7592 Code: res.StatusCode, 7593 Header: res.Header, 7594 } 7595 } 7596 if err != nil { 7597 return nil, err 7598 } 7599 defer googleapi.CloseBody(res) 7600 if err := googleapi.CheckResponse(res); err != nil { 7601 return nil, err 7602 } 7603 ret := &Empty{ 7604 ServerResponse: googleapi.ServerResponse{ 7605 Header: res.Header, 7606 HTTPStatusCode: res.StatusCode, 7607 }, 7608 } 7609 target := &ret 7610 if err := gensupport.DecodeResponse(target, res); err != nil { 7611 return nil, err 7612 } 7613 return ret, nil 7614 // { 7615 // "description": "Deletes a policy. This operation is only permitted if no devices are currently referencing the policy.", 7616 // "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}", 7617 // "httpMethod": "DELETE", 7618 // "id": "androidmanagement.enterprises.policies.delete", 7619 // "parameterOrder": [ 7620 // "name" 7621 // ], 7622 // "parameters": { 7623 // "name": { 7624 // "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.", 7625 // "location": "path", 7626 // "pattern": "^enterprises/[^/]+/policies/[^/]+$", 7627 // "required": true, 7628 // "type": "string" 7629 // } 7630 // }, 7631 // "path": "v1/{+name}", 7632 // "response": { 7633 // "$ref": "Empty" 7634 // }, 7635 // "scopes": [ 7636 // "https://www.googleapis.com/auth/androidmanagement" 7637 // ] 7638 // } 7639 7640} 7641 7642// method id "androidmanagement.enterprises.policies.get": 7643 7644type EnterprisesPoliciesGetCall struct { 7645 s *Service 7646 name string 7647 urlParams_ gensupport.URLParams 7648 ifNoneMatch_ string 7649 ctx_ context.Context 7650 header_ http.Header 7651} 7652 7653// Get: Gets a policy. 7654// 7655// - name: The name of the policy in the form 7656// enterprises/{enterpriseId}/policies/{policyId}. 7657func (r *EnterprisesPoliciesService) Get(name string) *EnterprisesPoliciesGetCall { 7658 c := &EnterprisesPoliciesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7659 c.name = name 7660 return c 7661} 7662 7663// Fields allows partial responses to be retrieved. See 7664// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7665// for more information. 7666func (c *EnterprisesPoliciesGetCall) Fields(s ...googleapi.Field) *EnterprisesPoliciesGetCall { 7667 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7668 return c 7669} 7670 7671// IfNoneMatch sets the optional parameter which makes the operation 7672// fail if the object's ETag matches the given value. This is useful for 7673// getting updates only after the object has changed since the last 7674// request. Use googleapi.IsNotModified to check whether the response 7675// error from Do is the result of In-None-Match. 7676func (c *EnterprisesPoliciesGetCall) IfNoneMatch(entityTag string) *EnterprisesPoliciesGetCall { 7677 c.ifNoneMatch_ = entityTag 7678 return c 7679} 7680 7681// Context sets the context to be used in this call's Do method. Any 7682// pending HTTP request will be aborted if the provided context is 7683// canceled. 7684func (c *EnterprisesPoliciesGetCall) Context(ctx context.Context) *EnterprisesPoliciesGetCall { 7685 c.ctx_ = ctx 7686 return c 7687} 7688 7689// Header returns an http.Header that can be modified by the caller to 7690// add HTTP headers to the request. 7691func (c *EnterprisesPoliciesGetCall) Header() http.Header { 7692 if c.header_ == nil { 7693 c.header_ = make(http.Header) 7694 } 7695 return c.header_ 7696} 7697 7698func (c *EnterprisesPoliciesGetCall) doRequest(alt string) (*http.Response, error) { 7699 reqHeaders := make(http.Header) 7700 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 7701 for k, v := range c.header_ { 7702 reqHeaders[k] = v 7703 } 7704 reqHeaders.Set("User-Agent", c.s.userAgent()) 7705 if c.ifNoneMatch_ != "" { 7706 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 7707 } 7708 var body io.Reader = nil 7709 c.urlParams_.Set("alt", alt) 7710 c.urlParams_.Set("prettyPrint", "false") 7711 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 7712 urls += "?" + c.urlParams_.Encode() 7713 req, err := http.NewRequest("GET", urls, body) 7714 if err != nil { 7715 return nil, err 7716 } 7717 req.Header = reqHeaders 7718 googleapi.Expand(req.URL, map[string]string{ 7719 "name": c.name, 7720 }) 7721 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7722} 7723 7724// Do executes the "androidmanagement.enterprises.policies.get" call. 7725// Exactly one of *Policy or error will be non-nil. Any non-2xx status 7726// code is an error. Response headers are in either 7727// *Policy.ServerResponse.Header or (if a response was returned at all) 7728// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 7729// check whether the returned error was because http.StatusNotModified 7730// was returned. 7731func (c *EnterprisesPoliciesGetCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 7732 gensupport.SetOptions(c.urlParams_, opts...) 7733 res, err := c.doRequest("json") 7734 if res != nil && res.StatusCode == http.StatusNotModified { 7735 if res.Body != nil { 7736 res.Body.Close() 7737 } 7738 return nil, &googleapi.Error{ 7739 Code: res.StatusCode, 7740 Header: res.Header, 7741 } 7742 } 7743 if err != nil { 7744 return nil, err 7745 } 7746 defer googleapi.CloseBody(res) 7747 if err := googleapi.CheckResponse(res); err != nil { 7748 return nil, err 7749 } 7750 ret := &Policy{ 7751 ServerResponse: googleapi.ServerResponse{ 7752 Header: res.Header, 7753 HTTPStatusCode: res.StatusCode, 7754 }, 7755 } 7756 target := &ret 7757 if err := gensupport.DecodeResponse(target, res); err != nil { 7758 return nil, err 7759 } 7760 return ret, nil 7761 // { 7762 // "description": "Gets a policy.", 7763 // "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}", 7764 // "httpMethod": "GET", 7765 // "id": "androidmanagement.enterprises.policies.get", 7766 // "parameterOrder": [ 7767 // "name" 7768 // ], 7769 // "parameters": { 7770 // "name": { 7771 // "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.", 7772 // "location": "path", 7773 // "pattern": "^enterprises/[^/]+/policies/[^/]+$", 7774 // "required": true, 7775 // "type": "string" 7776 // } 7777 // }, 7778 // "path": "v1/{+name}", 7779 // "response": { 7780 // "$ref": "Policy" 7781 // }, 7782 // "scopes": [ 7783 // "https://www.googleapis.com/auth/androidmanagement" 7784 // ] 7785 // } 7786 7787} 7788 7789// method id "androidmanagement.enterprises.policies.list": 7790 7791type EnterprisesPoliciesListCall struct { 7792 s *Service 7793 parent string 7794 urlParams_ gensupport.URLParams 7795 ifNoneMatch_ string 7796 ctx_ context.Context 7797 header_ http.Header 7798} 7799 7800// List: Lists policies for a given enterprise. 7801// 7802// - parent: The name of the enterprise in the form 7803// enterprises/{enterpriseId}. 7804func (r *EnterprisesPoliciesService) List(parent string) *EnterprisesPoliciesListCall { 7805 c := &EnterprisesPoliciesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7806 c.parent = parent 7807 return c 7808} 7809 7810// PageSize sets the optional parameter "pageSize": The requested page 7811// size. The actual page size may be fixed to a min or max value. 7812func (c *EnterprisesPoliciesListCall) PageSize(pageSize int64) *EnterprisesPoliciesListCall { 7813 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 7814 return c 7815} 7816 7817// PageToken sets the optional parameter "pageToken": A token 7818// identifying a page of results returned by the server. 7819func (c *EnterprisesPoliciesListCall) PageToken(pageToken string) *EnterprisesPoliciesListCall { 7820 c.urlParams_.Set("pageToken", pageToken) 7821 return c 7822} 7823 7824// Fields allows partial responses to be retrieved. See 7825// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7826// for more information. 7827func (c *EnterprisesPoliciesListCall) Fields(s ...googleapi.Field) *EnterprisesPoliciesListCall { 7828 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7829 return c 7830} 7831 7832// IfNoneMatch sets the optional parameter which makes the operation 7833// fail if the object's ETag matches the given value. This is useful for 7834// getting updates only after the object has changed since the last 7835// request. Use googleapi.IsNotModified to check whether the response 7836// error from Do is the result of In-None-Match. 7837func (c *EnterprisesPoliciesListCall) IfNoneMatch(entityTag string) *EnterprisesPoliciesListCall { 7838 c.ifNoneMatch_ = entityTag 7839 return c 7840} 7841 7842// Context sets the context to be used in this call's Do method. Any 7843// pending HTTP request will be aborted if the provided context is 7844// canceled. 7845func (c *EnterprisesPoliciesListCall) Context(ctx context.Context) *EnterprisesPoliciesListCall { 7846 c.ctx_ = ctx 7847 return c 7848} 7849 7850// Header returns an http.Header that can be modified by the caller to 7851// add HTTP headers to the request. 7852func (c *EnterprisesPoliciesListCall) Header() http.Header { 7853 if c.header_ == nil { 7854 c.header_ = make(http.Header) 7855 } 7856 return c.header_ 7857} 7858 7859func (c *EnterprisesPoliciesListCall) doRequest(alt string) (*http.Response, error) { 7860 reqHeaders := make(http.Header) 7861 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 7862 for k, v := range c.header_ { 7863 reqHeaders[k] = v 7864 } 7865 reqHeaders.Set("User-Agent", c.s.userAgent()) 7866 if c.ifNoneMatch_ != "" { 7867 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 7868 } 7869 var body io.Reader = nil 7870 c.urlParams_.Set("alt", alt) 7871 c.urlParams_.Set("prettyPrint", "false") 7872 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/policies") 7873 urls += "?" + c.urlParams_.Encode() 7874 req, err := http.NewRequest("GET", urls, body) 7875 if err != nil { 7876 return nil, err 7877 } 7878 req.Header = reqHeaders 7879 googleapi.Expand(req.URL, map[string]string{ 7880 "parent": c.parent, 7881 }) 7882 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7883} 7884 7885// Do executes the "androidmanagement.enterprises.policies.list" call. 7886// Exactly one of *ListPoliciesResponse or error will be non-nil. Any 7887// non-2xx status code is an error. Response headers are in either 7888// *ListPoliciesResponse.ServerResponse.Header or (if a response was 7889// returned at all) in error.(*googleapi.Error).Header. Use 7890// googleapi.IsNotModified to check whether the returned error was 7891// because http.StatusNotModified was returned. 7892func (c *EnterprisesPoliciesListCall) Do(opts ...googleapi.CallOption) (*ListPoliciesResponse, error) { 7893 gensupport.SetOptions(c.urlParams_, opts...) 7894 res, err := c.doRequest("json") 7895 if res != nil && res.StatusCode == http.StatusNotModified { 7896 if res.Body != nil { 7897 res.Body.Close() 7898 } 7899 return nil, &googleapi.Error{ 7900 Code: res.StatusCode, 7901 Header: res.Header, 7902 } 7903 } 7904 if err != nil { 7905 return nil, err 7906 } 7907 defer googleapi.CloseBody(res) 7908 if err := googleapi.CheckResponse(res); err != nil { 7909 return nil, err 7910 } 7911 ret := &ListPoliciesResponse{ 7912 ServerResponse: googleapi.ServerResponse{ 7913 Header: res.Header, 7914 HTTPStatusCode: res.StatusCode, 7915 }, 7916 } 7917 target := &ret 7918 if err := gensupport.DecodeResponse(target, res); err != nil { 7919 return nil, err 7920 } 7921 return ret, nil 7922 // { 7923 // "description": "Lists policies for a given enterprise.", 7924 // "flatPath": "v1/enterprises/{enterprisesId}/policies", 7925 // "httpMethod": "GET", 7926 // "id": "androidmanagement.enterprises.policies.list", 7927 // "parameterOrder": [ 7928 // "parent" 7929 // ], 7930 // "parameters": { 7931 // "pageSize": { 7932 // "description": "The requested page size. The actual page size may be fixed to a min or max value.", 7933 // "format": "int32", 7934 // "location": "query", 7935 // "type": "integer" 7936 // }, 7937 // "pageToken": { 7938 // "description": "A token identifying a page of results returned by the server.", 7939 // "location": "query", 7940 // "type": "string" 7941 // }, 7942 // "parent": { 7943 // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", 7944 // "location": "path", 7945 // "pattern": "^enterprises/[^/]+$", 7946 // "required": true, 7947 // "type": "string" 7948 // } 7949 // }, 7950 // "path": "v1/{+parent}/policies", 7951 // "response": { 7952 // "$ref": "ListPoliciesResponse" 7953 // }, 7954 // "scopes": [ 7955 // "https://www.googleapis.com/auth/androidmanagement" 7956 // ] 7957 // } 7958 7959} 7960 7961// Pages invokes f for each page of results. 7962// A non-nil error returned from f will halt the iteration. 7963// The provided context supersedes any context provided to the Context method. 7964func (c *EnterprisesPoliciesListCall) Pages(ctx context.Context, f func(*ListPoliciesResponse) error) error { 7965 c.ctx_ = ctx 7966 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 7967 for { 7968 x, err := c.Do() 7969 if err != nil { 7970 return err 7971 } 7972 if err := f(x); err != nil { 7973 return err 7974 } 7975 if x.NextPageToken == "" { 7976 return nil 7977 } 7978 c.PageToken(x.NextPageToken) 7979 } 7980} 7981 7982// method id "androidmanagement.enterprises.policies.patch": 7983 7984type EnterprisesPoliciesPatchCall struct { 7985 s *Service 7986 name string 7987 policy *Policy 7988 urlParams_ gensupport.URLParams 7989 ctx_ context.Context 7990 header_ http.Header 7991} 7992 7993// Patch: Updates or creates a policy. 7994// 7995// - name: The name of the policy in the form 7996// enterprises/{enterpriseId}/policies/{policyId}. 7997func (r *EnterprisesPoliciesService) Patch(name string, policy *Policy) *EnterprisesPoliciesPatchCall { 7998 c := &EnterprisesPoliciesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7999 c.name = name 8000 c.policy = policy 8001 return c 8002} 8003 8004// UpdateMask sets the optional parameter "updateMask": The field mask 8005// indicating the fields to update. If not set, all modifiable fields 8006// will be modified. 8007func (c *EnterprisesPoliciesPatchCall) UpdateMask(updateMask string) *EnterprisesPoliciesPatchCall { 8008 c.urlParams_.Set("updateMask", updateMask) 8009 return c 8010} 8011 8012// Fields allows partial responses to be retrieved. See 8013// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8014// for more information. 8015func (c *EnterprisesPoliciesPatchCall) Fields(s ...googleapi.Field) *EnterprisesPoliciesPatchCall { 8016 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8017 return c 8018} 8019 8020// Context sets the context to be used in this call's Do method. Any 8021// pending HTTP request will be aborted if the provided context is 8022// canceled. 8023func (c *EnterprisesPoliciesPatchCall) Context(ctx context.Context) *EnterprisesPoliciesPatchCall { 8024 c.ctx_ = ctx 8025 return c 8026} 8027 8028// Header returns an http.Header that can be modified by the caller to 8029// add HTTP headers to the request. 8030func (c *EnterprisesPoliciesPatchCall) Header() http.Header { 8031 if c.header_ == nil { 8032 c.header_ = make(http.Header) 8033 } 8034 return c.header_ 8035} 8036 8037func (c *EnterprisesPoliciesPatchCall) doRequest(alt string) (*http.Response, error) { 8038 reqHeaders := make(http.Header) 8039 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 8040 for k, v := range c.header_ { 8041 reqHeaders[k] = v 8042 } 8043 reqHeaders.Set("User-Agent", c.s.userAgent()) 8044 var body io.Reader = nil 8045 body, err := googleapi.WithoutDataWrapper.JSONReader(c.policy) 8046 if err != nil { 8047 return nil, err 8048 } 8049 reqHeaders.Set("Content-Type", "application/json") 8050 c.urlParams_.Set("alt", alt) 8051 c.urlParams_.Set("prettyPrint", "false") 8052 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 8053 urls += "?" + c.urlParams_.Encode() 8054 req, err := http.NewRequest("PATCH", urls, body) 8055 if err != nil { 8056 return nil, err 8057 } 8058 req.Header = reqHeaders 8059 googleapi.Expand(req.URL, map[string]string{ 8060 "name": c.name, 8061 }) 8062 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8063} 8064 8065// Do executes the "androidmanagement.enterprises.policies.patch" call. 8066// Exactly one of *Policy or error will be non-nil. Any non-2xx status 8067// code is an error. Response headers are in either 8068// *Policy.ServerResponse.Header or (if a response was returned at all) 8069// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8070// check whether the returned error was because http.StatusNotModified 8071// was returned. 8072func (c *EnterprisesPoliciesPatchCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 8073 gensupport.SetOptions(c.urlParams_, opts...) 8074 res, err := c.doRequest("json") 8075 if res != nil && res.StatusCode == http.StatusNotModified { 8076 if res.Body != nil { 8077 res.Body.Close() 8078 } 8079 return nil, &googleapi.Error{ 8080 Code: res.StatusCode, 8081 Header: res.Header, 8082 } 8083 } 8084 if err != nil { 8085 return nil, err 8086 } 8087 defer googleapi.CloseBody(res) 8088 if err := googleapi.CheckResponse(res); err != nil { 8089 return nil, err 8090 } 8091 ret := &Policy{ 8092 ServerResponse: googleapi.ServerResponse{ 8093 Header: res.Header, 8094 HTTPStatusCode: res.StatusCode, 8095 }, 8096 } 8097 target := &ret 8098 if err := gensupport.DecodeResponse(target, res); err != nil { 8099 return nil, err 8100 } 8101 return ret, nil 8102 // { 8103 // "description": "Updates or creates a policy.", 8104 // "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}", 8105 // "httpMethod": "PATCH", 8106 // "id": "androidmanagement.enterprises.policies.patch", 8107 // "parameterOrder": [ 8108 // "name" 8109 // ], 8110 // "parameters": { 8111 // "name": { 8112 // "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.", 8113 // "location": "path", 8114 // "pattern": "^enterprises/[^/]+/policies/[^/]+$", 8115 // "required": true, 8116 // "type": "string" 8117 // }, 8118 // "updateMask": { 8119 // "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.", 8120 // "format": "google-fieldmask", 8121 // "location": "query", 8122 // "type": "string" 8123 // } 8124 // }, 8125 // "path": "v1/{+name}", 8126 // "request": { 8127 // "$ref": "Policy" 8128 // }, 8129 // "response": { 8130 // "$ref": "Policy" 8131 // }, 8132 // "scopes": [ 8133 // "https://www.googleapis.com/auth/androidmanagement" 8134 // ] 8135 // } 8136 8137} 8138 8139// method id "androidmanagement.enterprises.webApps.create": 8140 8141type EnterprisesWebAppsCreateCall struct { 8142 s *Service 8143 parent string 8144 webapp *WebApp 8145 urlParams_ gensupport.URLParams 8146 ctx_ context.Context 8147 header_ http.Header 8148} 8149 8150// Create: Creates a web app. 8151// 8152// - parent: The name of the enterprise in the form 8153// enterprises/{enterpriseId}. 8154func (r *EnterprisesWebAppsService) Create(parent string, webapp *WebApp) *EnterprisesWebAppsCreateCall { 8155 c := &EnterprisesWebAppsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8156 c.parent = parent 8157 c.webapp = webapp 8158 return c 8159} 8160 8161// Fields allows partial responses to be retrieved. See 8162// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8163// for more information. 8164func (c *EnterprisesWebAppsCreateCall) Fields(s ...googleapi.Field) *EnterprisesWebAppsCreateCall { 8165 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8166 return c 8167} 8168 8169// Context sets the context to be used in this call's Do method. Any 8170// pending HTTP request will be aborted if the provided context is 8171// canceled. 8172func (c *EnterprisesWebAppsCreateCall) Context(ctx context.Context) *EnterprisesWebAppsCreateCall { 8173 c.ctx_ = ctx 8174 return c 8175} 8176 8177// Header returns an http.Header that can be modified by the caller to 8178// add HTTP headers to the request. 8179func (c *EnterprisesWebAppsCreateCall) Header() http.Header { 8180 if c.header_ == nil { 8181 c.header_ = make(http.Header) 8182 } 8183 return c.header_ 8184} 8185 8186func (c *EnterprisesWebAppsCreateCall) doRequest(alt string) (*http.Response, error) { 8187 reqHeaders := make(http.Header) 8188 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 8189 for k, v := range c.header_ { 8190 reqHeaders[k] = v 8191 } 8192 reqHeaders.Set("User-Agent", c.s.userAgent()) 8193 var body io.Reader = nil 8194 body, err := googleapi.WithoutDataWrapper.JSONReader(c.webapp) 8195 if err != nil { 8196 return nil, err 8197 } 8198 reqHeaders.Set("Content-Type", "application/json") 8199 c.urlParams_.Set("alt", alt) 8200 c.urlParams_.Set("prettyPrint", "false") 8201 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/webApps") 8202 urls += "?" + c.urlParams_.Encode() 8203 req, err := http.NewRequest("POST", urls, body) 8204 if err != nil { 8205 return nil, err 8206 } 8207 req.Header = reqHeaders 8208 googleapi.Expand(req.URL, map[string]string{ 8209 "parent": c.parent, 8210 }) 8211 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8212} 8213 8214// Do executes the "androidmanagement.enterprises.webApps.create" call. 8215// Exactly one of *WebApp or error will be non-nil. Any non-2xx status 8216// code is an error. Response headers are in either 8217// *WebApp.ServerResponse.Header or (if a response was returned at all) 8218// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8219// check whether the returned error was because http.StatusNotModified 8220// was returned. 8221func (c *EnterprisesWebAppsCreateCall) Do(opts ...googleapi.CallOption) (*WebApp, error) { 8222 gensupport.SetOptions(c.urlParams_, opts...) 8223 res, err := c.doRequest("json") 8224 if res != nil && res.StatusCode == http.StatusNotModified { 8225 if res.Body != nil { 8226 res.Body.Close() 8227 } 8228 return nil, &googleapi.Error{ 8229 Code: res.StatusCode, 8230 Header: res.Header, 8231 } 8232 } 8233 if err != nil { 8234 return nil, err 8235 } 8236 defer googleapi.CloseBody(res) 8237 if err := googleapi.CheckResponse(res); err != nil { 8238 return nil, err 8239 } 8240 ret := &WebApp{ 8241 ServerResponse: googleapi.ServerResponse{ 8242 Header: res.Header, 8243 HTTPStatusCode: res.StatusCode, 8244 }, 8245 } 8246 target := &ret 8247 if err := gensupport.DecodeResponse(target, res); err != nil { 8248 return nil, err 8249 } 8250 return ret, nil 8251 // { 8252 // "description": "Creates a web app.", 8253 // "flatPath": "v1/enterprises/{enterprisesId}/webApps", 8254 // "httpMethod": "POST", 8255 // "id": "androidmanagement.enterprises.webApps.create", 8256 // "parameterOrder": [ 8257 // "parent" 8258 // ], 8259 // "parameters": { 8260 // "parent": { 8261 // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", 8262 // "location": "path", 8263 // "pattern": "^enterprises/[^/]+$", 8264 // "required": true, 8265 // "type": "string" 8266 // } 8267 // }, 8268 // "path": "v1/{+parent}/webApps", 8269 // "request": { 8270 // "$ref": "WebApp" 8271 // }, 8272 // "response": { 8273 // "$ref": "WebApp" 8274 // }, 8275 // "scopes": [ 8276 // "https://www.googleapis.com/auth/androidmanagement" 8277 // ] 8278 // } 8279 8280} 8281 8282// method id "androidmanagement.enterprises.webApps.delete": 8283 8284type EnterprisesWebAppsDeleteCall struct { 8285 s *Service 8286 name string 8287 urlParams_ gensupport.URLParams 8288 ctx_ context.Context 8289 header_ http.Header 8290} 8291 8292// Delete: Deletes a web app. 8293// 8294// - name: The name of the web app in the form 8295// enterprises/{enterpriseId}/webApps/{packageName}. 8296func (r *EnterprisesWebAppsService) Delete(name string) *EnterprisesWebAppsDeleteCall { 8297 c := &EnterprisesWebAppsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8298 c.name = name 8299 return c 8300} 8301 8302// Fields allows partial responses to be retrieved. See 8303// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8304// for more information. 8305func (c *EnterprisesWebAppsDeleteCall) Fields(s ...googleapi.Field) *EnterprisesWebAppsDeleteCall { 8306 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8307 return c 8308} 8309 8310// Context sets the context to be used in this call's Do method. Any 8311// pending HTTP request will be aborted if the provided context is 8312// canceled. 8313func (c *EnterprisesWebAppsDeleteCall) Context(ctx context.Context) *EnterprisesWebAppsDeleteCall { 8314 c.ctx_ = ctx 8315 return c 8316} 8317 8318// Header returns an http.Header that can be modified by the caller to 8319// add HTTP headers to the request. 8320func (c *EnterprisesWebAppsDeleteCall) Header() http.Header { 8321 if c.header_ == nil { 8322 c.header_ = make(http.Header) 8323 } 8324 return c.header_ 8325} 8326 8327func (c *EnterprisesWebAppsDeleteCall) doRequest(alt string) (*http.Response, error) { 8328 reqHeaders := make(http.Header) 8329 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 8330 for k, v := range c.header_ { 8331 reqHeaders[k] = v 8332 } 8333 reqHeaders.Set("User-Agent", c.s.userAgent()) 8334 var body io.Reader = nil 8335 c.urlParams_.Set("alt", alt) 8336 c.urlParams_.Set("prettyPrint", "false") 8337 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 8338 urls += "?" + c.urlParams_.Encode() 8339 req, err := http.NewRequest("DELETE", urls, body) 8340 if err != nil { 8341 return nil, err 8342 } 8343 req.Header = reqHeaders 8344 googleapi.Expand(req.URL, map[string]string{ 8345 "name": c.name, 8346 }) 8347 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8348} 8349 8350// Do executes the "androidmanagement.enterprises.webApps.delete" call. 8351// Exactly one of *Empty or error will be non-nil. Any non-2xx status 8352// code is an error. Response headers are in either 8353// *Empty.ServerResponse.Header or (if a response was returned at all) 8354// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8355// check whether the returned error was because http.StatusNotModified 8356// was returned. 8357func (c *EnterprisesWebAppsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 8358 gensupport.SetOptions(c.urlParams_, opts...) 8359 res, err := c.doRequest("json") 8360 if res != nil && res.StatusCode == http.StatusNotModified { 8361 if res.Body != nil { 8362 res.Body.Close() 8363 } 8364 return nil, &googleapi.Error{ 8365 Code: res.StatusCode, 8366 Header: res.Header, 8367 } 8368 } 8369 if err != nil { 8370 return nil, err 8371 } 8372 defer googleapi.CloseBody(res) 8373 if err := googleapi.CheckResponse(res); err != nil { 8374 return nil, err 8375 } 8376 ret := &Empty{ 8377 ServerResponse: googleapi.ServerResponse{ 8378 Header: res.Header, 8379 HTTPStatusCode: res.StatusCode, 8380 }, 8381 } 8382 target := &ret 8383 if err := gensupport.DecodeResponse(target, res); err != nil { 8384 return nil, err 8385 } 8386 return ret, nil 8387 // { 8388 // "description": "Deletes a web app.", 8389 // "flatPath": "v1/enterprises/{enterprisesId}/webApps/{webAppsId}", 8390 // "httpMethod": "DELETE", 8391 // "id": "androidmanagement.enterprises.webApps.delete", 8392 // "parameterOrder": [ 8393 // "name" 8394 // ], 8395 // "parameters": { 8396 // "name": { 8397 // "description": "The name of the web app in the form enterprises/{enterpriseId}/webApps/{packageName}.", 8398 // "location": "path", 8399 // "pattern": "^enterprises/[^/]+/webApps/[^/]+$", 8400 // "required": true, 8401 // "type": "string" 8402 // } 8403 // }, 8404 // "path": "v1/{+name}", 8405 // "response": { 8406 // "$ref": "Empty" 8407 // }, 8408 // "scopes": [ 8409 // "https://www.googleapis.com/auth/androidmanagement" 8410 // ] 8411 // } 8412 8413} 8414 8415// method id "androidmanagement.enterprises.webApps.get": 8416 8417type EnterprisesWebAppsGetCall struct { 8418 s *Service 8419 name string 8420 urlParams_ gensupport.URLParams 8421 ifNoneMatch_ string 8422 ctx_ context.Context 8423 header_ http.Header 8424} 8425 8426// Get: Gets a web app. 8427// 8428// - name: The name of the web app in the form 8429// enterprises/{enterpriseId}/webApp/{packageName}. 8430func (r *EnterprisesWebAppsService) Get(name string) *EnterprisesWebAppsGetCall { 8431 c := &EnterprisesWebAppsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8432 c.name = name 8433 return c 8434} 8435 8436// Fields allows partial responses to be retrieved. See 8437// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8438// for more information. 8439func (c *EnterprisesWebAppsGetCall) Fields(s ...googleapi.Field) *EnterprisesWebAppsGetCall { 8440 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8441 return c 8442} 8443 8444// IfNoneMatch sets the optional parameter which makes the operation 8445// fail if the object's ETag matches the given value. This is useful for 8446// getting updates only after the object has changed since the last 8447// request. Use googleapi.IsNotModified to check whether the response 8448// error from Do is the result of In-None-Match. 8449func (c *EnterprisesWebAppsGetCall) IfNoneMatch(entityTag string) *EnterprisesWebAppsGetCall { 8450 c.ifNoneMatch_ = entityTag 8451 return c 8452} 8453 8454// Context sets the context to be used in this call's Do method. Any 8455// pending HTTP request will be aborted if the provided context is 8456// canceled. 8457func (c *EnterprisesWebAppsGetCall) Context(ctx context.Context) *EnterprisesWebAppsGetCall { 8458 c.ctx_ = ctx 8459 return c 8460} 8461 8462// Header returns an http.Header that can be modified by the caller to 8463// add HTTP headers to the request. 8464func (c *EnterprisesWebAppsGetCall) Header() http.Header { 8465 if c.header_ == nil { 8466 c.header_ = make(http.Header) 8467 } 8468 return c.header_ 8469} 8470 8471func (c *EnterprisesWebAppsGetCall) doRequest(alt string) (*http.Response, error) { 8472 reqHeaders := make(http.Header) 8473 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 8474 for k, v := range c.header_ { 8475 reqHeaders[k] = v 8476 } 8477 reqHeaders.Set("User-Agent", c.s.userAgent()) 8478 if c.ifNoneMatch_ != "" { 8479 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 8480 } 8481 var body io.Reader = nil 8482 c.urlParams_.Set("alt", alt) 8483 c.urlParams_.Set("prettyPrint", "false") 8484 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 8485 urls += "?" + c.urlParams_.Encode() 8486 req, err := http.NewRequest("GET", urls, body) 8487 if err != nil { 8488 return nil, err 8489 } 8490 req.Header = reqHeaders 8491 googleapi.Expand(req.URL, map[string]string{ 8492 "name": c.name, 8493 }) 8494 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8495} 8496 8497// Do executes the "androidmanagement.enterprises.webApps.get" call. 8498// Exactly one of *WebApp or error will be non-nil. Any non-2xx status 8499// code is an error. Response headers are in either 8500// *WebApp.ServerResponse.Header or (if a response was returned at all) 8501// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8502// check whether the returned error was because http.StatusNotModified 8503// was returned. 8504func (c *EnterprisesWebAppsGetCall) Do(opts ...googleapi.CallOption) (*WebApp, error) { 8505 gensupport.SetOptions(c.urlParams_, opts...) 8506 res, err := c.doRequest("json") 8507 if res != nil && res.StatusCode == http.StatusNotModified { 8508 if res.Body != nil { 8509 res.Body.Close() 8510 } 8511 return nil, &googleapi.Error{ 8512 Code: res.StatusCode, 8513 Header: res.Header, 8514 } 8515 } 8516 if err != nil { 8517 return nil, err 8518 } 8519 defer googleapi.CloseBody(res) 8520 if err := googleapi.CheckResponse(res); err != nil { 8521 return nil, err 8522 } 8523 ret := &WebApp{ 8524 ServerResponse: googleapi.ServerResponse{ 8525 Header: res.Header, 8526 HTTPStatusCode: res.StatusCode, 8527 }, 8528 } 8529 target := &ret 8530 if err := gensupport.DecodeResponse(target, res); err != nil { 8531 return nil, err 8532 } 8533 return ret, nil 8534 // { 8535 // "description": "Gets a web app.", 8536 // "flatPath": "v1/enterprises/{enterprisesId}/webApps/{webAppsId}", 8537 // "httpMethod": "GET", 8538 // "id": "androidmanagement.enterprises.webApps.get", 8539 // "parameterOrder": [ 8540 // "name" 8541 // ], 8542 // "parameters": { 8543 // "name": { 8544 // "description": "The name of the web app in the form enterprises/{enterpriseId}/webApp/{packageName}.", 8545 // "location": "path", 8546 // "pattern": "^enterprises/[^/]+/webApps/[^/]+$", 8547 // "required": true, 8548 // "type": "string" 8549 // } 8550 // }, 8551 // "path": "v1/{+name}", 8552 // "response": { 8553 // "$ref": "WebApp" 8554 // }, 8555 // "scopes": [ 8556 // "https://www.googleapis.com/auth/androidmanagement" 8557 // ] 8558 // } 8559 8560} 8561 8562// method id "androidmanagement.enterprises.webApps.list": 8563 8564type EnterprisesWebAppsListCall struct { 8565 s *Service 8566 parent string 8567 urlParams_ gensupport.URLParams 8568 ifNoneMatch_ string 8569 ctx_ context.Context 8570 header_ http.Header 8571} 8572 8573// List: Lists web apps for a given enterprise. 8574// 8575// - parent: The name of the enterprise in the form 8576// enterprises/{enterpriseId}. 8577func (r *EnterprisesWebAppsService) List(parent string) *EnterprisesWebAppsListCall { 8578 c := &EnterprisesWebAppsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8579 c.parent = parent 8580 return c 8581} 8582 8583// PageSize sets the optional parameter "pageSize": The requested page 8584// size. The actual page size may be fixed to a min or max value. 8585func (c *EnterprisesWebAppsListCall) PageSize(pageSize int64) *EnterprisesWebAppsListCall { 8586 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 8587 return c 8588} 8589 8590// PageToken sets the optional parameter "pageToken": A token 8591// identifying a page of results returned by the server. 8592func (c *EnterprisesWebAppsListCall) PageToken(pageToken string) *EnterprisesWebAppsListCall { 8593 c.urlParams_.Set("pageToken", pageToken) 8594 return c 8595} 8596 8597// Fields allows partial responses to be retrieved. See 8598// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8599// for more information. 8600func (c *EnterprisesWebAppsListCall) Fields(s ...googleapi.Field) *EnterprisesWebAppsListCall { 8601 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8602 return c 8603} 8604 8605// IfNoneMatch sets the optional parameter which makes the operation 8606// fail if the object's ETag matches the given value. This is useful for 8607// getting updates only after the object has changed since the last 8608// request. Use googleapi.IsNotModified to check whether the response 8609// error from Do is the result of In-None-Match. 8610func (c *EnterprisesWebAppsListCall) IfNoneMatch(entityTag string) *EnterprisesWebAppsListCall { 8611 c.ifNoneMatch_ = entityTag 8612 return c 8613} 8614 8615// Context sets the context to be used in this call's Do method. Any 8616// pending HTTP request will be aborted if the provided context is 8617// canceled. 8618func (c *EnterprisesWebAppsListCall) Context(ctx context.Context) *EnterprisesWebAppsListCall { 8619 c.ctx_ = ctx 8620 return c 8621} 8622 8623// Header returns an http.Header that can be modified by the caller to 8624// add HTTP headers to the request. 8625func (c *EnterprisesWebAppsListCall) Header() http.Header { 8626 if c.header_ == nil { 8627 c.header_ = make(http.Header) 8628 } 8629 return c.header_ 8630} 8631 8632func (c *EnterprisesWebAppsListCall) doRequest(alt string) (*http.Response, error) { 8633 reqHeaders := make(http.Header) 8634 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 8635 for k, v := range c.header_ { 8636 reqHeaders[k] = v 8637 } 8638 reqHeaders.Set("User-Agent", c.s.userAgent()) 8639 if c.ifNoneMatch_ != "" { 8640 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 8641 } 8642 var body io.Reader = nil 8643 c.urlParams_.Set("alt", alt) 8644 c.urlParams_.Set("prettyPrint", "false") 8645 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/webApps") 8646 urls += "?" + c.urlParams_.Encode() 8647 req, err := http.NewRequest("GET", urls, body) 8648 if err != nil { 8649 return nil, err 8650 } 8651 req.Header = reqHeaders 8652 googleapi.Expand(req.URL, map[string]string{ 8653 "parent": c.parent, 8654 }) 8655 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8656} 8657 8658// Do executes the "androidmanagement.enterprises.webApps.list" call. 8659// Exactly one of *ListWebAppsResponse or error will be non-nil. Any 8660// non-2xx status code is an error. Response headers are in either 8661// *ListWebAppsResponse.ServerResponse.Header or (if a response was 8662// returned at all) in error.(*googleapi.Error).Header. Use 8663// googleapi.IsNotModified to check whether the returned error was 8664// because http.StatusNotModified was returned. 8665func (c *EnterprisesWebAppsListCall) Do(opts ...googleapi.CallOption) (*ListWebAppsResponse, error) { 8666 gensupport.SetOptions(c.urlParams_, opts...) 8667 res, err := c.doRequest("json") 8668 if res != nil && res.StatusCode == http.StatusNotModified { 8669 if res.Body != nil { 8670 res.Body.Close() 8671 } 8672 return nil, &googleapi.Error{ 8673 Code: res.StatusCode, 8674 Header: res.Header, 8675 } 8676 } 8677 if err != nil { 8678 return nil, err 8679 } 8680 defer googleapi.CloseBody(res) 8681 if err := googleapi.CheckResponse(res); err != nil { 8682 return nil, err 8683 } 8684 ret := &ListWebAppsResponse{ 8685 ServerResponse: googleapi.ServerResponse{ 8686 Header: res.Header, 8687 HTTPStatusCode: res.StatusCode, 8688 }, 8689 } 8690 target := &ret 8691 if err := gensupport.DecodeResponse(target, res); err != nil { 8692 return nil, err 8693 } 8694 return ret, nil 8695 // { 8696 // "description": "Lists web apps for a given enterprise.", 8697 // "flatPath": "v1/enterprises/{enterprisesId}/webApps", 8698 // "httpMethod": "GET", 8699 // "id": "androidmanagement.enterprises.webApps.list", 8700 // "parameterOrder": [ 8701 // "parent" 8702 // ], 8703 // "parameters": { 8704 // "pageSize": { 8705 // "description": "The requested page size. The actual page size may be fixed to a min or max value.", 8706 // "format": "int32", 8707 // "location": "query", 8708 // "type": "integer" 8709 // }, 8710 // "pageToken": { 8711 // "description": "A token identifying a page of results returned by the server.", 8712 // "location": "query", 8713 // "type": "string" 8714 // }, 8715 // "parent": { 8716 // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", 8717 // "location": "path", 8718 // "pattern": "^enterprises/[^/]+$", 8719 // "required": true, 8720 // "type": "string" 8721 // } 8722 // }, 8723 // "path": "v1/{+parent}/webApps", 8724 // "response": { 8725 // "$ref": "ListWebAppsResponse" 8726 // }, 8727 // "scopes": [ 8728 // "https://www.googleapis.com/auth/androidmanagement" 8729 // ] 8730 // } 8731 8732} 8733 8734// Pages invokes f for each page of results. 8735// A non-nil error returned from f will halt the iteration. 8736// The provided context supersedes any context provided to the Context method. 8737func (c *EnterprisesWebAppsListCall) Pages(ctx context.Context, f func(*ListWebAppsResponse) error) error { 8738 c.ctx_ = ctx 8739 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 8740 for { 8741 x, err := c.Do() 8742 if err != nil { 8743 return err 8744 } 8745 if err := f(x); err != nil { 8746 return err 8747 } 8748 if x.NextPageToken == "" { 8749 return nil 8750 } 8751 c.PageToken(x.NextPageToken) 8752 } 8753} 8754 8755// method id "androidmanagement.enterprises.webApps.patch": 8756 8757type EnterprisesWebAppsPatchCall struct { 8758 s *Service 8759 name string 8760 webapp *WebApp 8761 urlParams_ gensupport.URLParams 8762 ctx_ context.Context 8763 header_ http.Header 8764} 8765 8766// Patch: Updates a web app. 8767// 8768// - name: The name of the web app in the form 8769// enterprises/{enterpriseId}/webApps/{packageName}. 8770func (r *EnterprisesWebAppsService) Patch(name string, webapp *WebApp) *EnterprisesWebAppsPatchCall { 8771 c := &EnterprisesWebAppsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8772 c.name = name 8773 c.webapp = webapp 8774 return c 8775} 8776 8777// UpdateMask sets the optional parameter "updateMask": The field mask 8778// indicating the fields to update. If not set, all modifiable fields 8779// will be modified. 8780func (c *EnterprisesWebAppsPatchCall) UpdateMask(updateMask string) *EnterprisesWebAppsPatchCall { 8781 c.urlParams_.Set("updateMask", updateMask) 8782 return c 8783} 8784 8785// Fields allows partial responses to be retrieved. See 8786// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8787// for more information. 8788func (c *EnterprisesWebAppsPatchCall) Fields(s ...googleapi.Field) *EnterprisesWebAppsPatchCall { 8789 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8790 return c 8791} 8792 8793// Context sets the context to be used in this call's Do method. Any 8794// pending HTTP request will be aborted if the provided context is 8795// canceled. 8796func (c *EnterprisesWebAppsPatchCall) Context(ctx context.Context) *EnterprisesWebAppsPatchCall { 8797 c.ctx_ = ctx 8798 return c 8799} 8800 8801// Header returns an http.Header that can be modified by the caller to 8802// add HTTP headers to the request. 8803func (c *EnterprisesWebAppsPatchCall) Header() http.Header { 8804 if c.header_ == nil { 8805 c.header_ = make(http.Header) 8806 } 8807 return c.header_ 8808} 8809 8810func (c *EnterprisesWebAppsPatchCall) doRequest(alt string) (*http.Response, error) { 8811 reqHeaders := make(http.Header) 8812 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 8813 for k, v := range c.header_ { 8814 reqHeaders[k] = v 8815 } 8816 reqHeaders.Set("User-Agent", c.s.userAgent()) 8817 var body io.Reader = nil 8818 body, err := googleapi.WithoutDataWrapper.JSONReader(c.webapp) 8819 if err != nil { 8820 return nil, err 8821 } 8822 reqHeaders.Set("Content-Type", "application/json") 8823 c.urlParams_.Set("alt", alt) 8824 c.urlParams_.Set("prettyPrint", "false") 8825 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") 8826 urls += "?" + c.urlParams_.Encode() 8827 req, err := http.NewRequest("PATCH", urls, body) 8828 if err != nil { 8829 return nil, err 8830 } 8831 req.Header = reqHeaders 8832 googleapi.Expand(req.URL, map[string]string{ 8833 "name": c.name, 8834 }) 8835 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8836} 8837 8838// Do executes the "androidmanagement.enterprises.webApps.patch" call. 8839// Exactly one of *WebApp or error will be non-nil. Any non-2xx status 8840// code is an error. Response headers are in either 8841// *WebApp.ServerResponse.Header or (if a response was returned at all) 8842// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8843// check whether the returned error was because http.StatusNotModified 8844// was returned. 8845func (c *EnterprisesWebAppsPatchCall) Do(opts ...googleapi.CallOption) (*WebApp, error) { 8846 gensupport.SetOptions(c.urlParams_, opts...) 8847 res, err := c.doRequest("json") 8848 if res != nil && res.StatusCode == http.StatusNotModified { 8849 if res.Body != nil { 8850 res.Body.Close() 8851 } 8852 return nil, &googleapi.Error{ 8853 Code: res.StatusCode, 8854 Header: res.Header, 8855 } 8856 } 8857 if err != nil { 8858 return nil, err 8859 } 8860 defer googleapi.CloseBody(res) 8861 if err := googleapi.CheckResponse(res); err != nil { 8862 return nil, err 8863 } 8864 ret := &WebApp{ 8865 ServerResponse: googleapi.ServerResponse{ 8866 Header: res.Header, 8867 HTTPStatusCode: res.StatusCode, 8868 }, 8869 } 8870 target := &ret 8871 if err := gensupport.DecodeResponse(target, res); err != nil { 8872 return nil, err 8873 } 8874 return ret, nil 8875 // { 8876 // "description": "Updates a web app.", 8877 // "flatPath": "v1/enterprises/{enterprisesId}/webApps/{webAppsId}", 8878 // "httpMethod": "PATCH", 8879 // "id": "androidmanagement.enterprises.webApps.patch", 8880 // "parameterOrder": [ 8881 // "name" 8882 // ], 8883 // "parameters": { 8884 // "name": { 8885 // "description": "The name of the web app in the form enterprises/{enterpriseId}/webApps/{packageName}.", 8886 // "location": "path", 8887 // "pattern": "^enterprises/[^/]+/webApps/[^/]+$", 8888 // "required": true, 8889 // "type": "string" 8890 // }, 8891 // "updateMask": { 8892 // "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.", 8893 // "format": "google-fieldmask", 8894 // "location": "query", 8895 // "type": "string" 8896 // } 8897 // }, 8898 // "path": "v1/{+name}", 8899 // "request": { 8900 // "$ref": "WebApp" 8901 // }, 8902 // "response": { 8903 // "$ref": "WebApp" 8904 // }, 8905 // "scopes": [ 8906 // "https://www.googleapis.com/auth/androidmanagement" 8907 // ] 8908 // } 8909 8910} 8911 8912// method id "androidmanagement.enterprises.webTokens.create": 8913 8914type EnterprisesWebTokensCreateCall struct { 8915 s *Service 8916 parent string 8917 webtoken *WebToken 8918 urlParams_ gensupport.URLParams 8919 ctx_ context.Context 8920 header_ http.Header 8921} 8922 8923// Create: Creates a web token to access an embeddable managed Google 8924// Play web UI for a given enterprise. 8925// 8926// - parent: The name of the enterprise in the form 8927// enterprises/{enterpriseId}. 8928func (r *EnterprisesWebTokensService) Create(parent string, webtoken *WebToken) *EnterprisesWebTokensCreateCall { 8929 c := &EnterprisesWebTokensCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8930 c.parent = parent 8931 c.webtoken = webtoken 8932 return c 8933} 8934 8935// Fields allows partial responses to be retrieved. See 8936// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 8937// for more information. 8938func (c *EnterprisesWebTokensCreateCall) Fields(s ...googleapi.Field) *EnterprisesWebTokensCreateCall { 8939 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8940 return c 8941} 8942 8943// Context sets the context to be used in this call's Do method. Any 8944// pending HTTP request will be aborted if the provided context is 8945// canceled. 8946func (c *EnterprisesWebTokensCreateCall) Context(ctx context.Context) *EnterprisesWebTokensCreateCall { 8947 c.ctx_ = ctx 8948 return c 8949} 8950 8951// Header returns an http.Header that can be modified by the caller to 8952// add HTTP headers to the request. 8953func (c *EnterprisesWebTokensCreateCall) Header() http.Header { 8954 if c.header_ == nil { 8955 c.header_ = make(http.Header) 8956 } 8957 return c.header_ 8958} 8959 8960func (c *EnterprisesWebTokensCreateCall) doRequest(alt string) (*http.Response, error) { 8961 reqHeaders := make(http.Header) 8962 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 8963 for k, v := range c.header_ { 8964 reqHeaders[k] = v 8965 } 8966 reqHeaders.Set("User-Agent", c.s.userAgent()) 8967 var body io.Reader = nil 8968 body, err := googleapi.WithoutDataWrapper.JSONReader(c.webtoken) 8969 if err != nil { 8970 return nil, err 8971 } 8972 reqHeaders.Set("Content-Type", "application/json") 8973 c.urlParams_.Set("alt", alt) 8974 c.urlParams_.Set("prettyPrint", "false") 8975 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/webTokens") 8976 urls += "?" + c.urlParams_.Encode() 8977 req, err := http.NewRequest("POST", urls, body) 8978 if err != nil { 8979 return nil, err 8980 } 8981 req.Header = reqHeaders 8982 googleapi.Expand(req.URL, map[string]string{ 8983 "parent": c.parent, 8984 }) 8985 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8986} 8987 8988// Do executes the "androidmanagement.enterprises.webTokens.create" call. 8989// Exactly one of *WebToken or error will be non-nil. Any non-2xx status 8990// code is an error. Response headers are in either 8991// *WebToken.ServerResponse.Header or (if a response was returned at 8992// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 8993// to check whether the returned error was because 8994// http.StatusNotModified was returned. 8995func (c *EnterprisesWebTokensCreateCall) Do(opts ...googleapi.CallOption) (*WebToken, error) { 8996 gensupport.SetOptions(c.urlParams_, opts...) 8997 res, err := c.doRequest("json") 8998 if res != nil && res.StatusCode == http.StatusNotModified { 8999 if res.Body != nil { 9000 res.Body.Close() 9001 } 9002 return nil, &googleapi.Error{ 9003 Code: res.StatusCode, 9004 Header: res.Header, 9005 } 9006 } 9007 if err != nil { 9008 return nil, err 9009 } 9010 defer googleapi.CloseBody(res) 9011 if err := googleapi.CheckResponse(res); err != nil { 9012 return nil, err 9013 } 9014 ret := &WebToken{ 9015 ServerResponse: googleapi.ServerResponse{ 9016 Header: res.Header, 9017 HTTPStatusCode: res.StatusCode, 9018 }, 9019 } 9020 target := &ret 9021 if err := gensupport.DecodeResponse(target, res); err != nil { 9022 return nil, err 9023 } 9024 return ret, nil 9025 // { 9026 // "description": "Creates a web token to access an embeddable managed Google Play web UI for a given enterprise.", 9027 // "flatPath": "v1/enterprises/{enterprisesId}/webTokens", 9028 // "httpMethod": "POST", 9029 // "id": "androidmanagement.enterprises.webTokens.create", 9030 // "parameterOrder": [ 9031 // "parent" 9032 // ], 9033 // "parameters": { 9034 // "parent": { 9035 // "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", 9036 // "location": "path", 9037 // "pattern": "^enterprises/[^/]+$", 9038 // "required": true, 9039 // "type": "string" 9040 // } 9041 // }, 9042 // "path": "v1/{+parent}/webTokens", 9043 // "request": { 9044 // "$ref": "WebToken" 9045 // }, 9046 // "response": { 9047 // "$ref": "WebToken" 9048 // }, 9049 // "scopes": [ 9050 // "https://www.googleapis.com/auth/androidmanagement" 9051 // ] 9052 // } 9053 9054} 9055 9056// method id "androidmanagement.signupUrls.create": 9057 9058type SignupUrlsCreateCall struct { 9059 s *Service 9060 urlParams_ gensupport.URLParams 9061 ctx_ context.Context 9062 header_ http.Header 9063} 9064 9065// Create: Creates an enterprise signup URL. 9066func (r *SignupUrlsService) Create() *SignupUrlsCreateCall { 9067 c := &SignupUrlsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9068 return c 9069} 9070 9071// CallbackUrl sets the optional parameter "callbackUrl": The callback 9072// URL that the admin will be redirected to after successfully creating 9073// an enterprise. Before redirecting there the system will add a query 9074// parameter to this URL named enterpriseToken which will contain an 9075// opaque token to be used for the create enterprise request. The URL 9076// will be parsed then reformatted in order to add the enterpriseToken 9077// parameter, so there may be some minor formatting changes. 9078func (c *SignupUrlsCreateCall) CallbackUrl(callbackUrl string) *SignupUrlsCreateCall { 9079 c.urlParams_.Set("callbackUrl", callbackUrl) 9080 return c 9081} 9082 9083// ProjectId sets the optional parameter "projectId": The ID of the 9084// Google Cloud Platform project which will own the enterprise. 9085func (c *SignupUrlsCreateCall) ProjectId(projectId string) *SignupUrlsCreateCall { 9086 c.urlParams_.Set("projectId", projectId) 9087 return c 9088} 9089 9090// Fields allows partial responses to be retrieved. See 9091// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 9092// for more information. 9093func (c *SignupUrlsCreateCall) Fields(s ...googleapi.Field) *SignupUrlsCreateCall { 9094 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9095 return c 9096} 9097 9098// Context sets the context to be used in this call's Do method. Any 9099// pending HTTP request will be aborted if the provided context is 9100// canceled. 9101func (c *SignupUrlsCreateCall) Context(ctx context.Context) *SignupUrlsCreateCall { 9102 c.ctx_ = ctx 9103 return c 9104} 9105 9106// Header returns an http.Header that can be modified by the caller to 9107// add HTTP headers to the request. 9108func (c *SignupUrlsCreateCall) Header() http.Header { 9109 if c.header_ == nil { 9110 c.header_ = make(http.Header) 9111 } 9112 return c.header_ 9113} 9114 9115func (c *SignupUrlsCreateCall) doRequest(alt string) (*http.Response, error) { 9116 reqHeaders := make(http.Header) 9117 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 9118 for k, v := range c.header_ { 9119 reqHeaders[k] = v 9120 } 9121 reqHeaders.Set("User-Agent", c.s.userAgent()) 9122 var body io.Reader = nil 9123 c.urlParams_.Set("alt", alt) 9124 c.urlParams_.Set("prettyPrint", "false") 9125 urls := googleapi.ResolveRelative(c.s.BasePath, "v1/signupUrls") 9126 urls += "?" + c.urlParams_.Encode() 9127 req, err := http.NewRequest("POST", urls, body) 9128 if err != nil { 9129 return nil, err 9130 } 9131 req.Header = reqHeaders 9132 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9133} 9134 9135// Do executes the "androidmanagement.signupUrls.create" call. 9136// Exactly one of *SignupUrl or error will be non-nil. Any non-2xx 9137// status code is an error. Response headers are in either 9138// *SignupUrl.ServerResponse.Header or (if a response was returned at 9139// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 9140// to check whether the returned error was because 9141// http.StatusNotModified was returned. 9142func (c *SignupUrlsCreateCall) Do(opts ...googleapi.CallOption) (*SignupUrl, error) { 9143 gensupport.SetOptions(c.urlParams_, opts...) 9144 res, err := c.doRequest("json") 9145 if res != nil && res.StatusCode == http.StatusNotModified { 9146 if res.Body != nil { 9147 res.Body.Close() 9148 } 9149 return nil, &googleapi.Error{ 9150 Code: res.StatusCode, 9151 Header: res.Header, 9152 } 9153 } 9154 if err != nil { 9155 return nil, err 9156 } 9157 defer googleapi.CloseBody(res) 9158 if err := googleapi.CheckResponse(res); err != nil { 9159 return nil, err 9160 } 9161 ret := &SignupUrl{ 9162 ServerResponse: googleapi.ServerResponse{ 9163 Header: res.Header, 9164 HTTPStatusCode: res.StatusCode, 9165 }, 9166 } 9167 target := &ret 9168 if err := gensupport.DecodeResponse(target, res); err != nil { 9169 return nil, err 9170 } 9171 return ret, nil 9172 // { 9173 // "description": "Creates an enterprise signup URL.", 9174 // "flatPath": "v1/signupUrls", 9175 // "httpMethod": "POST", 9176 // "id": "androidmanagement.signupUrls.create", 9177 // "parameterOrder": [], 9178 // "parameters": { 9179 // "callbackUrl": { 9180 // "description": "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.", 9181 // "location": "query", 9182 // "type": "string" 9183 // }, 9184 // "projectId": { 9185 // "description": "The ID of the Google Cloud Platform project which will own the enterprise.", 9186 // "location": "query", 9187 // "type": "string" 9188 // } 9189 // }, 9190 // "path": "v1/signupUrls", 9191 // "response": { 9192 // "$ref": "SignupUrl" 9193 // }, 9194 // "scopes": [ 9195 // "https://www.googleapis.com/auth/androidmanagement" 9196 // ] 9197 // } 9198 9199} 9200