blob: d12abcd760d29a8e32c0b48f7571f8ace2250945 [file] [log] [blame]
// Copyright 2020 Google LLC.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Code generated file. DO NOT EDIT.
// Package cloudidentity provides access to the Cloud Identity API.
//
// For product documentation, see: https://cloud.google.com/identity/
//
// Creating a client
//
// Usage example:
//
// import "google.golang.org/api/cloudidentity/v1beta1"
// ...
// ctx := context.Background()
// cloudidentityService, err := cloudidentity.NewService(ctx)
//
// In this example, Google Application Default Credentials are used for authentication.
//
// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
//
// Other authentication options
//
// By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes:
//
// cloudidentityService, err := cloudidentity.NewService(ctx, option.WithScopes(cloudidentity.CloudPlatformScope))
//
// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
//
// cloudidentityService, err := cloudidentity.NewService(ctx, option.WithAPIKey("AIza..."))
//
// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
//
// config := &oauth2.Config{...}
// // ...
// token, err := config.Exchange(ctx, ...)
// cloudidentityService, err := cloudidentity.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
//
// See https://godoc.org/google.golang.org/api/option/ for details on options.
package cloudidentity // import "google.golang.org/api/cloudidentity/v1beta1"
import (
"bytes"
"context"
"encoding/json"
"errors"
"fmt"
"io"
"net/http"
"net/url"
"strconv"
"strings"
googleapi "google.golang.org/api/googleapi"
gensupport "google.golang.org/api/internal/gensupport"
option "google.golang.org/api/option"
internaloption "google.golang.org/api/option/internaloption"
htransport "google.golang.org/api/transport/http"
)
// Always reference these packages, just in case the auto-generated code
// below doesn't.
var _ = bytes.NewBuffer
var _ = strconv.Itoa
var _ = fmt.Sprintf
var _ = json.NewDecoder
var _ = io.Copy
var _ = url.Parse
var _ = gensupport.MarshalJSON
var _ = googleapi.Version
var _ = errors.New
var _ = strings.Replace
var _ = context.Canceled
var _ = internaloption.WithDefaultEndpoint
const apiId = "cloudidentity:v1beta1"
const apiName = "cloudidentity"
const apiVersion = "v1beta1"
const basePath = "https://cloudidentity.googleapis.com/"
const mtlsBasePath = "https://cloudidentity.mtls.googleapis.com/"
// OAuth2 scopes used by this API.
const (
// See your device details
CloudIdentityDevicesLookupScope = "https://www.googleapis.com/auth/cloud-identity.devices.lookup"
// See, change, create, and delete any of the Cloud Identity Groups that
// you can access, including the members of each group
CloudIdentityGroupsScope = "https://www.googleapis.com/auth/cloud-identity.groups"
// See any Cloud Identity Groups that you can access, including group
// members and their emails
CloudIdentityGroupsReadonlyScope = "https://www.googleapis.com/auth/cloud-identity.groups.readonly"
// View and manage your data across Google Cloud Platform services
CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
)
// NewService creates a new Service.
func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
scopesOption := option.WithScopes(
"https://www.googleapis.com/auth/cloud-identity.devices.lookup",
"https://www.googleapis.com/auth/cloud-identity.groups",
"https://www.googleapis.com/auth/cloud-identity.groups.readonly",
"https://www.googleapis.com/auth/cloud-platform",
)
// NOTE: prepend, so we don't override user-specified scopes.
opts = append([]option.ClientOption{scopesOption}, opts...)
opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
client, endpoint, err := htransport.NewClient(ctx, opts...)
if err != nil {
return nil, err
}
s, err := New(client)
if err != nil {
return nil, err
}
if endpoint != "" {
s.BasePath = endpoint
}
return s, nil
}
// New creates a new Service. It uses the provided http.Client for requests.
//
// Deprecated: please use NewService instead.
// To provide a custom HTTP client, use option.WithHTTPClient.
// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
func New(client *http.Client) (*Service, error) {
if client == nil {
return nil, errors.New("client is nil")
}
s := &Service{client: client, BasePath: basePath}
s.Devices = NewDevicesService(s)
s.Groups = NewGroupsService(s)
return s, nil
}
type Service struct {
client *http.Client
BasePath string // API endpoint base URL
UserAgent string // optional additional User-Agent fragment
Devices *DevicesService
Groups *GroupsService
}
func (s *Service) userAgent() string {
if s.UserAgent == "" {
return googleapi.UserAgent
}
return googleapi.UserAgent + " " + s.UserAgent
}
func NewDevicesService(s *Service) *DevicesService {
rs := &DevicesService{s: s}
rs.DeviceUsers = NewDevicesDeviceUsersService(s)
return rs
}
type DevicesService struct {
s *Service
DeviceUsers *DevicesDeviceUsersService
}
func NewDevicesDeviceUsersService(s *Service) *DevicesDeviceUsersService {
rs := &DevicesDeviceUsersService{s: s}
rs.ClientStates = NewDevicesDeviceUsersClientStatesService(s)
return rs
}
type DevicesDeviceUsersService struct {
s *Service
ClientStates *DevicesDeviceUsersClientStatesService
}
func NewDevicesDeviceUsersClientStatesService(s *Service) *DevicesDeviceUsersClientStatesService {
rs := &DevicesDeviceUsersClientStatesService{s: s}
return rs
}
type DevicesDeviceUsersClientStatesService struct {
s *Service
}
func NewGroupsService(s *Service) *GroupsService {
rs := &GroupsService{s: s}
rs.Memberships = NewGroupsMembershipsService(s)
return rs
}
type GroupsService struct {
s *Service
Memberships *GroupsMembershipsService
}
func NewGroupsMembershipsService(s *Service) *GroupsMembershipsService {
rs := &GroupsMembershipsService{s: s}
return rs
}
type GroupsMembershipsService struct {
s *Service
}
// AndroidAttributes: Resource representing the Android specific
// attributes of a Device.
type AndroidAttributes struct {
// EnabledUnknownSources: Whether applications from unknown sources can
// be installed on device.
EnabledUnknownSources bool `json:"enabledUnknownSources,omitempty"`
// OwnerProfileAccount: Whether this account is on an owner/primary
// profile. For phones, only true for owner profiles. Android 4+ devices
// can have secondary or restricted user profiles.
OwnerProfileAccount bool `json:"ownerProfileAccount,omitempty"`
// OwnershipPrivilege: Ownership privileges on device.
//
// Possible values:
// "OWNERSHIP_PRIVILEGE_UNSPECIFIED" - Ownership privilege is not set.
// "DEVICE_ADMINISTRATOR" - Active device administrator privileges on
// the device.
// "PROFILE_OWNER" - Profile Owner privileges. The account is in a
// managed corporate profile.
// "DEVICE_OWNER" - Device Owner privileges on the device.
OwnershipPrivilege string `json:"ownershipPrivilege,omitempty"`
// SupportsWorkProfile: Whether device supports Android work profiles.
// If false, this service will not block access to corp data even if an
// administrator turns on the "Enforce Work Profile" policy.
SupportsWorkProfile bool `json:"supportsWorkProfile,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "EnabledUnknownSources") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "EnabledUnknownSources") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AndroidAttributes) MarshalJSON() ([]byte, error) {
type NoMethod AndroidAttributes
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ApproveDeviceUserRequest: Request message for approving the device to
// access user data.
type ApproveDeviceUserRequest struct {
// Customer: Required. [Resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// customer. If you're using this API for your own organization, use
// `customers/my_customer` If you're using this API to manage another
// organization, use `customers/{customer_id}`, where customer_id is the
// customer to whom the device belongs.
Customer string `json:"customer,omitempty"`
// ForceSendFields is a list of field names (e.g. "Customer") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Customer") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ApproveDeviceUserRequest) MarshalJSON() ([]byte, error) {
type NoMethod ApproveDeviceUserRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ApproveDeviceUserResponse: Response message for approving the device
// to access user data.
type ApproveDeviceUserResponse struct {
// DeviceUser: Resultant DeviceUser object for the action.
DeviceUser *DeviceUser `json:"deviceUser,omitempty"`
// ForceSendFields is a list of field names (e.g. "DeviceUser") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DeviceUser") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ApproveDeviceUserResponse) MarshalJSON() ([]byte, error) {
type NoMethod ApproveDeviceUserResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BlockDeviceUserRequest: Request message for blocking account on
// device.
type BlockDeviceUserRequest struct {
// Customer: Required. [Resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// customer. If you're using this API for your own organization, use
// `customers/my_customer` If you're using this API to manage another
// organization, use `customers/{customer_id}`, where customer_id is the
// customer to whom the device belongs.
Customer string `json:"customer,omitempty"`
// ForceSendFields is a list of field names (e.g. "Customer") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Customer") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *BlockDeviceUserRequest) MarshalJSON() ([]byte, error) {
type NoMethod BlockDeviceUserRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BlockDeviceUserResponse: Response message for blocking the device
// from accessing user data.
type BlockDeviceUserResponse struct {
// DeviceUser: Resultant DeviceUser object for the action.
DeviceUser *DeviceUser `json:"deviceUser,omitempty"`
// ForceSendFields is a list of field names (e.g. "DeviceUser") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DeviceUser") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *BlockDeviceUserResponse) MarshalJSON() ([]byte, error) {
type NoMethod BlockDeviceUserResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CancelWipeDeviceRequest: Request message for cancelling an unfinished
// device wipe.
type CancelWipeDeviceRequest struct {
// Customer: Required. [Resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// customer. If you're using this API for your own organization, use
// `customers/my_customer` If you're using this API to manage another
// organization, use `customers/{customer_id}`, where customer_id is the
// customer to whom the device belongs.
Customer string `json:"customer,omitempty"`
// ForceSendFields is a list of field names (e.g. "Customer") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Customer") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CancelWipeDeviceRequest) MarshalJSON() ([]byte, error) {
type NoMethod CancelWipeDeviceRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CancelWipeDeviceResponse: Response message for cancelling an
// unfinished device wipe.
type CancelWipeDeviceResponse struct {
// Device: Resultant Device object for the action. Note that asset tags
// will not be returned in the device object.
Device *Device `json:"device,omitempty"`
// ForceSendFields is a list of field names (e.g. "Device") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Device") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CancelWipeDeviceResponse) MarshalJSON() ([]byte, error) {
type NoMethod CancelWipeDeviceResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CancelWipeDeviceUserRequest: Request message for cancelling an
// unfinished user account wipe.
type CancelWipeDeviceUserRequest struct {
// Customer: Required. [Resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// customer. If you're using this API for your own organization, use
// `customers/my_customer` If you're using this API to manage another
// organization, use `customers/{customer_id}`, where customer_id is the
// customer to whom the device belongs.
Customer string `json:"customer,omitempty"`
// ForceSendFields is a list of field names (e.g. "Customer") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Customer") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CancelWipeDeviceUserRequest) MarshalJSON() ([]byte, error) {
type NoMethod CancelWipeDeviceUserRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CancelWipeDeviceUserResponse: Response message for cancelling an
// unfinished user account wipe.
type CancelWipeDeviceUserResponse struct {
// DeviceUser: Resultant DeviceUser object for the action.
DeviceUser *DeviceUser `json:"deviceUser,omitempty"`
// ForceSendFields is a list of field names (e.g. "DeviceUser") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DeviceUser") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CancelWipeDeviceUserResponse) MarshalJSON() ([]byte, error) {
type NoMethod CancelWipeDeviceUserResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CheckTransitiveMembershipResponse: The response message for
// MembershipsService.CheckTransitiveMembership.
type CheckTransitiveMembershipResponse struct {
// HasMembership: Response does not include the possible roles of a
// member since the behavior of this rpc is not all-or-nothing unlike
// the other rpcs. So, it may not be possible to list all the roles
// definitively, due to possible lack of authorization in some of the
// paths.
HasMembership bool `json:"hasMembership,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "HasMembership") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "HasMembership") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CheckTransitiveMembershipResponse) MarshalJSON() ([]byte, error) {
type NoMethod CheckTransitiveMembershipResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ClientState: Represents the state associated with an API client
// calling the Devices API. Resource representing ClientState and
// supports updates from API users
type ClientState struct {
// AssetTags: The caller can specify asset tags for this resource
AssetTags []string `json:"assetTags,omitempty"`
// ComplianceState: The compliance state of the resource as specified by
// the API client.
//
// Possible values:
// "COMPLIANCE_STATE_UNSPECIFIED" - The compliance state of the
// resource is unknown or unspecified.
// "COMPLIANT" - Device is compliant with third party policies
// "NON_COMPLIANT" - Device is not compliant with third party policies
ComplianceState string `json:"complianceState,omitempty"`
// CreateTime: Output only. The time the client state data was created.
CreateTime string `json:"createTime,omitempty"`
// CustomId: This field may be used to store a unique identifier for the
// API resource within which these CustomAttributes are a field.
CustomId string `json:"customId,omitempty"`
// Etag: The token that needs to be passed back for concurrency control
// in updates. Token needs to be passed back in UpdateRequest
Etag string `json:"etag,omitempty"`
// HealthScore: The Health score of the resource
//
// Possible values:
// "HEALTH_SCORE_UNSPECIFIED" - Default value
// "VERY_POOR" - The object is in very poor health as defined by the
// caller.
// "POOR" - The object is in poor health as defined by the caller.
// "NEUTRAL" - The object health is neither good nor poor, as defined
// by the caller.
// "GOOD" - The object is in good health as defined by the caller.
// "VERY_GOOD" - The object is in very good health as defined by the
// caller.
HealthScore string `json:"healthScore,omitempty"`
// KeyValuePairs: The map of key-value attributes stored by callers
// specific to a device. The total serialized length of this map may not
// exceed 10KB. No limit is placed on the number of attributes in a map.
KeyValuePairs map[string]CustomAttributeValue `json:"keyValuePairs,omitempty"`
// LastUpdateTime: Output only. The time the client state data was last
// updated.
LastUpdateTime string `json:"lastUpdateTime,omitempty"`
// Managed: The management state of the resource as specified by the API
// client.
//
// Possible values:
// "MANAGED_STATE_UNSPECIFIED" - The management state of the resource
// is unknown or unspecified.
// "MANAGED" - The resource is managed.
// "UNMANAGED" - The resource is not managed.
Managed string `json:"managed,omitempty"`
// Name: Output only. [Resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// ClientState in format:
// `devices/{device_id}/deviceUsers/{device_user_id}/clientState/{partner
// _id}`, where partner_id corresponds to the partner storing the data.
Name string `json:"name,omitempty"`
// OwnerType: Output only. The owner of the ClientState
//
// Possible values:
// "OWNER_TYPE_UNSPECIFIED" - Unknown owner type
// "OWNER_TYPE_CUSTOMER" - Customer is the owner
// "OWNER_TYPE_PARTNER" - Partner is the owner
OwnerType string `json:"ownerType,omitempty"`
// ScoreReason: A descriptive cause of the health score.
ScoreReason string `json:"scoreReason,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "AssetTags") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AssetTags") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ClientState) MarshalJSON() ([]byte, error) {
type NoMethod ClientState
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreateDeviceRequest: Request message for creating a Company Owned
// device.
type CreateDeviceRequest struct {
// Customer: Required. [Resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// customer. If you're using this API for your own organization, use
// `customers/my_customer` If you're using this API to manage another
// organization, use `customers/{customer_id}`, where customer_id is the
// customer to whom the device belongs.
Customer string `json:"customer,omitempty"`
// Device: Required. The device to be created. The name field within
// this device is ignored in the create method. A new name is created by
// the method, and returned within the response. Only the fields
// `device_type`, `serial_number` and `asset_tag` (if present) are used
// to create the device.`device_type` and `serial_number` are required.
Device *Device `json:"device,omitempty"`
// ForceSendFields is a list of field names (e.g. "Customer") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Customer") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CreateDeviceRequest) MarshalJSON() ([]byte, error) {
type NoMethod CreateDeviceRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CustomAttributeValue: Additional custom attribute values may be one
// of these types
type CustomAttributeValue struct {
// BoolValue: Represents a boolean value.
BoolValue bool `json:"boolValue,omitempty"`
// NumberValue: Represents a double value.
NumberValue float64 `json:"numberValue,omitempty"`
// StringValue: Represents a string value.
StringValue string `json:"stringValue,omitempty"`
// ForceSendFields is a list of field names (e.g. "BoolValue") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BoolValue") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CustomAttributeValue) MarshalJSON() ([]byte, error) {
type NoMethod CustomAttributeValue
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *CustomAttributeValue) UnmarshalJSON(data []byte) error {
type NoMethod CustomAttributeValue
var s1 struct {
NumberValue gensupport.JSONFloat64 `json:"numberValue"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.NumberValue = float64(s1.NumberValue)
return nil
}
// Device: A Device within the Cloud Identity Devices API. Represents a
// Device known to Google Cloud, independent of the device ownership,
// type, and whether it is assigned or in use by a user.
type Device struct {
// AndroidSpecificAttributes: Output only. Attributes specific to
// Android devices.
AndroidSpecificAttributes *AndroidAttributes `json:"androidSpecificAttributes,omitempty"`
// AssetTag: Asset tag of the device.
AssetTag string `json:"assetTag,omitempty"`
// BasebandVersion: Output only. Baseband version of the device.
BasebandVersion string `json:"basebandVersion,omitempty"`
// BootloaderVersion: Output only. Device bootloader version. Example:
// 0.6.7.
BootloaderVersion string `json:"bootloaderVersion,omitempty"`
// Brand: Output only. Device brand. Example: Samsung.
Brand string `json:"brand,omitempty"`
// BuildNumber: Output only. Build number of the device.
BuildNumber string `json:"buildNumber,omitempty"`
// CompromisedState: Output only. Represents whether the Device is
// compromised.
//
// Possible values:
// "COMPROMISED_STATE_UNSPECIFIED" - Default value.
// "COMPROMISED" - The device is compromised (currently, this means
// Android device is rooted).
// "UNCOMPROMISED" - The device is safe (currently, this means Android
// device is unrooted).
CompromisedState string `json:"compromisedState,omitempty"`
// CreateTime: Output only. When the Company-Owned device was imported.
// This field is empty for BYOD devices.
CreateTime string `json:"createTime,omitempty"`
// DeviceType: Output only. Type of device.
//
// Possible values:
// "DEVICE_TYPE_UNSPECIFIED" - Unknown device type
// "ANDROID" - Device is an Android device
// "IOS" - Device is an iOS device
// "GOOGLE_SYNC" - Device is a Google Sync device.
// "WINDOWS" - Device is a Windows device.
// "MAC_OS" - Device is a MacOS device.
// "LINUX" - Device is a Linux device.
// "CHROME_OS" - Device is a ChromeOS device.
DeviceType string `json:"deviceType,omitempty"`
// EnabledDeveloperOptions: Output only. Whether developer options is
// enabled on device.
EnabledDeveloperOptions bool `json:"enabledDeveloperOptions,omitempty"`
// EnabledUsbDebugging: Output only. Whether USB debugging is enabled on
// device.
EnabledUsbDebugging bool `json:"enabledUsbDebugging,omitempty"`
// EncryptionState: Output only. Device encryption state.
//
// Possible values:
// "ENCRYPTION_STATE_UNSPECIFIED" - Encryption Status is not set.
// "UNSUPPORTED_BY_DEVICE" - Device doesn't support encryption.
// "ENCRYPTED" - Device is encrypted.
// "NOT_ENCRYPTED" - Device is not encrypted.
EncryptionState string `json:"encryptionState,omitempty"`
// Imei: Output only. IMEI number of device if GSM device; empty
// otherwise.
Imei string `json:"imei,omitempty"`
// KernelVersion: Output only. Kernel version of the device.
KernelVersion string `json:"kernelVersion,omitempty"`
// LastSyncTime: Most recent time when device synced with this service.
LastSyncTime string `json:"lastSyncTime,omitempty"`
// ManagementState: Output only. Management state of the device
//
// Possible values:
// "MANAGEMENT_STATE_UNSPECIFIED" - Default value. This value is
// unused.
// "APPROVED" - Device is approved.
// "BLOCKED" - Device is blocked.
// "PENDING" - Device is pending approval.
// "UNPROVISIONED" - The device is not provisioned. Device will start
// from this state until some action is taken (i.e. a user starts using
// the device).
// "WIPING" - Data and settings on the device are being removed.
// "WIPED" - All data and settings on the device are removed.
ManagementState string `json:"managementState,omitempty"`
// Manufacturer: Output only. Device manufacturer. Example: Motorola.
Manufacturer string `json:"manufacturer,omitempty"`
// Meid: Output only. MEID number of device if CDMA device; empty
// otherwise.
Meid string `json:"meid,omitempty"`
// Model: Output only. Model name of device. Example: Pixel 3.
Model string `json:"model,omitempty"`
// Name: Output only. [Resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// Device in format: `devices/{device_id}`, where device_id is the
// unique id assigned to the Device.
Name string `json:"name,omitempty"`
// NetworkOperator: Output only. Mobile or network operator of device,
// if available.
NetworkOperator string `json:"networkOperator,omitempty"`
// OsVersion: Output only. OS version of the device. Example: Android
// 8.1.0.
OsVersion string `json:"osVersion,omitempty"`
// OtherAccounts: Output only. Domain name for Google accounts on
// device. Type for other accounts on device. On Android, will only be
// populated if |ownership_privilege| is |PROFILE_OWNER| or
// |DEVICE_OWNER|. Does not include the account signed in to the device
// policy app if that account's domain has only one account. Examples:
// "com.example", "xyz.com".
OtherAccounts []string `json:"otherAccounts,omitempty"`
// OwnerType: Output only. Whether the device is owned by the company or
// an individual
//
// Possible values:
// "DEVICE_OWNERSHIP_UNSPECIFIED" - Default value. The value is
// unused.
// "COMPANY" - Company owns the device.
// "BYOD" - Bring Your Own Device (i.e. individual owns the device)
OwnerType string `json:"ownerType,omitempty"`
// ReleaseVersion: Output only. OS release version. Example: 6.0.
ReleaseVersion string `json:"releaseVersion,omitempty"`
// SecurityPatchTime: Output only. OS security patch update time on
// device.
SecurityPatchTime string `json:"securityPatchTime,omitempty"`
// SerialNumber: Serial Number of device. Example: HT82V1A01076.
SerialNumber string `json:"serialNumber,omitempty"`
// WifiMacAddresses: WiFi MAC addresses of device.
WifiMacAddresses []string `json:"wifiMacAddresses,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g.
// "AndroidSpecificAttributes") to unconditionally include in API
// requests. By default, fields with empty values are omitted from API
// requests. However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g.
// "AndroidSpecificAttributes") to include in API requests with the JSON
// null value. By default, fields with empty values are omitted from API
// requests. However, any field with an empty value appearing in
// NullFields will be sent to the server as null. It is an error if a
// field in this list has a non-empty value. This may be used to include
// null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Device) MarshalJSON() ([]byte, error) {
type NoMethod Device
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DeviceUser: Represents a user's use of a Device in the Cloud Identity
// Devices API. A DeviceUser is a resource representing a user's use of
// a Device
type DeviceUser struct {
// CompromisedState: Compromised State of the DeviceUser object
//
// Possible values:
// "COMPROMISED_STATE_UNSPECIFIED" - Compromised state of Device User
// account is unknown or unspecified.
// "COMPROMISED" - Device User Account is compromised.
// "NOT_COMPROMISED" - Device User Account is not compromised.
CompromisedState string `json:"compromisedState,omitempty"`
// CreateTime: When the user first signed in to the device
CreateTime string `json:"createTime,omitempty"`
// FirstSyncTime: Output only. Most recent time when user registered
// with this service.
FirstSyncTime string `json:"firstSyncTime,omitempty"`
// LanguageCode: Output only. Default locale used on device, in IETF
// BCP-47 format.
LanguageCode string `json:"languageCode,omitempty"`
// LastSyncTime: Output only. Last time when user synced with policies.
LastSyncTime string `json:"lastSyncTime,omitempty"`
// ManagementState: Output only. Management state of the user on the
// device.
//
// Possible values:
// "MANAGEMENT_STATE_UNSPECIFIED" - Default value. This value is
// unused.
// "WIPING" - This user's data and profile is being removed from the
// device.
// "WIPED" - This user's data and profile is removed from the device.
// "APPROVED" - User is approved to access data on the device.
// "BLOCKED" - User is blocked from accessing data on the device.
// "PENDING_APPROVAL" - User is awaiting approval.
// "UNENROLLED" - User is unenrolled from Advanced Windows Management,
// but the Windows account is still intact.
ManagementState string `json:"managementState,omitempty"`
// Name: Output only. [Resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// DeviceUser in format: `devices/{device_id}/deviceUsers/{user_id}`,
// where user_id is the ID of the user associated with the user session.
Name string `json:"name,omitempty"`
// PasswordState: Password state of the DeviceUser object
//
// Possible values:
// "PASSWORD_STATE_UNSPECIFIED" - Password state not set.
// "PASSWORD_SET" - Password set in object.
// "PASSWORD_NOT_SET" - Password not set in object.
PasswordState string `json:"passwordState,omitempty"`
// UserAgent: Output only. User agent on the device for this specific
// user
UserAgent string `json:"userAgent,omitempty"`
// UserEmail: Email address of the user registered on the device.
UserEmail string `json:"userEmail,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "CompromisedState") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CompromisedState") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *DeviceUser) MarshalJSON() ([]byte, error) {
type NoMethod DeviceUser
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DynamicGroupMetadata: Dynamic group metadata like queries and status.
type DynamicGroupMetadata struct {
// Queries: Memberships will be the union of all queries. Only one entry
// with USER resource is currently supported.
Queries []*DynamicGroupQuery `json:"queries,omitempty"`
// Status: Output only. Status of the dynamic group.
Status *DynamicGroupStatus `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "Queries") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Queries") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DynamicGroupMetadata) MarshalJSON() ([]byte, error) {
type NoMethod DynamicGroupMetadata
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DynamicGroupQuery: Defines a query on a resource.
type DynamicGroupQuery struct {
// Query: Query that determines the memberships of the dynamic group.
// Examples: All users with at least one `organizations.department` of
// engineering. `user.organizations.exists(org,
// org.department=='engineering')` All users with at least one location
// that has `area` of `foo` and `building_id` of `bar`.
// `user.locations.exists(loc, loc.area=='foo' &&
// loc.building_id=='bar')`
Query string `json:"query,omitempty"`
// Possible values:
// "RESOURCE_TYPE_UNSPECIFIED" - Default value (not valid)
// "USER" - For queries on User
ResourceType string `json:"resourceType,omitempty"`
// ForceSendFields is a list of field names (e.g. "Query") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Query") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DynamicGroupQuery) MarshalJSON() ([]byte, error) {
type NoMethod DynamicGroupQuery
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DynamicGroupStatus: The current status of a dynamic group along with
// timestamp.
type DynamicGroupStatus struct {
// Status: Status of the dynamic group.
//
// Possible values:
// "STATUS_UNSPECIFIED" - Default.
// "UP_TO_DATE" - The dynamic group is up-to-date.
// "UPDATING_MEMBERSHIPS" - The dynamic group has just been created
// and memberships are being updated.
Status string `json:"status,omitempty"`
// StatusTime: The latest time at which the dynamic group is guaranteed
// to be in the given status. If status is `UP_TO_DATE`, the latest time
// at which the dynamic group was confirmed to be up-to-date. If status
// is `UPDATING_MEMBERSHIPS`, the time at which dynamic group was
// created.
StatusTime string `json:"statusTime,omitempty"`
// ForceSendFields is a list of field names (e.g. "Status") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Status") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DynamicGroupStatus) MarshalJSON() ([]byte, error) {
type NoMethod DynamicGroupStatus
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// EntityKey: A unique identifier for an entity in the Cloud Identity
// Groups API. An entity can represent either a group with an optional
// `namespace` or a user without a `namespace`. The combination of `id`
// and `namespace` must be unique; however, the same `id` can be used
// with different `namespace`s.
type EntityKey struct {
// Id: The ID of the entity. For Google-managed entities, the `id` must
// be the email address of an existing group or user. For
// external-identity-mapped entities, the `id` must be a string
// conforming to the Identity Source's requirements. Must be unique
// within a `namespace`.
Id string `json:"id,omitempty"`
// Namespace: The namespace in which the entity exists. If not
// specified, the `EntityKey` represents a Google-managed entity such as
// a Google user or a Google Group. If specified, the `EntityKey`
// represents an external-identity-mapped group. The namespace must
// correspond to an identity source created in Admin Console and must be
// in the form of `identitysources/{identity_source_id}.
Namespace string `json:"namespace,omitempty"`
// ForceSendFields is a list of field names (e.g. "Id") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *EntityKey) MarshalJSON() ([]byte, error) {
type NoMethod EntityKey
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ExpiryDetail: The `MembershipRole` expiry details.
type ExpiryDetail struct {
// ExpireTime: The time at which the `MembershipRole` will expire.
ExpireTime string `json:"expireTime,omitempty"`
// ForceSendFields is a list of field names (e.g. "ExpireTime") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ExpireTime") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ExpiryDetail) MarshalJSON() ([]byte, error) {
type NoMethod ExpiryDetail
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GetMembershipGraphResponse: The response message for
// MembershipsService.GetMembershipGraph.
type GetMembershipGraphResponse struct {
// AdjacencyList: The membership graph's path information represented as
// an adjacency list.
AdjacencyList []*MembershipAdjacencyList `json:"adjacencyList,omitempty"`
// Groups: The resources representing each group in the adjacency list.
// Each group in this list can be correlated to a 'group' of the
// MembershipAdjacencyList using the 'name' of the Group resource.
Groups []*Group `json:"groups,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdjacencyList") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdjacencyList") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GetMembershipGraphResponse) MarshalJSON() ([]byte, error) {
type NoMethod GetMembershipGraphResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleAppsCloudidentityDevicesV1AndroidAttributes: Resource
// representing the Android specific attributes of a Device.
type GoogleAppsCloudidentityDevicesV1AndroidAttributes struct {
// EnabledUnknownSources: Whether applications from unknown sources can
// be installed on device.
EnabledUnknownSources bool `json:"enabledUnknownSources,omitempty"`
// OwnerProfileAccount: Whether this account is on an owner/primary
// profile. For phones, only true for owner profiles. Android 4+ devices
// can have secondary or restricted user profiles.
OwnerProfileAccount bool `json:"ownerProfileAccount,omitempty"`
// OwnershipPrivilege: Ownership privileges on device.
//
// Possible values:
// "OWNERSHIP_PRIVILEGE_UNSPECIFIED" - Ownership privilege is not set.
// "DEVICE_ADMINISTRATOR" - Active device administrator privileges on
// the device.
// "PROFILE_OWNER" - Profile Owner privileges. The account is in a
// managed corporate profile.
// "DEVICE_OWNER" - Device Owner privileges on the device.
OwnershipPrivilege string `json:"ownershipPrivilege,omitempty"`
// SupportsWorkProfile: Whether device supports Android work profiles.
// If false, this service will not block access to corp data even if an
// administrator turns on the "Enforce Work Profile" policy.
SupportsWorkProfile bool `json:"supportsWorkProfile,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "EnabledUnknownSources") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "EnabledUnknownSources") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *GoogleAppsCloudidentityDevicesV1AndroidAttributes) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsCloudidentityDevicesV1AndroidAttributes
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleAppsCloudidentityDevicesV1ApproveDeviceUserResponse: Response
// message for approving the device to access user data.
type GoogleAppsCloudidentityDevicesV1ApproveDeviceUserResponse struct {
// DeviceUser: Resultant DeviceUser object for the action.
DeviceUser *GoogleAppsCloudidentityDevicesV1DeviceUser `json:"deviceUser,omitempty"`
// ForceSendFields is a list of field names (e.g. "DeviceUser") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DeviceUser") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleAppsCloudidentityDevicesV1ApproveDeviceUserResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsCloudidentityDevicesV1ApproveDeviceUserResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleAppsCloudidentityDevicesV1BlockDeviceUserResponse: Response
// message for blocking the device from accessing user data.
type GoogleAppsCloudidentityDevicesV1BlockDeviceUserResponse struct {
// DeviceUser: Resultant DeviceUser object for the action.
DeviceUser *GoogleAppsCloudidentityDevicesV1DeviceUser `json:"deviceUser,omitempty"`
// ForceSendFields is a list of field names (e.g. "DeviceUser") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DeviceUser") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleAppsCloudidentityDevicesV1BlockDeviceUserResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsCloudidentityDevicesV1BlockDeviceUserResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleAppsCloudidentityDevicesV1CancelWipeDeviceResponse: Response
// message for cancelling an unfinished device wipe.
type GoogleAppsCloudidentityDevicesV1CancelWipeDeviceResponse struct {
// Device: Resultant Device object for the action. Note that asset tags
// will not be returned in the device object.
Device *GoogleAppsCloudidentityDevicesV1Device `json:"device,omitempty"`
// ForceSendFields is a list of field names (e.g. "Device") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Device") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleAppsCloudidentityDevicesV1CancelWipeDeviceResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsCloudidentityDevicesV1CancelWipeDeviceResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserResponse:
// Response message for cancelling an unfinished user account wipe.
type GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserResponse struct {
// DeviceUser: Resultant DeviceUser object for the action.
DeviceUser *GoogleAppsCloudidentityDevicesV1DeviceUser `json:"deviceUser,omitempty"`
// ForceSendFields is a list of field names (e.g. "DeviceUser") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DeviceUser") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleAppsCloudidentityDevicesV1ClientState: Represents the state
// associated with an API client calling the Devices API. Resource
// representing ClientState and supports updates from API users
type GoogleAppsCloudidentityDevicesV1ClientState struct {
// AssetTags: The caller can specify asset tags for this resource
AssetTags []string `json:"assetTags,omitempty"`
// ComplianceState: The compliance state of the resource as specified by
// the API client.
//
// Possible values:
// "COMPLIANCE_STATE_UNSPECIFIED" - The compliance state of the
// resource is unknown or unspecified.
// "COMPLIANT" - Device is compliant with third party policies
// "NON_COMPLIANT" - Device is not compliant with third party policies
ComplianceState string `json:"complianceState,omitempty"`
// CreateTime: Output only. The time the client state data was created.
CreateTime string `json:"createTime,omitempty"`
// CustomId: This field may be used to store a unique identifier for the
// API resource within which these CustomAttributes are a field.
CustomId string `json:"customId,omitempty"`
// Etag: The token that needs to be passed back for concurrency control
// in updates. Token needs to be passed back in UpdateRequest
Etag string `json:"etag,omitempty"`
// HealthScore: The Health score of the resource. The Health score is
// the callers specification of the condition of the device from a
// usability point of view. For example, a third-party device management
// provider may specify a health score based on its compliance with
// organizational policies.
//
// Possible values:
// "HEALTH_SCORE_UNSPECIFIED" - Default value
// "VERY_POOR" - The object is in very poor health as defined by the
// caller.
// "POOR" - The object is in poor health as defined by the caller.
// "NEUTRAL" - The object health is neither good nor poor, as defined
// by the caller.
// "GOOD" - The object is in good health as defined by the caller.
// "VERY_GOOD" - The object is in very good health as defined by the
// caller.
HealthScore string `json:"healthScore,omitempty"`
// KeyValuePairs: The map of key-value attributes stored by callers
// specific to a device. The total serialized length of this map may not
// exceed 10KB. No limit is placed on the number of attributes in a map.
KeyValuePairs map[string]GoogleAppsCloudidentityDevicesV1CustomAttributeValue `json:"keyValuePairs,omitempty"`
// LastUpdateTime: Output only. The time the client state data was last
// updated.
LastUpdateTime string `json:"lastUpdateTime,omitempty"`
// Managed: The management state of the resource as specified by the API
// client.
//
// Possible values:
// "MANAGED_STATE_UNSPECIFIED" - The management state of the resource
// is unknown or unspecified.
// "MANAGED" - The resource is managed.
// "UNMANAGED" - The resource is not managed.
Managed string `json:"managed,omitempty"`
// Name: Output only. [Resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// ClientState in format:
// `devices/{device_id}/deviceUsers/{device_user_id}/clientState/{partner
// _id}`, where partner_id corresponds to the partner storing the data.
// For partners belonging to the "BeyondCorp Alliance", this is the
// partner ID specified to you by Google. For all other callers, this is
// a string of the form: `{customer_id}-suffix`, where `customer_id` is
// your customer ID. The *suffix* is any string the caller specifies.
// This string will be displayed verbatim in the administration console.
// This suffix is used in setting up Custom Access Levels in
// Context-Aware Access. Your organization's customer ID can be obtained
// from the URL: `GET
// https://www.googleapis.com/admin/directory/v1/customers/my_customer`
// The `id` field in the response contains the customer ID starting with
// the letter 'C'. The customer ID to be used in this API is the string
// after the letter 'C' (not including 'C')
Name string `json:"name,omitempty"`
// OwnerType: Output only. The owner of the ClientState
//
// Possible values:
// "OWNER_TYPE_UNSPECIFIED" - Unknown owner type
// "OWNER_TYPE_CUSTOMER" - Customer is the owner
// "OWNER_TYPE_PARTNER" - Partner is the owner
OwnerType string `json:"ownerType,omitempty"`
// ScoreReason: A descriptive cause of the health score.
ScoreReason string `json:"scoreReason,omitempty"`
// ForceSendFields is a list of field names (e.g. "AssetTags") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AssetTags") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleAppsCloudidentityDevicesV1ClientState) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsCloudidentityDevicesV1ClientState
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleAppsCloudidentityDevicesV1CustomAttributeValue: Additional
// custom attribute values may be one of these types
type GoogleAppsCloudidentityDevicesV1CustomAttributeValue struct {
// BoolValue: Represents a boolean value.
BoolValue bool `json:"boolValue,omitempty"`
// NumberValue: Represents a double value.
NumberValue float64 `json:"numberValue,omitempty"`
// StringValue: Represents a string value.
StringValue string `json:"stringValue,omitempty"`
// ForceSendFields is a list of field names (e.g. "BoolValue") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BoolValue") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleAppsCloudidentityDevicesV1CustomAttributeValue) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsCloudidentityDevicesV1CustomAttributeValue
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *GoogleAppsCloudidentityDevicesV1CustomAttributeValue) UnmarshalJSON(data []byte) error {
type NoMethod GoogleAppsCloudidentityDevicesV1CustomAttributeValue
var s1 struct {
NumberValue gensupport.JSONFloat64 `json:"numberValue"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.NumberValue = float64(s1.NumberValue)
return nil
}
// GoogleAppsCloudidentityDevicesV1Device: A Device within the Cloud
// Identity Devices API. Represents a Device known to Google Cloud,
// independent of the device ownership, type, and whether it is assigned
// or in use by a user.
type GoogleAppsCloudidentityDevicesV1Device struct {
// AndroidSpecificAttributes: Output only. Attributes specific to
// Android devices.
AndroidSpecificAttributes *GoogleAppsCloudidentityDevicesV1AndroidAttributes `json:"androidSpecificAttributes,omitempty"`
// AssetTag: Asset tag of the device.
AssetTag string `json:"assetTag,omitempty"`
// BasebandVersion: Output only. Baseband version of the device.
BasebandVersion string `json:"basebandVersion,omitempty"`
// BootloaderVersion: Output only. Device bootloader version. Example:
// 0.6.7.
BootloaderVersion string `json:"bootloaderVersion,omitempty"`
// Brand: Output only. Device brand. Example: Samsung.
Brand string `json:"brand,omitempty"`
// BuildNumber: Output only. Build number of the device.
BuildNumber string `json:"buildNumber,omitempty"`
// CompromisedState: Output only. Represents whether the Device is
// compromised.
//
// Possible values:
// "COMPROMISED_STATE_UNSPECIFIED" - Default value.
// "COMPROMISED" - The device is compromised (currently, this means
// Android device is rooted).
// "UNCOMPROMISED" - The device is safe (currently, this means Android
// device is unrooted).
CompromisedState string `json:"compromisedState,omitempty"`
// CreateTime: Output only. When the Company-Owned device was imported.
// This field is empty for BYOD devices.
CreateTime string `json:"createTime,omitempty"`
// DeviceType: Output only. Type of device.
//
// Possible values:
// "DEVICE_TYPE_UNSPECIFIED" - Unknown device type
// "ANDROID" - Device is an Android device
// "IOS" - Device is an iOS device
// "GOOGLE_SYNC" - Device is a Google Sync device.
// "WINDOWS" - Device is a Windows device.
// "MAC_OS" - Device is a MacOS device.
// "LINUX" - Device is a Linux device.
// "CHROME_OS" - Device is a ChromeOS device.
DeviceType string `json:"deviceType,omitempty"`
// EnabledDeveloperOptions: Output only. Whether developer options is
// enabled on device.
EnabledDeveloperOptions bool `json:"enabledDeveloperOptions,omitempty"`
// EnabledUsbDebugging: Output only. Whether USB debugging is enabled on
// device.
EnabledUsbDebugging bool `json:"enabledUsbDebugging,omitempty"`
// EncryptionState: Output only. Device encryption state.
//
// Possible values:
// "ENCRYPTION_STATE_UNSPECIFIED" - Encryption Status is not set.
// "UNSUPPORTED_BY_DEVICE" - Device doesn't support encryption.
// "ENCRYPTED" - Device is encrypted.
// "NOT_ENCRYPTED" - Device is not encrypted.
EncryptionState string `json:"encryptionState,omitempty"`
// Imei: Output only. IMEI number of device if GSM device; empty
// otherwise.
Imei string `json:"imei,omitempty"`
// KernelVersion: Output only. Kernel version of the device.
KernelVersion string `json:"kernelVersion,omitempty"`
// LastSyncTime: Most recent time when device synced with this service.
LastSyncTime string `json:"lastSyncTime,omitempty"`
// ManagementState: Output only. Management state of the device
//
// Possible values:
// "MANAGEMENT_STATE_UNSPECIFIED" - Default value. This value is
// unused.
// "APPROVED" - Device is approved.
// "BLOCKED" - Device is blocked.
// "PENDING" - Device is pending approval.
// "UNPROVISIONED" - The device is not provisioned. Device will start
// from this state until some action is taken (i.e. a user starts using
// the device).
// "WIPING" - Data and settings on the device are being removed.
// "WIPED" - All data and settings on the device are removed.
ManagementState string `json:"managementState,omitempty"`
// Manufacturer: Output only. Device manufacturer. Example: Motorola.
Manufacturer string `json:"manufacturer,omitempty"`
// Meid: Output only. MEID number of device if CDMA device; empty
// otherwise.
Meid string `json:"meid,omitempty"`
// Model: Output only. Model name of device. Example: Pixel 3.
Model string `json:"model,omitempty"`
// Name: Output only. [Resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// Device in format: `devices/{device_id}`, where device_id is the
// unique id assigned to the Device.
Name string `json:"name,omitempty"`
// NetworkOperator: Output only. Mobile or network operator of device,
// if available.
NetworkOperator string `json:"networkOperator,omitempty"`
// OsVersion: Output only. OS version of the device. Example: Android
// 8.1.0.
OsVersion string `json:"osVersion,omitempty"`
// OtherAccounts: Output only. Domain name for Google accounts on
// device. Type for other accounts on device. On Android, will only be
// populated if |ownership_privilege| is |PROFILE_OWNER| or
// |DEVICE_OWNER|. Does not include the account signed in to the device
// policy app if that account's domain has only one account. Examples:
// "com.example", "xyz.com".
OtherAccounts []string `json:"otherAccounts,omitempty"`
// OwnerType: Output only. Whether the device is owned by the company or
// an individual
//
// Possible values:
// "DEVICE_OWNERSHIP_UNSPECIFIED" - Default value. The value is
// unused.
// "COMPANY" - Company owns the device.
// "BYOD" - Bring Your Own Device (i.e. individual owns the device)
OwnerType string `json:"ownerType,omitempty"`
// ReleaseVersion: Output only. OS release version. Example: 6.0.
ReleaseVersion string `json:"releaseVersion,omitempty"`
// SecurityPatchTime: Output only. OS security patch update time on
// device.
SecurityPatchTime string `json:"securityPatchTime,omitempty"`
// SerialNumber: Serial Number of device. Example: HT82V1A01076.
SerialNumber string `json:"serialNumber,omitempty"`
// WifiMacAddresses: WiFi MAC addresses of device.
WifiMacAddresses []string `json:"wifiMacAddresses,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "AndroidSpecificAttributes") to unconditionally include in API
// requests. By default, fields with empty values are omitted from API
// requests. However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g.
// "AndroidSpecificAttributes") to include in API requests with the JSON
// null value. By default, fields with empty values are omitted from API
// requests. However, any field with an empty value appearing in
// NullFields will be sent to the server as null. It is an error if a
// field in this list has a non-empty value. This may be used to include
// null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleAppsCloudidentityDevicesV1Device) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsCloudidentityDevicesV1Device
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleAppsCloudidentityDevicesV1DeviceUser: Represents a user's use
// of a Device in the Cloud Identity Devices API. A DeviceUser is a
// resource representing a user's use of a Device
type GoogleAppsCloudidentityDevicesV1DeviceUser struct {
// CompromisedState: Compromised State of the DeviceUser object
//
// Possible values:
// "COMPROMISED_STATE_UNSPECIFIED" - Compromised state of Device User
// account is unknown or unspecified.
// "COMPROMISED" - Device User Account is compromised.
// "NOT_COMPROMISED" - Device User Account is not compromised.
CompromisedState string `json:"compromisedState,omitempty"`
// CreateTime: When the user first signed in to the device
CreateTime string `json:"createTime,omitempty"`
// FirstSyncTime: Output only. Most recent time when user registered
// with this service.
FirstSyncTime string `json:"firstSyncTime,omitempty"`
// LanguageCode: Output only. Default locale used on device, in IETF
// BCP-47 format.
LanguageCode string `json:"languageCode,omitempty"`
// LastSyncTime: Output only. Last time when user synced with policies.
LastSyncTime string `json:"lastSyncTime,omitempty"`
// ManagementState: Output only. Management state of the user on the
// device.
//
// Possible values:
// "MANAGEMENT_STATE_UNSPECIFIED" - Default value. This value is
// unused.
// "WIPING" - This user's data and profile is being removed from the
// device.
// "WIPED" - This user's data and profile is removed from the device.
// "APPROVED" - User is approved to access data on the device.
// "BLOCKED" - User is blocked from accessing data on the device.
// "PENDING_APPROVAL" - User is awaiting approval.
// "UNENROLLED" - User is unenrolled from Advanced Windows Management,
// but the Windows account is still intact.
ManagementState string `json:"managementState,omitempty"`
// Name: Output only. [Resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// DeviceUser in format: `devices/{device_id}/deviceUsers/{user_id}`,
// where user_id is the ID of the user associated with the user session.
Name string `json:"name,omitempty"`
// PasswordState: Password state of the DeviceUser object
//
// Possible values:
// "PASSWORD_STATE_UNSPECIFIED" - Password state not set.
// "PASSWORD_SET" - Password set in object.
// "PASSWORD_NOT_SET" - Password not set in object.
PasswordState string `json:"passwordState,omitempty"`
// UserAgent: Output only. User agent on the device for this specific
// user
UserAgent string `json:"userAgent,omitempty"`
// UserEmail: Email address of the user registered on the device.
UserEmail string `json:"userEmail,omitempty"`
// ForceSendFields is a list of field names (e.g. "CompromisedState") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CompromisedState") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *GoogleAppsCloudidentityDevicesV1DeviceUser) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsCloudidentityDevicesV1DeviceUser
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleAppsCloudidentityDevicesV1WipeDeviceResponse: Response message
// for wiping all data on the device.
type GoogleAppsCloudidentityDevicesV1WipeDeviceResponse struct {
// Device: Resultant Device object for the action. Note that asset tags
// will not be returned in the device object.
Device *GoogleAppsCloudidentityDevicesV1Device `json:"device,omitempty"`
// ForceSendFields is a list of field names (e.g. "Device") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Device") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleAppsCloudidentityDevicesV1WipeDeviceResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsCloudidentityDevicesV1WipeDeviceResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleAppsCloudidentityDevicesV1WipeDeviceUserResponse: Response
// message for wiping the user's account from the device.
type GoogleAppsCloudidentityDevicesV1WipeDeviceUserResponse struct {
// DeviceUser: Resultant DeviceUser object for the action.
DeviceUser *GoogleAppsCloudidentityDevicesV1DeviceUser `json:"deviceUser,omitempty"`
// ForceSendFields is a list of field names (e.g. "DeviceUser") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DeviceUser") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleAppsCloudidentityDevicesV1WipeDeviceUserResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsCloudidentityDevicesV1WipeDeviceUserResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Group: A group within the Cloud Identity Groups API. A `Group` is a
// collection of entities, where each entity is either a user, another
// group, or a service account.
type Group struct {
// AdditionalGroupKeys: Additional entity key aliases for a Group.
AdditionalGroupKeys []*EntityKey `json:"additionalGroupKeys,omitempty"`
// CreateTime: Output only. The time when the `Group` was created.
CreateTime string `json:"createTime,omitempty"`
// Description: An extended description to help users determine the
// purpose of a `Group`. Must not be longer than 4,096 characters.
Description string `json:"description,omitempty"`
// DisplayName: The display name of the `Group`.
DisplayName string `json:"displayName,omitempty"`
// DynamicGroupMetadata: Optional. Dynamic group metadata like queries
// and status.
DynamicGroupMetadata *DynamicGroupMetadata `json:"dynamicGroupMetadata,omitempty"`
// GroupKey: Required. Immutable. The `EntityKey` of the `Group`.
GroupKey *EntityKey `json:"groupKey,omitempty"`
// Labels: Required. One or more label entries that apply to the Group.
// Currently supported labels contain a key with an empty value. Google
// Groups are the default type of group and have a label with a key of
// `cloudidentity.googleapis.com/groups.discussion_forum` and an empty
// value. Existing Google Groups can have an additional label with a key
// of `cloudidentity.googleapis.com/groups.security` and an empty value
// added to them. **This is an immutable change and the security label
// cannot be removed once added.** Dynamic groups have a label with a
// key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped
// groups for Cloud Search have a label with a key of
// `system/groups/external` and an empty value. Examples:
// {"cloudidentity.googleapis.com/groups.discussion_forum": ""} or
// {"system/groups/external": ""}.
Labels map[string]string `json:"labels,omitempty"`
// Name: Output only. The [resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// `Group`. Shall be of the form `groups/{group_id}`.
Name string `json:"name,omitempty"`
// Parent: Required. Immutable. The resource name of the entity under
// which this `Group` resides in the Cloud Identity resource hierarchy.
// Must be of the form `identitysources/{identity_source_id}` for
// external- identity-mapped groups or `customers/{customer_id}` for
// Google Groups.
Parent string `json:"parent,omitempty"`
// UpdateTime: Output only. The time when the `Group` was last updated.
UpdateTime string `json:"updateTime,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "AdditionalGroupKeys")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AdditionalGroupKeys") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Group) MarshalJSON() ([]byte, error) {
type NoMethod Group
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GroupRelation: Message representing a transitive group of a user or a
// group.
type GroupRelation struct {
// DisplayName: Display name for this group.
DisplayName string `json:"displayName,omitempty"`
// Group: Resource name for this group.
Group string `json:"group,omitempty"`
// GroupKey: Entity key has an id and a namespace. In case of discussion
// forums, the id will be an email address without a namespace.
GroupKey *EntityKey `json:"groupKey,omitempty"`
// Labels: Labels for Group resource.
Labels map[string]string `json:"labels,omitempty"`
// RelationType: The relation between the member and the transitive
// group.
//
// Possible values:
// "RELATION_TYPE_UNSPECIFIED" - The relation type is undefined or
// undetermined.
// "DIRECT" - The two entities have only a direct membership with each
// other.
// "INDIRECT" - The two entities have only an indirect membership with
// each other.
// "DIRECT_AND_INDIRECT" - The two entities have both a direct and an
// indirect membership with each other.
RelationType string `json:"relationType,omitempty"`
// Roles: Membership roles of the member for the group.
Roles []*TransitiveMembershipRole `json:"roles,omitempty"`
// ForceSendFields is a list of field names (e.g. "DisplayName") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DisplayName") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GroupRelation) MarshalJSON() ([]byte, error) {
type NoMethod GroupRelation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListClientStatesResponse: Response message that is returned in LRO
// result of ListClientStates Operation.
type ListClientStatesResponse struct {
// ClientStates: Client states meeting the list restrictions.
ClientStates []*ClientState `json:"clientStates,omitempty"`
// NextPageToken: Token to retrieve the next page of results. Empty if
// there are no more results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ForceSendFields is a list of field names (e.g. "ClientStates") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ClientStates") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListClientStatesResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListClientStatesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListDeviceUsersResponse: Response message that is returned from the
// ListDeviceUsers method.
type ListDeviceUsersResponse struct {
// DeviceUsers: Devices meeting the list restrictions.
DeviceUsers []*DeviceUser `json:"deviceUsers,omitempty"`
// NextPageToken: Token to retrieve the next page of results. Empty if
// there are no more results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "DeviceUsers") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DeviceUsers") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListDeviceUsersResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListDeviceUsersResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListDevicesResponse: Response message that is returned from the
// ListDevices method.
type ListDevicesResponse struct {
// Devices: Devices meeting the list restrictions.
Devices []*Device `json:"devices,omitempty"`
// NextPageToken: Token to retrieve the next page of results. Empty if
// there are no more results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Devices") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Devices") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListDevicesResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListDevicesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListGroupsResponse: The response message for
// GroupsService.ListGroups.
type ListGroupsResponse struct {
// Groups: The `Group`s under the specified `parent`.
Groups []*Group `json:"groups,omitempty"`
// NextPageToken: A continuation token to retrieve the next page of
// results, or empty if there are no more results available.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Groups") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Groups") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListGroupsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListGroupsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListMembershipsResponse: The response message for
// MembershipsService.ListMemberships.
type ListMembershipsResponse struct {
// Memberships: The `Membership`s under the specified `parent`.
Memberships []*Membership `json:"memberships,omitempty"`
// NextPageToken: A continuation token to retrieve the next page of
// results, or empty if there are no more results available.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Memberships") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Memberships") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListMembershipsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListMembershipsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// LookupGroupNameResponse: The response message for
// GroupsService.LookupGroupName.
type LookupGroupNameResponse struct {
// Name: Output only. The [resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// looked-up `Group`.
Name string `json:"name,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Name") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Name") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *LookupGroupNameResponse) MarshalJSON() ([]byte, error) {
type NoMethod LookupGroupNameResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// LookupMembershipNameResponse: The response message for
// MembershipsService.LookupMembershipName.
type LookupMembershipNameResponse struct {
// Name: The [resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// looked-up `Membership`. Must be of the form
// `groups/{group_id}/memberships/{membership_id}`.
Name string `json:"name,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Name") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Name") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *LookupMembershipNameResponse) MarshalJSON() ([]byte, error) {
type NoMethod LookupMembershipNameResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// LookupSelfDeviceUsersResponse: Response containing resource names of
// the DeviceUsers associated with the caller's credentials.
type LookupSelfDeviceUsersResponse struct {
// Customer: The obfuscated customer Id that may be passed back to other
// Devices API methods such as List, Get, etc.
Customer string `json:"customer,omitempty"`
// Names: [Resource
// names](https://cloud.google.com/apis/design/resource_names) of the
// DeviceUsers in the format:
// `devices/{device_id}/deviceUsers/{user_resource_id}`, where device_id
// is the unique ID assigned to a Device and user_resource_id is the
// unique user ID
Names []string `json:"names,omitempty"`
// NextPageToken: Token to retrieve the next page of results. Empty if
// there are no more results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Customer") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Customer") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *LookupSelfDeviceUsersResponse) MarshalJSON() ([]byte, error) {
type NoMethod LookupSelfDeviceUsersResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// MemberRelation: Message representing a transitive membership of a
// group.
type MemberRelation struct {
// Member: Resource name for this member if member is a GROUP, otherwise
// it is empty.
Member string `json:"member,omitempty"`
// PreferredMemberKey: Entity key has an id and a namespace. In case of
// discussion forums, the id will be an email address without a
// namespace.
PreferredMemberKey []*EntityKey `json:"preferredMemberKey,omitempty"`
// RelationType: The relation between the group and the transitive
// member.
//
// Possible values:
// "RELATION_TYPE_UNSPECIFIED" - The relation type is undefined or
// undetermined.
// "DIRECT" - The two entities have only a direct membership with each
// other.
// "INDIRECT" - The two entities have only an indirect membership with
// each other.
// "DIRECT_AND_INDIRECT" - The two entities have both a direct and an
// indirect membership with each other.
RelationType string `json:"relationType,omitempty"`
// Roles: The membership role details (i.e name of role and expiry
// time).
Roles []*TransitiveMembershipRole `json:"roles,omitempty"`
// ForceSendFields is a list of field names (e.g. "Member") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Member") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *MemberRelation) MarshalJSON() ([]byte, error) {
type NoMethod MemberRelation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Membership: A membership within the Cloud Identity Groups API. A
// `Membership` defines a relationship between a `Group` and an entity
// belonging to that `Group`, referred to as a "member".
type Membership struct {
// CreateTime: Output only. The time when the `Membership` was created.
CreateTime string `json:"createTime,omitempty"`
// MemberKey: Immutable. The `EntityKey` of the member. Either
// `member_key` or `preferred_member_key` must be set when calling
// MembershipsService.CreateMembership but not both; both shall be set
// when returned.
MemberKey *EntityKey `json:"memberKey,omitempty"`
// Name: Output only. The [resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// `Membership`. Shall be of the form
// `groups/{group_id}/memberships/{membership_id}`.
Name string `json:"name,omitempty"`
// PreferredMemberKey: Required. Immutable. The `EntityKey` of the
// member. Either `member_key` or `preferred_member_key` must be set
// when calling MembershipsService.CreateMembership but not both; both
// shall be set when returned.
PreferredMemberKey *EntityKey `json:"preferredMemberKey,omitempty"`
// Roles: The `MembershipRole`s that apply to the `Membership`. If
// unspecified, defaults to a single `MembershipRole` with `name`
// `MEMBER`. Must not contain duplicate `MembershipRole`s with the same
// `name`.
Roles []*MembershipRole `json:"roles,omitempty"`
// Type: Output only. The type of the membership.
//
// Possible values:
// "TYPE_UNSPECIFIED" - Default. Should not be used.
// "USER" - Represents user type.
// "SERVICE_ACCOUNT" - Represents service account type.
// "GROUP" - Represents group type.
// "OTHER" - Represents other type.
Type string `json:"type,omitempty"`
// UpdateTime: Output only. The time when the `Membership` was last
// updated.
UpdateTime string `json:"updateTime,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "CreateTime") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CreateTime") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Membership) MarshalJSON() ([]byte, error) {
type NoMethod Membership
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// MembershipAdjacencyList: Membership graph's path information as an
// adjacency list.
type MembershipAdjacencyList struct {
// Edges: Each edge contains information about the member that belongs
// to this group. Note: Fields returned here will help identify the
// specific Membership resource (e.g name, preferred_member_key and
// role), but may not be a comprehensive list of all fields.
Edges []*Membership `json:"edges,omitempty"`
// Group: Resource name of the group that the members belong to.
Group string `json:"group,omitempty"`
// ForceSendFields is a list of field names (e.g. "Edges") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Edges") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *MembershipAdjacencyList) MarshalJSON() ([]byte, error) {
type NoMethod MembershipAdjacencyList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// MembershipRole: A membership role within the Cloud Identity Groups
// API. A `MembershipRole` defines the privileges granted to a
// `Membership`.
type MembershipRole struct {
// ExpiryDetail: The expiry details of the `MembershipRole`. Expiry
// details are only supported for `MEMBER` `MembershipRoles`. May be set
// if `name` is `MEMBER`. Must not be set if `name` is any other value.
ExpiryDetail *ExpiryDetail `json:"expiryDetail,omitempty"`
// Name: The name of the `MembershipRole`. Must be one of `OWNER`,
// `MANAGER`, `MEMBER`.
Name string `json:"name,omitempty"`
// ForceSendFields is a list of field names (e.g. "ExpiryDetail") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ExpiryDetail") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *MembershipRole) MarshalJSON() ([]byte, error) {
type NoMethod MembershipRole
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ModifyMembershipRolesRequest: The request message for
// MembershipsService.ModifyMembershipRoles.
type ModifyMembershipRolesRequest struct {
// AddRoles: The `MembershipRole`s to be added. Adding or removing roles
// in the same request as updating roles is not supported. Must not be
// set if `update_roles_params` is set.
AddRoles []*MembershipRole `json:"addRoles,omitempty"`
// RemoveRoles: The `name`s of the `MembershipRole`s to be removed.
// Adding or removing roles in the same request as updating roles is not
// supported. It is not possible to remove the `MEMBER`
// `MembershipRole`. If you wish to delete a `Membership`, call
// MembershipsService.DeleteMembership instead. Must not contain
// `MEMBER`. Must not be set if `update_roles_params` is set.
RemoveRoles []string `json:"removeRoles,omitempty"`
// UpdateRolesParams: The `MembershipRole`s to be updated. Updating
// roles in the same request as adding or removing roles is not
// supported. Must not be set if either `add_roles` or `remove_roles` is
// set.
UpdateRolesParams []*UpdateMembershipRolesParams `json:"updateRolesParams,omitempty"`
// ForceSendFields is a list of field names (e.g. "AddRoles") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AddRoles") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ModifyMembershipRolesRequest) MarshalJSON() ([]byte, error) {
type NoMethod ModifyMembershipRolesRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ModifyMembershipRolesResponse: The response message for
// MembershipsService.ModifyMembershipRoles.
type ModifyMembershipRolesResponse struct {
// Membership: The `Membership` resource after modifying its
// `MembershipRole`s.
Membership *Membership `json:"membership,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Membership") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Membership") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ModifyMembershipRolesResponse) MarshalJSON() ([]byte, error) {
type NoMethod ModifyMembershipRolesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Operation: This resource represents a long-running operation that is
// the result of a network API call.
type Operation struct {
// Done: If the value is `false`, it means the operation is still in
// progress. If `true`, the operation is completed, and either `error`
// or `response` is available.
Done bool `json:"done,omitempty"`
// Error: The error result of the operation in case of failure or
// cancellation.
Error *Status `json:"error,omitempty"`
// Metadata: Service-specific metadata associated with the operation. It
// typically contains progress information and common metadata such as
// create time. Some services might not provide such metadata. Any
// method that returns a long-running operation should document the
// metadata type, if any.
Metadata googleapi.RawMessage `json:"metadata,omitempty"`
// Name: The server-assigned name, which is only unique within the same
// service that originally returns it. If you use the default HTTP
// mapping, the `name` should be a resource name ending with
// `operations/{unique_id}`.
Name string `json:"name,omitempty"`
// Response: The normal response of the operation in case of success. If
// the original method returns no data on success, such as `Delete`, the
// response is `google.protobuf.Empty`. If the original method is
// standard `Get`/`Create`/`Update`, the response should be the
// resource. For other methods, the response should have the type
// `XxxResponse`, where `Xxx` is the original method name. For example,
// if the original method name is `TakeSnapshot()`, the inferred
// response type is `TakeSnapshotResponse`.
Response googleapi.RawMessage `json:"response,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Done") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Done") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Operation) MarshalJSON() ([]byte, error) {
type NoMethod Operation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SearchGroupsResponse: The response message for
// GroupsService.SearchGroups.
type SearchGroupsResponse struct {
// Groups: The `Group`s that match the search query.
Groups []*Group `json:"groups,omitempty"`
// NextPageToken: A continuation token to retrieve the next page of
// results, or empty if there are no more results available.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Groups") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Groups") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *SearchGroupsResponse) MarshalJSON() ([]byte, error) {
type NoMethod SearchGroupsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SearchTransitiveGroupsResponse: The response message for
// MembershipsService.SearchTransitiveGroups.
type SearchTransitiveGroupsResponse struct {
// Memberships: List of transitive groups satisfying the query.
Memberships []*GroupRelation `json:"memberships,omitempty"`
// NextPageToken: Token to retrieve the next page of results, or empty
// if there are no more results available for listing.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Memberships") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Memberships") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *SearchTransitiveGroupsResponse) MarshalJSON() ([]byte, error) {
type NoMethod SearchTransitiveGroupsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SearchTransitiveMembershipsResponse: The response message for
// MembershipsService.SearchTransitiveMemberships.
type SearchTransitiveMembershipsResponse struct {
// Memberships: List of transitive members satisfying the query.
Memberships []*MemberRelation `json:"memberships,omitempty"`
// NextPageToken: Token to retrieve the next page of results, or empty
// if there are no more results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Memberships") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Memberships") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *SearchTransitiveMembershipsResponse) MarshalJSON() ([]byte, error) {
type NoMethod SearchTransitiveMembershipsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Status: The `Status` type defines a logical error model that is
// suitable for different programming environments, including REST APIs
// and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each
// `Status` message contains three pieces of data: error code, error
// message, and error details. You can find out more about this error
// model and how to work with it in the [API Design
// Guide](https://cloud.google.com/apis/design/errors).
type Status struct {
// Code: The status code, which should be an enum value of
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
// Details: A list of messages that carry the error details. There is a
// common set of message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
// English. Any user-facing error message should be localized and sent
// in the google.rpc.Status.details field, or localized by the client.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Status) MarshalJSON() ([]byte, error) {
type NoMethod Status
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// TransitiveMembershipRole: Message representing the role of a
// TransitiveMembership.
type TransitiveMembershipRole struct {
// Role: TransitiveMembershipRole in string format. Currently supported
// TransitiveMembershipRoles: "MEMBER", "OWNER", and "MANAGER".
Role string `json:"role,omitempty"`
// ForceSendFields is a list of field names (e.g. "Role") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Role") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *TransitiveMembershipRole) MarshalJSON() ([]byte, error) {
type NoMethod TransitiveMembershipRole
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// UpdateMembershipRolesParams: The details of an update to a
// `MembershipRole`.
type UpdateMembershipRolesParams struct {
// FieldMask: The fully-qualified names of fields to update. May only
// contain the field `expiry_detail`.
FieldMask string `json:"fieldMask,omitempty"`
// MembershipRole: The `MembershipRole`s to be updated. Only `MEMBER`
// `MembershipRoles` can currently be updated. May only contain a
// `MembershipRole` with `name` `MEMBER`.
MembershipRole *MembershipRole `json:"membershipRole,omitempty"`
// ForceSendFields is a list of field names (e.g. "FieldMask") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "FieldMask") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *UpdateMembershipRolesParams) MarshalJSON() ([]byte, error) {
type NoMethod UpdateMembershipRolesParams
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// WipeDeviceRequest: Request message for wiping all data on the device.
type WipeDeviceRequest struct {
// Customer: Required. [Resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// customer. If you're using this API for your own organization, use
// `customers/my_customer` If you're using this API to manage another
// organization, use `customers/{customer_id}`, where customer_id is the
// customer to whom the device belongs.
Customer string `json:"customer,omitempty"`
// ForceSendFields is a list of field names (e.g. "Customer") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Customer") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *WipeDeviceRequest) MarshalJSON() ([]byte, error) {
type NoMethod WipeDeviceRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// WipeDeviceResponse: Response message for wiping all data on the
// device.
type WipeDeviceResponse struct {
// Device: Resultant Device object for the action. Note that asset tags
// will not be returned in the device object.
Device *Device `json:"device,omitempty"`
// ForceSendFields is a list of field names (e.g. "Device") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Device") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *WipeDeviceResponse) MarshalJSON() ([]byte, error) {
type NoMethod WipeDeviceResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// WipeDeviceUserRequest: Request message for starting an account wipe
// on device.
type WipeDeviceUserRequest struct {
// Customer: Required. [Resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// customer. If you're using this API for your own organization, use
// `customers/my_customer` If you're using this API to manage another
// organization, use `customers/{customer_id}`, where customer_id is the
// customer to whom the device belongs.
Customer string `json:"customer,omitempty"`
// ForceSendFields is a list of field names (e.g. "Customer") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Customer") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *WipeDeviceUserRequest) MarshalJSON() ([]byte, error) {
type NoMethod WipeDeviceUserRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// WipeDeviceUserResponse: Response message for wiping the user's
// account from the device.
type WipeDeviceUserResponse struct {
// DeviceUser: Resultant DeviceUser object for the action.
DeviceUser *DeviceUser `json:"deviceUser,omitempty"`
// ForceSendFields is a list of field names (e.g. "DeviceUser") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DeviceUser") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *WipeDeviceUserResponse) MarshalJSON() ([]byte, error) {
type NoMethod WipeDeviceUserResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// method id "cloudidentity.devices.cancelWipe":
type DevicesCancelWipeCall struct {
s *Service
name string
cancelwipedevicerequest *CancelWipeDeviceRequest
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// CancelWipe: Cancels an unfinished device wipe. This operation can be
// used to cancel device wipe in the gap between the wipe operation
// returning success and the device being wiped.
func (r *DevicesService) CancelWipe(name string, cancelwipedevicerequest *CancelWipeDeviceRequest) *DevicesCancelWipeCall {
c := &DevicesCancelWipeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.name = name
c.cancelwipedevicerequest = cancelwipedevicerequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func (c *DevicesCancelWipeCall) Fields(s ...googleapi.Field) *DevicesCancelWipeCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func (c *DevicesCancelWipeCall) Context(ctx context.Context) *DevicesCancelWipeCall {
c.ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func (c *DevicesCancelWipeCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *DevicesCancelWipeCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := make(http.Header)
reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200926")
for k, v := range c.header_ {
reqHeaders[k] = v
}
reqHeaders.Set("User-Agent", c.s.userAgent())
var body io.Reader = nil
body, err := googleapi.WithoutDataWrapper.JSONReader(c.cancelwipedevicerequest)
if err != nil {
return nil, err
}
reqHeaders.Set("Content-Type", "application/json")
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:cancelWipe")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("POST", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"name": c.name,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "cloudidentity.devices.cancelWipe" call.
// Exactly one of *Operation or error will be non-nil. Any non-2xx
// status code is an error. Response headers are in either
// *Operation.ServerResponse.Header or (if a response was returned at
// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
// to check whether the returned error was because
// http.StatusNotModified was returned.
func (c *DevicesCancelWipeCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, &googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
}
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, err
}
ret := &Operation{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
// {
// "description": "Cancels an unfinished device wipe. This operation can be used to cancel device wipe in the gap between the wipe operation returning success and the device being wiped.",
// "flatPath": "v1beta1/devices/{devicesId}:cancelWipe",
// "httpMethod": "POST",
// "id": "cloudidentity.devices.cancelWipe",
// "parameterOrder": [
// "name"
// ],
// "parameters": {
// "name": {
// "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device_id}`, where device_id is the unique ID assigned to the Device, and device_user_id is the unique ID assigned to the User.",
// "location": "path",
// "pattern": "^devices/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1beta1/{+name}:cancelWipe",
// "request": {
// "$ref": "CancelWipeDeviceRequest"
// },
// "response": {
// "$ref": "Operation"
// }
// }
}
// method id "cloudidentity.devices.create":
type DevicesCreateCall struct {
s *Service
createdevicerequest *CreateDeviceRequest
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Create: Creates a device. Only company-owned device may be created.
func (r *DevicesService) Create(createdevicerequest *CreateDeviceRequest) *DevicesCreateCall {
c := &DevicesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.createdevicerequest = createdevicerequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func (c *DevicesCreateCall) Fields(s ...googleapi.Field) *DevicesCreateCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func (c *DevicesCreateCall) Context(ctx context.Context) *DevicesCreateCall {
c.ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func (c *DevicesCreateCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *DevicesCreateCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := make(http.Header)
reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200926")
for k, v := range c.header_ {
reqHeaders[k] = v
}
reqHeaders.Set("User-Agent", c.s.userAgent())
var body io.Reader = nil
body, err := googleapi.WithoutDataWrapper.JSONReader(c.createdevicerequest)
if err != nil {
return nil, err
}
reqHeaders.Set("Content-Type", "application/json")
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/devices")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("POST", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "cloudidentity.devices.create" call.
// Exactly one of *Operation or error will be non-nil. Any non-2xx
// status code is an error. Response headers are in either
// *Operation.ServerResponse.Header or (if a response was returned at
// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
// to check whether the returned error was because
// http.StatusNotModified was returned.
func (c *DevicesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, &googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
}
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, err
}
ret := &Operation{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
// {
// "description": "Creates a device. Only company-owned device may be created.",
// "flatPath": "v1beta1/devices",
// "httpMethod": "POST",
// "id": "cloudidentity.devices.create",
// "parameterOrder": [],
// "parameters": {},
// "path": "v1beta1/devices",
// "request": {
// "$ref": "CreateDeviceRequest"
// },
// "response": {
// "$ref": "Operation"
// }
// }
}
// method id "cloudidentity.devices.delete":
type DevicesDeleteCall struct {
s *Service
name string
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Delete: Deletes the specified device.
func (r *DevicesService) Delete(name string) *DevicesDeleteCall {
c := &DevicesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.name = name
return c
}
// Customer sets the optional parameter "customer": Required. [Resource
// name](https://cloud.google.com/apis/design/resource_names) of the
// customer. If you're using this API for your own organization, use
// `customers/my_customer` If you're using this API to manage another
// organization, use `customers/{customer_id}`, where customer_id is the
// customer to whom the device belongs.
func (c *DevicesDeleteCall) Customer(customer string) *DevicesDeleteCall {
c.urlParams_.Set("customer", customer)
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func (c *DevicesDeleteCall) Fields(s ...googleapi.Field) *DevicesDeleteCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func (c *DevicesDeleteCall) Context(ctx context.Context) *DevicesDeleteCall {
c.ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func (c *DevicesDeleteCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *DevicesDeleteCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := make(http.Header)
reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200926")
for k, v := range c.header_ {
reqHeaders[k] = v
}
reqHeaders.Set("User-Agent", c.s.userAgent())
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("DELETE", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"name": c.name,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "cloudidentity.devices.delete" call.
// Exactly one of *Operation or error will be non-nil. Any non-2xx
// status code is an error. Response headers are in either
// *Operation.ServerResponse.Header or (if a response was returned at
// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
// to check whether the returned error was because
// http.StatusNotModified was returned.
func (c *DevicesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, &googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
}
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, err
}
ret := &Operation{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
// {
// "description": "Deletes the specified device.",
// "flatPath": "v1beta1/devices/{devicesId}",
// "httpMethod": "DELETE",
// "id": "cloudidentity.devices.delete",
// "parameterOrder": [
// "name"
// ],
// "parameters": {
// "customer": {
// "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If you're using this API to manage another organization, use `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
// "location": "query",
// "type": "string"
// },
// "name": {
// "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device_id}`, where device_id is the unique ID assigned to the Device.",
// "location": "path",
// "pattern": "^devices/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1beta1/{+name}",
// "response": {
// "$ref": "Operation"
// }
// }
}
// method id "cloudidentity.devices.get":
type DevicesGetCall struct {
s *Service
name string
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// Get: Retrieves the specified device.
func (r *DevicesService) Get(name string) *DevicesGetCall {
c := &DevicesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.name = name
return c
}
// Customer s