742 lines
		
	
	
		
			28 KiB
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			742 lines
		
	
	
		
			28 KiB
		
	
	
	
		
			Ruby
		
	
	
	
| # Copyright 2015 Google Inc.
 | |
| #
 | |
| # Licensed under the Apache License, Version 2.0 (the "License");
 | |
| # you may not use this file except in compliance with the License.
 | |
| # You may obtain a copy of the License at
 | |
| #
 | |
| #      http://www.apache.org/licenses/LICENSE-2.0
 | |
| #
 | |
| # Unless required by applicable law or agreed to in writing, software
 | |
| # distributed under the License is distributed on an "AS IS" BASIS,
 | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | |
| # See the License for the specific language governing permissions and
 | |
| # limitations under the License.
 | |
| 
 | |
| require 'date'
 | |
| require 'google/apis/core/base_service'
 | |
| require 'google/apis/core/json_representation'
 | |
| require 'google/apis/core/hashable'
 | |
| require 'google/apis/errors'
 | |
| 
 | |
| module Google
 | |
|   module Apis
 | |
|     module AdminReportsV1
 | |
|       
 | |
|       # JSON template for a collection of activities.
 | |
|       class Activities
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # ETag of the resource.
 | |
|         # Corresponds to the JSON property `etag`
 | |
|         # @return [String]
 | |
|         attr_accessor :etag
 | |
|       
 | |
|         # Each activity record in the response.
 | |
|         # Corresponds to the JSON property `items`
 | |
|         # @return [Array<Google::Apis::AdminReportsV1::Activity>]
 | |
|         attr_accessor :items
 | |
|       
 | |
|         # The type of API resource. For an activity report, the value is `reports#
 | |
|         # activities`.
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # Token for retrieving the follow-on next page of the report. The `nextPageToken`
 | |
|         # value is used in the request's `pageToken` query string.
 | |
|         # Corresponds to the JSON property `nextPageToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :next_page_token
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @etag = args[:etag] if args.key?(:etag)
 | |
|           @items = args[:items] if args.key?(:items)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # JSON template for the activity resource.
 | |
|       class Activity
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # User doing the action.
 | |
|         # Corresponds to the JSON property `actor`
 | |
|         # @return [Google::Apis::AdminReportsV1::Activity::Actor]
 | |
|         attr_accessor :actor
 | |
|       
 | |
|         # ETag of the entry.
 | |
|         # Corresponds to the JSON property `etag`
 | |
|         # @return [String]
 | |
|         attr_accessor :etag
 | |
|       
 | |
|         # Activity events in the report.
 | |
|         # Corresponds to the JSON property `events`
 | |
|         # @return [Array<Google::Apis::AdminReportsV1::Activity::Event>]
 | |
|         attr_accessor :events
 | |
|       
 | |
|         # Unique identifier for each activity record.
 | |
|         # Corresponds to the JSON property `id`
 | |
|         # @return [Google::Apis::AdminReportsV1::Activity::Id]
 | |
|         attr_accessor :id
 | |
|       
 | |
|         # IP address of the user doing the action. This is the Internet Protocol (IP)
 | |
|         # address of the user when logging into G Suite which may or may not reflect the
 | |
|         # user's physical location. For example, the IP address can be the user's proxy
 | |
|         # server's address or a virtual private network (VPN) address. The API supports
 | |
|         # IPv4 and IPv6.
 | |
|         # Corresponds to the JSON property `ipAddress`
 | |
|         # @return [String]
 | |
|         attr_accessor :ip_address
 | |
|       
 | |
|         # The type of API resource. For an activity report, the value is `audit#activity`
 | |
|         # .
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # This is the domain that is affected by the report's event. For example domain
 | |
|         # of Admin console or the Drive application's document owner.
 | |
|         # Corresponds to the JSON property `ownerDomain`
 | |
|         # @return [String]
 | |
|         attr_accessor :owner_domain
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @actor = args[:actor] if args.key?(:actor)
 | |
|           @etag = args[:etag] if args.key?(:etag)
 | |
|           @events = args[:events] if args.key?(:events)
 | |
|           @id = args[:id] if args.key?(:id)
 | |
|           @ip_address = args[:ip_address] if args.key?(:ip_address)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @owner_domain = args[:owner_domain] if args.key?(:owner_domain)
 | |
|         end
 | |
|         
 | |
|         # User doing the action.
 | |
|         class Actor
 | |
|           include Google::Apis::Core::Hashable
 | |
|         
 | |
|           # The type of actor.
 | |
|           # Corresponds to the JSON property `callerType`
 | |
|           # @return [String]
 | |
|           attr_accessor :caller_type
 | |
|         
 | |
|           # The primary email address of the actor. May be absent if there is no email
 | |
|           # address associated with the actor.
 | |
|           # Corresponds to the JSON property `email`
 | |
|           # @return [String]
 | |
|           attr_accessor :email
 | |
|         
 | |
|           # Only present when `callerType` is `KEY`. Can be the `consumer_key` of the
 | |
|           # requestor for OAuth 2LO API requests or an identifier for robot accounts.
 | |
|           # Corresponds to the JSON property `key`
 | |
|           # @return [String]
 | |
|           attr_accessor :key
 | |
|         
 | |
|           # The unique G Suite profile ID of the actor. May be absent if the actor is not
 | |
|           # a G Suite user.
 | |
|           # Corresponds to the JSON property `profileId`
 | |
|           # @return [String]
 | |
|           attr_accessor :profile_id
 | |
|         
 | |
|           def initialize(**args)
 | |
|              update!(**args)
 | |
|           end
 | |
|         
 | |
|           # Update properties of this object
 | |
|           def update!(**args)
 | |
|             @caller_type = args[:caller_type] if args.key?(:caller_type)
 | |
|             @email = args[:email] if args.key?(:email)
 | |
|             @key = args[:key] if args.key?(:key)
 | |
|             @profile_id = args[:profile_id] if args.key?(:profile_id)
 | |
|           end
 | |
|         end
 | |
|         
 | |
|         # 
 | |
|         class Event
 | |
|           include Google::Apis::Core::Hashable
 | |
|         
 | |
|           # Name of the event. This is the specific name of the activity reported by the
 | |
|           # API. And each `eventName` is related to a specific G Suite service or feature
 | |
|           # which the API organizes into types of events. For `eventName` request
 | |
|           # parameters in general: - If no `eventName` is given, the report returns all
 | |
|           # possible instances of an `eventName`. - When you request an `eventName`, the
 | |
|           # API's response returns all activities which contain that `eventName`. It is
 | |
|           # possible that the returned activities will have other `eventName` properties
 | |
|           # in addition to the one requested. For more information about `eventName`
 | |
|           # properties, see the list of event names for various applications above in `
 | |
|           # applicationName`.
 | |
|           # Corresponds to the JSON property `name`
 | |
|           # @return [String]
 | |
|           attr_accessor :name
 | |
|         
 | |
|           # Parameter value pairs for various applications. For more information about `
 | |
|           # eventName` parameters, see the list of event names for various applications
 | |
|           # above in `applicationName`.
 | |
|           # Corresponds to the JSON property `parameters`
 | |
|           # @return [Array<Google::Apis::AdminReportsV1::Activity::Event::Parameter>]
 | |
|           attr_accessor :parameters
 | |
|         
 | |
|           # Type of event. The G Suite service or feature that an administrator changes is
 | |
|           # identified in the `type` property which identifies an event using the `
 | |
|           # eventName` property. For a full list of the API's `type` categories, see the
 | |
|           # list of event names for various applications above in `applicationName`.
 | |
|           # Corresponds to the JSON property `type`
 | |
|           # @return [String]
 | |
|           attr_accessor :type
 | |
|         
 | |
|           def initialize(**args)
 | |
|              update!(**args)
 | |
|           end
 | |
|         
 | |
|           # Update properties of this object
 | |
|           def update!(**args)
 | |
|             @name = args[:name] if args.key?(:name)
 | |
|             @parameters = args[:parameters] if args.key?(:parameters)
 | |
|             @type = args[:type] if args.key?(:type)
 | |
|           end
 | |
|           
 | |
|           # 
 | |
|           class Parameter
 | |
|             include Google::Apis::Core::Hashable
 | |
|           
 | |
|             # Boolean value of the parameter.
 | |
|             # Corresponds to the JSON property `boolValue`
 | |
|             # @return [Boolean]
 | |
|             attr_accessor :bool_value
 | |
|             alias_method :bool_value?, :bool_value
 | |
|           
 | |
|             # Integer value of the parameter.
 | |
|             # Corresponds to the JSON property `intValue`
 | |
|             # @return [Fixnum]
 | |
|             attr_accessor :int_value
 | |
|           
 | |
|             # Nested parameter value pairs associated with this parameter. Complex value
 | |
|             # type for a parameter are returned as a list of parameter values. For example,
 | |
|             # the address parameter may have a value as `[`parameter: [`name: city, value:
 | |
|             # abc`]`]`
 | |
|             # Corresponds to the JSON property `messageValue`
 | |
|             # @return [Google::Apis::AdminReportsV1::Activity::Event::Parameter::MessageValue]
 | |
|             attr_accessor :message_value
 | |
|           
 | |
|             # Integer values of the parameter.
 | |
|             # Corresponds to the JSON property `multiIntValue`
 | |
|             # @return [Array<Fixnum>]
 | |
|             attr_accessor :multi_int_value
 | |
|           
 | |
|             # List of `messageValue` objects.
 | |
|             # Corresponds to the JSON property `multiMessageValue`
 | |
|             # @return [Array<Google::Apis::AdminReportsV1::Activity::Event::Parameter::MultiMessageValue>]
 | |
|             attr_accessor :multi_message_value
 | |
|           
 | |
|             # String values of the parameter.
 | |
|             # Corresponds to the JSON property `multiValue`
 | |
|             # @return [Array<String>]
 | |
|             attr_accessor :multi_value
 | |
|           
 | |
|             # The name of the parameter.
 | |
|             # Corresponds to the JSON property `name`
 | |
|             # @return [String]
 | |
|             attr_accessor :name
 | |
|           
 | |
|             # String value of the parameter.
 | |
|             # Corresponds to the JSON property `value`
 | |
|             # @return [String]
 | |
|             attr_accessor :value
 | |
|           
 | |
|             def initialize(**args)
 | |
|                update!(**args)
 | |
|             end
 | |
|           
 | |
|             # Update properties of this object
 | |
|             def update!(**args)
 | |
|               @bool_value = args[:bool_value] if args.key?(:bool_value)
 | |
|               @int_value = args[:int_value] if args.key?(:int_value)
 | |
|               @message_value = args[:message_value] if args.key?(:message_value)
 | |
|               @multi_int_value = args[:multi_int_value] if args.key?(:multi_int_value)
 | |
|               @multi_message_value = args[:multi_message_value] if args.key?(:multi_message_value)
 | |
|               @multi_value = args[:multi_value] if args.key?(:multi_value)
 | |
|               @name = args[:name] if args.key?(:name)
 | |
|               @value = args[:value] if args.key?(:value)
 | |
|             end
 | |
|             
 | |
|             # Nested parameter value pairs associated with this parameter. Complex value
 | |
|             # type for a parameter are returned as a list of parameter values. For example,
 | |
|             # the address parameter may have a value as `[`parameter: [`name: city, value:
 | |
|             # abc`]`]`
 | |
|             class MessageValue
 | |
|               include Google::Apis::Core::Hashable
 | |
|             
 | |
|               # Parameter values
 | |
|               # Corresponds to the JSON property `parameter`
 | |
|               # @return [Array<Google::Apis::AdminReportsV1::NestedParameter>]
 | |
|               attr_accessor :parameter
 | |
|             
 | |
|               def initialize(**args)
 | |
|                  update!(**args)
 | |
|               end
 | |
|             
 | |
|               # Update properties of this object
 | |
|               def update!(**args)
 | |
|                 @parameter = args[:parameter] if args.key?(:parameter)
 | |
|               end
 | |
|             end
 | |
|             
 | |
|             # 
 | |
|             class MultiMessageValue
 | |
|               include Google::Apis::Core::Hashable
 | |
|             
 | |
|               # Parameter values
 | |
|               # Corresponds to the JSON property `parameter`
 | |
|               # @return [Array<Google::Apis::AdminReportsV1::NestedParameter>]
 | |
|               attr_accessor :parameter
 | |
|             
 | |
|               def initialize(**args)
 | |
|                  update!(**args)
 | |
|               end
 | |
|             
 | |
|               # Update properties of this object
 | |
|               def update!(**args)
 | |
|                 @parameter = args[:parameter] if args.key?(:parameter)
 | |
|               end
 | |
|             end
 | |
|           end
 | |
|         end
 | |
|         
 | |
|         # Unique identifier for each activity record.
 | |
|         class Id
 | |
|           include Google::Apis::Core::Hashable
 | |
|         
 | |
|           # Application name to which the event belongs. For possible values see the list
 | |
|           # of applications above in `applicationName`.
 | |
|           # Corresponds to the JSON property `applicationName`
 | |
|           # @return [String]
 | |
|           attr_accessor :application_name
 | |
|         
 | |
|           # The unique identifier for a G suite account.
 | |
|           # Corresponds to the JSON property `customerId`
 | |
|           # @return [String]
 | |
|           attr_accessor :customer_id
 | |
|         
 | |
|           # Time of occurrence of the activity. This is in UNIX epoch time in seconds.
 | |
|           # Corresponds to the JSON property `time`
 | |
|           # @return [DateTime]
 | |
|           attr_accessor :time
 | |
|         
 | |
|           # Unique qualifier if multiple events have the same time.
 | |
|           # Corresponds to the JSON property `uniqueQualifier`
 | |
|           # @return [Fixnum]
 | |
|           attr_accessor :unique_qualifier
 | |
|         
 | |
|           def initialize(**args)
 | |
|              update!(**args)
 | |
|           end
 | |
|         
 | |
|           # Update properties of this object
 | |
|           def update!(**args)
 | |
|             @application_name = args[:application_name] if args.key?(:application_name)
 | |
|             @customer_id = args[:customer_id] if args.key?(:customer_id)
 | |
|             @time = args[:time] if args.key?(:time)
 | |
|             @unique_qualifier = args[:unique_qualifier] if args.key?(:unique_qualifier)
 | |
|           end
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A notification channel used to watch for resource changes.
 | |
|       class Channel
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The address where notifications are delivered for this channel.
 | |
|         # Corresponds to the JSON property `address`
 | |
|         # @return [String]
 | |
|         attr_accessor :address
 | |
|       
 | |
|         # Date and time of notification channel expiration, expressed as a Unix
 | |
|         # timestamp, in milliseconds. Optional.
 | |
|         # Corresponds to the JSON property `expiration`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :expiration
 | |
|       
 | |
|         # A UUID or similar unique string that identifies this channel.
 | |
|         # Corresponds to the JSON property `id`
 | |
|         # @return [String]
 | |
|         attr_accessor :id
 | |
|       
 | |
|         # Identifies this as a notification channel used to watch for changes to a
 | |
|         # resource, which is "`api#channel`".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # Additional parameters controlling delivery channel behavior. Optional.
 | |
|         # Corresponds to the JSON property `params`
 | |
|         # @return [Hash<String,String>]
 | |
|         attr_accessor :params
 | |
|       
 | |
|         # A Boolean value to indicate whether payload is wanted. Optional.
 | |
|         # Corresponds to the JSON property `payload`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :payload
 | |
|         alias_method :payload?, :payload
 | |
|       
 | |
|         # An opaque ID that identifies the resource being watched on this channel.
 | |
|         # Stable across different API versions.
 | |
|         # Corresponds to the JSON property `resourceId`
 | |
|         # @return [String]
 | |
|         attr_accessor :resource_id
 | |
|       
 | |
|         # A version-specific identifier for the watched resource.
 | |
|         # Corresponds to the JSON property `resourceUri`
 | |
|         # @return [String]
 | |
|         attr_accessor :resource_uri
 | |
|       
 | |
|         # An arbitrary string delivered to the target address with each notification
 | |
|         # delivered over this channel. Optional.
 | |
|         # Corresponds to the JSON property `token`
 | |
|         # @return [String]
 | |
|         attr_accessor :token
 | |
|       
 | |
|         # The type of delivery mechanism used for this channel. The value should be set
 | |
|         # to `"web_hook"`.
 | |
|         # Corresponds to the JSON property `type`
 | |
|         # @return [String]
 | |
|         attr_accessor :type
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @address = args[:address] if args.key?(:address)
 | |
|           @expiration = args[:expiration] if args.key?(:expiration)
 | |
|           @id = args[:id] if args.key?(:id)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @params = args[:params] if args.key?(:params)
 | |
|           @payload = args[:payload] if args.key?(:payload)
 | |
|           @resource_id = args[:resource_id] if args.key?(:resource_id)
 | |
|           @resource_uri = args[:resource_uri] if args.key?(:resource_uri)
 | |
|           @token = args[:token] if args.key?(:token)
 | |
|           @type = args[:type] if args.key?(:type)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # JSON template for a parameter used in various reports.
 | |
|       class NestedParameter
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Boolean value of the parameter.
 | |
|         # Corresponds to the JSON property `boolValue`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :bool_value
 | |
|         alias_method :bool_value?, :bool_value
 | |
|       
 | |
|         # Integer value of the parameter.
 | |
|         # Corresponds to the JSON property `intValue`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :int_value
 | |
|       
 | |
|         # Multiple boolean values of the parameter.
 | |
|         # Corresponds to the JSON property `multiBoolValue`
 | |
|         # @return [Array<Boolean>]
 | |
|         attr_accessor :multi_bool_value
 | |
|       
 | |
|         # Multiple integer values of the parameter.
 | |
|         # Corresponds to the JSON property `multiIntValue`
 | |
|         # @return [Array<Fixnum>]
 | |
|         attr_accessor :multi_int_value
 | |
|       
 | |
|         # Multiple string values of the parameter.
 | |
|         # Corresponds to the JSON property `multiValue`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :multi_value
 | |
|       
 | |
|         # The name of the parameter.
 | |
|         # Corresponds to the JSON property `name`
 | |
|         # @return [String]
 | |
|         attr_accessor :name
 | |
|       
 | |
|         # String value of the parameter.
 | |
|         # Corresponds to the JSON property `value`
 | |
|         # @return [String]
 | |
|         attr_accessor :value
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @bool_value = args[:bool_value] if args.key?(:bool_value)
 | |
|           @int_value = args[:int_value] if args.key?(:int_value)
 | |
|           @multi_bool_value = args[:multi_bool_value] if args.key?(:multi_bool_value)
 | |
|           @multi_int_value = args[:multi_int_value] if args.key?(:multi_int_value)
 | |
|           @multi_value = args[:multi_value] if args.key?(:multi_value)
 | |
|           @name = args[:name] if args.key?(:name)
 | |
|           @value = args[:value] if args.key?(:value)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # JSON template for a usage report.
 | |
|       class UsageReport
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Output only. The date of the report request.
 | |
|         # Corresponds to the JSON property `date`
 | |
|         # @return [String]
 | |
|         attr_accessor :date
 | |
|       
 | |
|         # Output only. Information about the type of the item.
 | |
|         # Corresponds to the JSON property `entity`
 | |
|         # @return [Google::Apis::AdminReportsV1::UsageReport::Entity]
 | |
|         attr_accessor :entity
 | |
|       
 | |
|         # ETag of the resource.
 | |
|         # Corresponds to the JSON property `etag`
 | |
|         # @return [String]
 | |
|         attr_accessor :etag
 | |
|       
 | |
|         # The type of API resource. For a usage report, the value is `admin#reports#
 | |
|         # usageReport`.
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # Output only. Parameter value pairs for various applications. For the Entity
 | |
|         # Usage Report parameters and values, see [the Entity Usage parameters reference]
 | |
|         # (/admin-sdk/reports/v1/reference/usage-ref-appendix-a/entities).
 | |
|         # Corresponds to the JSON property `parameters`
 | |
|         # @return [Array<Google::Apis::AdminReportsV1::UsageReport::Parameter>]
 | |
|         attr_accessor :parameters
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @date = args[:date] if args.key?(:date)
 | |
|           @entity = args[:entity] if args.key?(:entity)
 | |
|           @etag = args[:etag] if args.key?(:etag)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @parameters = args[:parameters] if args.key?(:parameters)
 | |
|         end
 | |
|         
 | |
|         # Output only. Information about the type of the item.
 | |
|         class Entity
 | |
|           include Google::Apis::Core::Hashable
 | |
|         
 | |
|           # Output only. The unique identifier of the customer's account.
 | |
|           # Corresponds to the JSON property `customerId`
 | |
|           # @return [String]
 | |
|           attr_accessor :customer_id
 | |
|         
 | |
|           # Output only. Object key. Only relevant if entity.type = "OBJECT" Note:
 | |
|           # external-facing name of report is "Entities" rather than "Objects".
 | |
|           # Corresponds to the JSON property `entityId`
 | |
|           # @return [String]
 | |
|           attr_accessor :entity_id
 | |
|         
 | |
|           # Output only. The user's immutable G Suite profile identifier.
 | |
|           # Corresponds to the JSON property `profileId`
 | |
|           # @return [String]
 | |
|           attr_accessor :profile_id
 | |
|         
 | |
|           # Output only. The type of item. The value is `user`.
 | |
|           # Corresponds to the JSON property `type`
 | |
|           # @return [String]
 | |
|           attr_accessor :type
 | |
|         
 | |
|           # Output only. The user's email address. Only relevant if entity.type = "USER"
 | |
|           # Corresponds to the JSON property `userEmail`
 | |
|           # @return [String]
 | |
|           attr_accessor :user_email
 | |
|         
 | |
|           def initialize(**args)
 | |
|              update!(**args)
 | |
|           end
 | |
|         
 | |
|           # Update properties of this object
 | |
|           def update!(**args)
 | |
|             @customer_id = args[:customer_id] if args.key?(:customer_id)
 | |
|             @entity_id = args[:entity_id] if args.key?(:entity_id)
 | |
|             @profile_id = args[:profile_id] if args.key?(:profile_id)
 | |
|             @type = args[:type] if args.key?(:type)
 | |
|             @user_email = args[:user_email] if args.key?(:user_email)
 | |
|           end
 | |
|         end
 | |
|         
 | |
|         # 
 | |
|         class Parameter
 | |
|           include Google::Apis::Core::Hashable
 | |
|         
 | |
|           # Output only. Boolean value of the parameter.
 | |
|           # Corresponds to the JSON property `boolValue`
 | |
|           # @return [Boolean]
 | |
|           attr_accessor :bool_value
 | |
|           alias_method :bool_value?, :bool_value
 | |
|         
 | |
|           # The RFC 3339 formatted value of the parameter, for example 2010-10-28T10:26:35.
 | |
|           # 000Z.
 | |
|           # Corresponds to the JSON property `datetimeValue`
 | |
|           # @return [DateTime]
 | |
|           attr_accessor :datetime_value
 | |
|         
 | |
|           # Output only. Integer value of the parameter.
 | |
|           # Corresponds to the JSON property `intValue`
 | |
|           # @return [Fixnum]
 | |
|           attr_accessor :int_value
 | |
|         
 | |
|           # Output only. Nested message value of the parameter.
 | |
|           # Corresponds to the JSON property `msgValue`
 | |
|           # @return [Array<Hash<String,Object>>]
 | |
|           attr_accessor :msg_value
 | |
|         
 | |
|           # The name of the parameter. For the User Usage Report parameter names, see the
 | |
|           # User Usage parameters reference.
 | |
|           # Corresponds to the JSON property `name`
 | |
|           # @return [String]
 | |
|           attr_accessor :name
 | |
|         
 | |
|           # Output only. String value of the parameter.
 | |
|           # Corresponds to the JSON property `stringValue`
 | |
|           # @return [String]
 | |
|           attr_accessor :string_value
 | |
|         
 | |
|           def initialize(**args)
 | |
|              update!(**args)
 | |
|           end
 | |
|         
 | |
|           # Update properties of this object
 | |
|           def update!(**args)
 | |
|             @bool_value = args[:bool_value] if args.key?(:bool_value)
 | |
|             @datetime_value = args[:datetime_value] if args.key?(:datetime_value)
 | |
|             @int_value = args[:int_value] if args.key?(:int_value)
 | |
|             @msg_value = args[:msg_value] if args.key?(:msg_value)
 | |
|             @name = args[:name] if args.key?(:name)
 | |
|             @string_value = args[:string_value] if args.key?(:string_value)
 | |
|           end
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # 
 | |
|       class UsageReports
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # ETag of the resource.
 | |
|         # Corresponds to the JSON property `etag`
 | |
|         # @return [String]
 | |
|         attr_accessor :etag
 | |
|       
 | |
|         # The type of API resource. For a usage report, the value is `admin#reports#
 | |
|         # usageReports`.
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # Token to specify next page. A report with multiple pages has a `nextPageToken`
 | |
|         # property in the response. For your follow-on requests getting all of the
 | |
|         # report's pages, enter the `nextPageToken` value in the `pageToken` query
 | |
|         # string.
 | |
|         # Corresponds to the JSON property `nextPageToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :next_page_token
 | |
|       
 | |
|         # Various application parameter records.
 | |
|         # Corresponds to the JSON property `usageReports`
 | |
|         # @return [Array<Google::Apis::AdminReportsV1::UsageReport>]
 | |
|         attr_accessor :usage_reports
 | |
|       
 | |
|         # Warnings, if any.
 | |
|         # Corresponds to the JSON property `warnings`
 | |
|         # @return [Array<Google::Apis::AdminReportsV1::UsageReports::Warning>]
 | |
|         attr_accessor :warnings
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @etag = args[:etag] if args.key?(:etag)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
 | |
|           @usage_reports = args[:usage_reports] if args.key?(:usage_reports)
 | |
|           @warnings = args[:warnings] if args.key?(:warnings)
 | |
|         end
 | |
|         
 | |
|         # 
 | |
|         class Warning
 | |
|           include Google::Apis::Core::Hashable
 | |
|         
 | |
|           # Machine readable code or warning type. The warning code value is `200`.
 | |
|           # Corresponds to the JSON property `code`
 | |
|           # @return [String]
 | |
|           attr_accessor :code
 | |
|         
 | |
|           # Key-value pairs to give detailed information on the warning.
 | |
|           # Corresponds to the JSON property `data`
 | |
|           # @return [Array<Google::Apis::AdminReportsV1::UsageReports::Warning::Datum>]
 | |
|           attr_accessor :data
 | |
|         
 | |
|           # The human readable messages for a warning are: - Data is not available warning
 | |
|           # - Sorry, data for date yyyy-mm-dd for application "`application name`" is not
 | |
|           # available. - Partial data is available warning - Data for date yyyy-mm-dd for
 | |
|           # application "`application name`" is not available right now, please try again
 | |
|           # after a few hours.
 | |
|           # Corresponds to the JSON property `message`
 | |
|           # @return [String]
 | |
|           attr_accessor :message
 | |
|         
 | |
|           def initialize(**args)
 | |
|              update!(**args)
 | |
|           end
 | |
|         
 | |
|           # Update properties of this object
 | |
|           def update!(**args)
 | |
|             @code = args[:code] if args.key?(:code)
 | |
|             @data = args[:data] if args.key?(:data)
 | |
|             @message = args[:message] if args.key?(:message)
 | |
|           end
 | |
|           
 | |
|           # 
 | |
|           class Datum
 | |
|             include Google::Apis::Core::Hashable
 | |
|           
 | |
|             # Key associated with a key-value pair to give detailed information on the
 | |
|             # warning.
 | |
|             # Corresponds to the JSON property `key`
 | |
|             # @return [String]
 | |
|             attr_accessor :key
 | |
|           
 | |
|             # Value associated with a key-value pair to give detailed information on the
 | |
|             # warning.
 | |
|             # Corresponds to the JSON property `value`
 | |
|             # @return [String]
 | |
|             attr_accessor :value
 | |
|           
 | |
|             def initialize(**args)
 | |
|                update!(**args)
 | |
|             end
 | |
|           
 | |
|             # Update properties of this object
 | |
|             def update!(**args)
 | |
|               @key = args[:key] if args.key?(:key)
 | |
|               @value = args[:value] if args.key?(:value)
 | |
|             end
 | |
|           end
 | |
|         end
 | |
|       end
 | |
|     end
 | |
|   end
 | |
| end
 |