Autogenerated update (2020-05-28)

Delete:
- pagespeedonline_v2
- pagespeedonline_v4

Update:
- bigqueryreservation_v1
- bigqueryreservation_v1beta1
- cloudiot_v1
- cloudtasks_v2beta3
- compute_alpha
- compute_beta
- compute_v1
- displayvideo_v1
- spanner_v1
- youtube_v3
This commit is contained in:
Google APIs 2020-05-28 00:38:07 +00:00
parent 7d3c545176
commit df8aa8bfbe
35 changed files with 1924 additions and 3694 deletions

View File

@ -25,7 +25,7 @@ module Google
# @see https://cloud.google.com/bigquery/
module BigqueryreservationV1
VERSION = 'V1'
REVISION = '20200516'
REVISION = '20200519'
# View and manage your data in Google BigQuery
AUTH_BIGQUERY = 'https://www.googleapis.com/auth/bigquery'

View File

@ -317,6 +317,8 @@ module Google
# Ids of capacity commitments to merge.
# These capacity commitments must exist under admin project and location
# specified in the parent.
# ID is the last portion of capacity commitment name e.g., 'abc' for
# projects/myproject/locations/US/capacityCommitments/abc
# Corresponds to the JSON property `capacityCommitmentIds`
# @return [Array<String>]
attr_accessor :capacity_commitment_ids

View File

@ -25,7 +25,7 @@ module Google
# @see https://cloud.google.com/bigquery/
module BigqueryreservationV1beta1
VERSION = 'V1beta1'
REVISION = '20200516'
REVISION = '20200519'
# View and manage your data in Google BigQuery
AUTH_BIGQUERY = 'https://www.googleapis.com/auth/bigquery'

View File

@ -292,6 +292,8 @@ module Google
# Ids of capacity commitments to merge.
# These capacity commitments must exist under admin project and location
# specified in the parent.
# ID is the last portion of capacity commitment name e.g., 'abc' for
# projects/myproject/locations/US/capacityCommitments/abc
# Corresponds to the JSON property `capacityCommitmentIds`
# @return [Array<String>]
attr_accessor :capacity_commitment_ids

View File

@ -26,7 +26,7 @@ module Google
# @see https://cloud.google.com/iot
module CloudiotV1
VERSION = 'V1'
REVISION = '20200414'
REVISION = '20200519'
# View and manage your data across Google Cloud Platform services
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'

View File

@ -667,6 +667,9 @@ module Google
# Requests for policies with any conditional bindings must specify version 3.
# Policies without any conditional bindings may specify any valid value or
# leave the field unset.
# To learn which resources support conditions in their IAM policies, see the
# [IAM
# documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
# Corresponds to the JSON property `requestedPolicyVersion`
# @return [Fixnum]
attr_accessor :requested_policy_version
@ -851,10 +854,13 @@ module Google
# Google groups, and domains (such as G Suite). A `role` is a named list of
# permissions; each `role` can be an IAM predefined role or a user-created
# custom role.
# Optionally, a `binding` can specify a `condition`, which is a logical
# expression that allows access to a resource only if the expression evaluates
# to `true`. A condition can add constraints based on attributes of the
# request, the resource, or both.
# For some types of Google Cloud resources, a `binding` can also specify a
# `condition`, which is a logical expression that allows access to a resource
# only if the expression evaluates to `true`. A condition can add constraints
# based on attributes of the request, the resource, or both. To learn which
# resources support conditions in their IAM policies, see the
# [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
# policies).
# **JSON example:**
# `
# "bindings": [
@ -869,7 +875,9 @@ module Google
# `,
# `
# "role": "roles/resourcemanager.organizationViewer",
# "members": ["user:eve@example.com"],
# "members": [
# "user:eve@example.com"
# ],
# "condition": `
# "title": "expirable access",
# "description": "Does not grant access after Sep 2020",
@ -942,6 +950,9 @@ module Google
# the conditions in the version `3` policy are lost.
# If a policy does not include any conditions, operations on that policy may
# specify any valid version or leave the field unset.
# To learn which resources support conditions in their IAM policies, see the
# [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
# policies).
# Corresponds to the JSON property `version`
# @return [Fixnum]
attr_accessor :version
@ -1087,10 +1098,13 @@ module Google
# Google groups, and domains (such as G Suite). A `role` is a named list of
# permissions; each `role` can be an IAM predefined role or a user-created
# custom role.
# Optionally, a `binding` can specify a `condition`, which is a logical
# expression that allows access to a resource only if the expression evaluates
# to `true`. A condition can add constraints based on attributes of the
# request, the resource, or both.
# For some types of Google Cloud resources, a `binding` can also specify a
# `condition`, which is a logical expression that allows access to a resource
# only if the expression evaluates to `true`. A condition can add constraints
# based on attributes of the request, the resource, or both. To learn which
# resources support conditions in their IAM policies, see the
# [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
# policies).
# **JSON example:**
# `
# "bindings": [
@ -1105,7 +1119,9 @@ module Google
# `,
# `
# "role": "roles/resourcemanager.organizationViewer",
# "members": ["user:eve@example.com"],
# "members": [
# "user:eve@example.com"
# ],
# "condition": `
# "title": "expirable access",
# "description": "Does not grant access after Sep 2020",

View File

@ -25,7 +25,7 @@ module Google
# @see https://cloud.google.com/tasks/
module CloudtasksV2beta3
VERSION = 'V2beta3'
REVISION = '20200505'
REVISION = '20200513'
# View and manage your data across Google Cloud Platform services
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'

View File

@ -1625,8 +1625,8 @@ module Google
# respond by this deadline then the request is cancelled and the attempt
# is marked as a `DEADLINE_EXCEEDED` failure. Cloud Tasks will retry the
# task according to the RetryConfig.
# Note that when the request is cancelled, Cloud Tasks will stop listing for
# the response, but whether the worker stops processing depends on the
# Note that when the request is cancelled, Cloud Tasks will stop listening
# for the response, but whether the worker stops processing depends on the
# worker. For example, if the worker is stuck, it may not react to cancelled
# requests.
# The default and maximum values depend on the type of request:

View File

@ -25,7 +25,7 @@ module Google
# @see https://developers.google.com/compute/docs/reference/latest/
module ComputeAlpha
VERSION = 'Alpha'
REVISION = '20200427'
REVISION = '20200501'
# View and manage your data across Google Cloud Platform services
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'

View File

@ -1169,6 +1169,12 @@ module Google
# @return [String]
attr_accessor :machine_type
# Specifies the number of hours after reservation creation where instances using
# the reservation won't be scheduled for maintenance.
# Corresponds to the JSON property `maintenanceFreezeDurationHours`
# @return [Fixnum]
attr_accessor :maintenance_freeze_duration_hours
# Minimum cpu platform the reservation.
# Corresponds to the JSON property `minCpuPlatform`
# @return [String]
@ -1185,6 +1191,7 @@ module Google
@location_hint = args[:location_hint] if args.key?(:location_hint)
@long_term_release = args[:long_term_release] if args.key?(:long_term_release)
@machine_type = args[:machine_type] if args.key?(:machine_type)
@maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
@min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
end
end
@ -1425,6 +1432,13 @@ module Google
# @return [Hash<String,String>]
attr_accessor :labels
# Indicates whether or not the disk can be read/write attached to more than one
# instance.
# Corresponds to the JSON property `multiWriter`
# @return [Boolean]
attr_accessor :multi_writer
alias_method :multi_writer?, :multi_writer
# Specifies which action to take on instance update with this disk. Default is
# to use the existing disk.
# Corresponds to the JSON property `onUpdateAction`
@ -1498,6 +1512,7 @@ module Google
@disk_type = args[:disk_type] if args.key?(:disk_type)
@guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
@labels = args[:labels] if args.key?(:labels)
@multi_writer = args[:multi_writer] if args.key?(:multi_writer)
@on_update_action = args[:on_update_action] if args.key?(:on_update_action)
@replica_zones = args[:replica_zones] if args.key?(:replica_zones)
@resource_policies = args[:resource_policies] if args.key?(:resource_policies)
@ -4231,11 +4246,6 @@ module Google
# @return [Fixnum]
attr_accessor :count
# List of zones to exclude for regional requests.
# Corresponds to the JSON property `excludedZones`
# @return [Array<String>]
attr_accessor :excluded_zones
# Represents an Instance resource.
# An instance is a virtual machine that is hosted on Google Cloud Platform. For
# more information, read Virtual Machine Instances. (== resource_for `$
@ -4274,7 +4284,6 @@ module Google
# Update properties of this object
def update!(**args)
@count = args[:count] if args.key?(:count)
@excluded_zones = args[:excluded_zones] if args.key?(:excluded_zones)
@instance = args[:instance] if args.key?(:instance)
@min_count = args[:min_count] if args.key?(:min_count)
@predefined_names = args[:predefined_names] if args.key?(:predefined_names)
@ -12059,7 +12068,7 @@ module Google
alias_method :start_restricted?, :start_restricted
# [Output Only] The status of the instance. One of the following values:
# PROVISIONING, STAGING, RUNNING, STOPPING, STOPPED, SUSPENDING, SUSPENDED, and
# PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, and
# TERMINATED.
# Corresponds to the JSON property `status`
# @return [String]
@ -30733,6 +30742,12 @@ module Google
attr_accessor :long_term_release
alias_method :long_term_release?, :long_term_release
# Specifies the number of hours after instance creation where the instance won't
# be scheduled for maintenance.
# Corresponds to the JSON property `maintenanceFreezeDurationHours`
# @return [Fixnum]
attr_accessor :maintenance_freeze_duration_hours
# The minimum number of virtual CPUs this instance will consume when running on
# a sole-tenant node.
# Corresponds to the JSON property `minNodeCpus`
@ -30771,6 +30786,7 @@ module Google
@latency_tolerant = args[:latency_tolerant] if args.key?(:latency_tolerant)
@location_hint = args[:location_hint] if args.key?(:location_hint)
@long_term_release = args[:long_term_release] if args.key?(:long_term_release)
@maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
@min_node_cpus = args[:min_node_cpus] if args.key?(:min_node_cpus)
@node_affinities = args[:node_affinities] if args.key?(:node_affinities)
@on_host_maintenance = args[:on_host_maintenance] if args.key?(:on_host_maintenance)

View File

@ -5706,6 +5706,7 @@ module Google
property :location_hint, as: 'locationHint'
property :long_term_release, as: 'longTermRelease'
property :machine_type, as: 'machineType'
property :maintenance_freeze_duration_hours, as: 'maintenanceFreezeDurationHours'
property :min_cpu_platform, as: 'minCpuPlatform'
end
end
@ -5756,6 +5757,7 @@ module Google
collection :guest_os_features, as: 'guestOsFeatures', class: Google::Apis::ComputeAlpha::GuestOsFeature, decorator: Google::Apis::ComputeAlpha::GuestOsFeature::Representation
hash :labels, as: 'labels'
property :multi_writer, as: 'multiWriter'
property :on_update_action, as: 'onUpdateAction'
collection :replica_zones, as: 'replicaZones'
collection :resource_policies, as: 'resourcePolicies'
@ -6375,7 +6377,6 @@ module Google
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :count, :numeric_string => true, as: 'count'
collection :excluded_zones, as: 'excludedZones'
property :instance, as: 'instance', class: Google::Apis::ComputeAlpha::Instance, decorator: Google::Apis::ComputeAlpha::Instance::Representation
property :min_count, :numeric_string => true, as: 'minCount'
@ -12932,6 +12933,7 @@ module Google
property :latency_tolerant, as: 'latencyTolerant'
property :location_hint, as: 'locationHint'
property :long_term_release, as: 'longTermRelease'
property :maintenance_freeze_duration_hours, as: 'maintenanceFreezeDurationHours'
property :min_node_cpus, as: 'minNodeCpus'
collection :node_affinities, as: 'nodeAffinities', class: Google::Apis::ComputeAlpha::SchedulingNodeAffinity, decorator: Google::Apis::ComputeAlpha::SchedulingNodeAffinity::Representation

File diff suppressed because it is too large Load Diff

View File

@ -25,7 +25,7 @@ module Google
# @see https://developers.google.com/compute/docs/reference/latest/
module ComputeBeta
VERSION = 'Beta'
REVISION = '20200427'
REVISION = '20200501'
# View and manage your data across Google Cloud Platform services
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'

View File

@ -10907,7 +10907,7 @@ module Google
alias_method :start_restricted?, :start_restricted
# [Output Only] The status of the instance. One of the following values:
# PROVISIONING, STAGING, RUNNING, STOPPING, STOPPED, SUSPENDING, SUSPENDED, and
# PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, and
# TERMINATED.
# Corresponds to the JSON property `status`
# @return [String]

File diff suppressed because it is too large Load Diff

View File

@ -25,7 +25,7 @@ module Google
# @see https://developers.google.com/compute/docs/reference/latest/
module ComputeV1
VERSION = 'V1'
REVISION = '20200427'
REVISION = '20200501'
# View and manage your data across Google Cloud Platform services
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'

View File

@ -10024,6 +10024,12 @@ module Google
# @return [Array<Google::Apis::ComputeV1::NetworkInterface>]
attr_accessor :network_interfaces
# The private IPv6 google access type for the VM. If not specified, use
# INHERIT_FROM_SUBNETWORK as default.
# Corresponds to the JSON property `privateIpv6GoogleAccess`
# @return [String]
attr_accessor :private_ipv6_google_access
# Specifies the reservations that this instance can consume from.
# Corresponds to the JSON property `reservationAffinity`
# @return [Google::Apis::ComputeV1::ReservationAffinity]
@ -10072,7 +10078,7 @@ module Google
alias_method :start_restricted?, :start_restricted
# [Output Only] The status of the instance. One of the following values:
# PROVISIONING, STAGING, RUNNING, STOPPING, STOPPED, SUSPENDING, SUSPENDED, and
# PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, and
# TERMINATED.
# Corresponds to the JSON property `status`
# @return [String]
@ -10120,6 +10126,7 @@ module Google
@min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
@name = args[:name] if args.key?(:name)
@network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
@private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
@reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
@resource_policies = args[:resource_policies] if args.key?(:resource_policies)
@scheduling = args[:scheduling] if args.key?(:scheduling)
@ -12359,6 +12366,12 @@ module Google
# @return [Array<Google::Apis::ComputeV1::NetworkInterface>]
attr_accessor :network_interfaces
# The private IPv6 google access type for the VM. If not specified, use
# INHERIT_FROM_SUBNETWORK as default.
# Corresponds to the JSON property `privateIpv6GoogleAccess`
# @return [String]
attr_accessor :private_ipv6_google_access
# Specifies the reservations that this instance can consume from.
# Corresponds to the JSON property `reservationAffinity`
# @return [Google::Apis::ComputeV1::ReservationAffinity]
@ -12407,6 +12420,7 @@ module Google
@metadata = args[:metadata] if args.key?(:metadata)
@min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
@network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
@private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
@reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
@resource_policies = args[:resource_policies] if args.key?(:resource_policies)
@scheduling = args[:scheduling] if args.key?(:scheduling)
@ -16647,6 +16661,11 @@ module Google
# @return [String]
attr_accessor :fingerprint
# [Output Only] An IPv6 internal network address for this network interface.
# Corresponds to the JSON property `ipv6Address`
# @return [String]
attr_accessor :ipv6_address
# [Output Only] Type of the resource. Always compute#networkInterface for
# network interfaces.
# Corresponds to the JSON property `kind`
@ -16702,6 +16721,7 @@ module Google
@access_configs = args[:access_configs] if args.key?(:access_configs)
@alias_ip_ranges = args[:alias_ip_ranges] if args.key?(:alias_ip_ranges)
@fingerprint = args[:fingerprint] if args.key?(:fingerprint)
@ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
@kind = args[:kind] if args.key?(:kind)
@name = args[:name] if args.key?(:name)
@network = args[:network] if args.key?(:network)
@ -26571,6 +26591,12 @@ module Google
# @return [String]
attr_accessor :ip_cidr_range
# [Output Only] The range of internal IPv6 addresses that are owned by this
# subnetwork.
# Corresponds to the JSON property `ipv6CidrRange`
# @return [String]
attr_accessor :ipv6_cidr_range
# [Output Only] Type of the resource. Always compute#subnetwork for Subnetwork
# resources.
# Corresponds to the JSON property `kind`
@ -26608,6 +26634,14 @@ module Google
attr_accessor :private_ip_google_access
alias_method :private_ip_google_access?, :private_ip_google_access
# The private IPv6 google access type for the VMs in this subnet. This is an
# expanded field of enablePrivateV6Access. If both fields are set,
# privateIpv6GoogleAccess will take priority.
# This field can be both set at resource creation time and updated using patch.
# Corresponds to the JSON property `privateIpv6GoogleAccess`
# @return [String]
attr_accessor :private_ipv6_google_access
# The purpose of the resource. This field can be either PRIVATE_RFC_1918 or
# INTERNAL_HTTPS_LOAD_BALANCER. A subnetwork with purpose set to
# INTERNAL_HTTPS_LOAD_BALANCER is a user-created subnetwork that is reserved for
@ -26670,11 +26704,13 @@ module Google
@gateway_address = args[:gateway_address] if args.key?(:gateway_address)
@id = args[:id] if args.key?(:id)
@ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
@ipv6_cidr_range = args[:ipv6_cidr_range] if args.key?(:ipv6_cidr_range)
@kind = args[:kind] if args.key?(:kind)
@log_config = args[:log_config] if args.key?(:log_config)
@name = args[:name] if args.key?(:name)
@network = args[:network] if args.key?(:network)
@private_ip_google_access = args[:private_ip_google_access] if args.key?(:private_ip_google_access)
@private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
@purpose = args[:purpose] if args.key?(:purpose)
@region = args[:region] if args.key?(:region)
@role = args[:role] if args.key?(:role)

View File

@ -6833,6 +6833,7 @@ module Google
property :name, as: 'name'
collection :network_interfaces, as: 'networkInterfaces', class: Google::Apis::ComputeV1::NetworkInterface, decorator: Google::Apis::ComputeV1::NetworkInterface::Representation
property :private_ipv6_google_access, as: 'privateIpv6GoogleAccess'
property :reservation_affinity, as: 'reservationAffinity', class: Google::Apis::ComputeV1::ReservationAffinity, decorator: Google::Apis::ComputeV1::ReservationAffinity::Representation
collection :resource_policies, as: 'resourcePolicies'
@ -7440,6 +7441,7 @@ module Google
property :min_cpu_platform, as: 'minCpuPlatform'
collection :network_interfaces, as: 'networkInterfaces', class: Google::Apis::ComputeV1::NetworkInterface, decorator: Google::Apis::ComputeV1::NetworkInterface::Representation
property :private_ipv6_google_access, as: 'privateIpv6GoogleAccess'
property :reservation_affinity, as: 'reservationAffinity', class: Google::Apis::ComputeV1::ReservationAffinity, decorator: Google::Apis::ComputeV1::ReservationAffinity::Representation
collection :resource_policies, as: 'resourcePolicies'
@ -8534,6 +8536,7 @@ module Google
collection :alias_ip_ranges, as: 'aliasIpRanges', class: Google::Apis::ComputeV1::AliasIpRange, decorator: Google::Apis::ComputeV1::AliasIpRange::Representation
property :fingerprint, :base64 => true, as: 'fingerprint'
property :ipv6_address, as: 'ipv6Address'
property :kind, as: 'kind'
property :name, as: 'name'
property :network, as: 'network'
@ -11074,12 +11077,14 @@ module Google
property :gateway_address, as: 'gatewayAddress'
property :id, :numeric_string => true, as: 'id'
property :ip_cidr_range, as: 'ipCidrRange'
property :ipv6_cidr_range, as: 'ipv6CidrRange'
property :kind, as: 'kind'
property :log_config, as: 'logConfig', class: Google::Apis::ComputeV1::SubnetworkLogConfig, decorator: Google::Apis::ComputeV1::SubnetworkLogConfig::Representation
property :name, as: 'name'
property :network, as: 'network'
property :private_ip_google_access, as: 'privateIpGoogleAccess'
property :private_ipv6_google_access, as: 'privateIpv6GoogleAccess'
property :purpose, as: 'purpose'
property :region, as: 'region'
property :role, as: 'role'

View File

@ -26,7 +26,7 @@ module Google
# @see https://developers.google.com/display-video/
module DisplayvideoV1
VERSION = 'V1'
REVISION = '20200519'
REVISION = '20200526'
# Create, see, edit, and permanently delete your Display & Video 360 entities and reports
AUTH_DISPLAY_VIDEO = 'https://www.googleapis.com/auth/display-video'

View File

@ -162,6 +162,11 @@ module Google
# @return [Fixnum]
attr_accessor :partner_id
# Targeting settings related to ad serving of an advertiser.
# Corresponds to the JSON property `servingConfig`
# @return [Google::Apis::DisplayvideoV1::AdvertiserTargetingConfig]
attr_accessor :serving_config
# Output only. The timestamp when the advertiser was last updated. Assigned by
# the system.
# Corresponds to the JSON property `updateTime`
@ -184,6 +189,7 @@ module Google
@integration_details = args[:integration_details] if args.key?(:integration_details)
@name = args[:name] if args.key?(:name)
@partner_id = args[:partner_id] if args.key?(:partner_id)
@serving_config = args[:serving_config] if args.key?(:serving_config)
@update_time = args[:update_time] if args.key?(:update_time)
end
end
@ -394,6 +400,27 @@ module Google
end
end
# Targeting settings related to ad serving of an advertiser.
class AdvertiserTargetingConfig
include Google::Apis::Core::Hashable
# Whether or not connected TV devices are exempt from viewability targeting
# for all video line items under the advertiser.
# Corresponds to the JSON property `exemptTvFromViewabilityTargeting`
# @return [Boolean]
attr_accessor :exempt_tv_from_viewability_targeting
alias_method :exempt_tv_from_viewability_targeting?, :exempt_tv_from_viewability_targeting
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@exempt_tv_from_viewability_targeting = args[:exempt_tv_from_viewability_targeting] if args.key?(:exempt_tv_from_viewability_targeting)
end
end
# Represents a targetable age range. This will be populated in the details
# field of an AssignedTargetingOption when
# targeting_type is
@ -1239,6 +1266,54 @@ module Google
end
end
# Request message for
# BulkEditAdvertiserAssignedTargetingOptions.
class BulkEditAdvertiserAssignedTargetingOptionsRequest
include Google::Apis::Core::Hashable
# The assigned targeting options to create in batch, specified as a list of
# `CreateAssignedTargetingOptionsRequest`.
# Corresponds to the JSON property `createRequests`
# @return [Array<Google::Apis::DisplayvideoV1::CreateAssignedTargetingOptionsRequest>]
attr_accessor :create_requests
# The assigned targeting options to delete in batch, specified as a list of
# `DeleteAssignedTargetingOptionsRequest`.
# Corresponds to the JSON property `deleteRequests`
# @return [Array<Google::Apis::DisplayvideoV1::DeleteAssignedTargetingOptionsRequest>]
attr_accessor :delete_requests
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@create_requests = args[:create_requests] if args.key?(:create_requests)
@delete_requests = args[:delete_requests] if args.key?(:delete_requests)
end
end
#
class BulkEditAdvertiserAssignedTargetingOptionsResponse
include Google::Apis::Core::Hashable
# The list of assigned targeting options that have been successfully created.
# This list will be absent if empty.
# Corresponds to the JSON property `createdAssignedTargetingOptions`
# @return [Array<Google::Apis::DisplayvideoV1::AssignedTargetingOption>]
attr_accessor :created_assigned_targeting_options
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@created_assigned_targeting_options = args[:created_assigned_targeting_options] if args.key?(:created_assigned_targeting_options)
end
end
# Request message for
# BulkEditLineItemAssignedTargetingOptions.
class BulkEditLineItemAssignedTargetingOptionsRequest
@ -1287,6 +1362,39 @@ module Google
end
end
#
class BulkListAdvertiserAssignedTargetingOptionsResponse
include Google::Apis::Core::Hashable
# The list of assigned targeting options.
# This list will be absent if empty.
# Corresponds to the JSON property `assignedTargetingOptions`
# @return [Array<Google::Apis::DisplayvideoV1::AssignedTargetingOption>]
attr_accessor :assigned_targeting_options
# A token identifying the next page of results. This value should be
# specified as the
# pageToken
# in a subsequent BulkListAdvertiserAssignedTargetingOptionsRequest to
# fetch the next page of results. This token will be absent if there are no
# more
# assigned_targeting_options
# to return.
# 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)
@assigned_targeting_options = args[:assigned_targeting_options] if args.key?(:assigned_targeting_options)
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
end
end
#
class BulkListLineItemAssignedTargetingOptionsResponse
include Google::Apis::Core::Hashable
@ -4941,6 +5049,39 @@ module Google
end
end
# Response message for
# ListAdvertiserAssignedTargetingOptions.
class ListAdvertiserAssignedTargetingOptionsResponse
include Google::Apis::Core::Hashable
# The list of assigned targeting options.
# This list will be absent if empty.
# Corresponds to the JSON property `assignedTargetingOptions`
# @return [Array<Google::Apis::DisplayvideoV1::AssignedTargetingOption>]
attr_accessor :assigned_targeting_options
# A token identifying the next page of results. This value should be
# specified as the
# pageToken in a
# subsequent ListAdvertiserAssignedTargetingOptionsRequest to fetch the
# next page of results. This token will be absent if there are no more
# assigned_targeting_options
# to return.
# 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)
@assigned_targeting_options = args[:assigned_targeting_options] if args.key?(:assigned_targeting_options)
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
end
end
#
class ListAdvertisersResponse
include Google::Apis::Core::Hashable

View File

@ -70,6 +70,12 @@ module Google
include Google::Apis::Core::JsonObjectSupport
end
class AdvertiserTargetingConfig
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class AgeRangeAssignedTargetingOptionDetails
class Representation < Google::Apis::Core::JsonRepresentation; end
@ -160,6 +166,18 @@ module Google
include Google::Apis::Core::JsonObjectSupport
end
class BulkEditAdvertiserAssignedTargetingOptionsRequest
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class BulkEditAdvertiserAssignedTargetingOptionsResponse
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class BulkEditLineItemAssignedTargetingOptionsRequest
class Representation < Google::Apis::Core::JsonRepresentation; end
@ -172,6 +190,12 @@ module Google
include Google::Apis::Core::JsonObjectSupport
end
class BulkListAdvertiserAssignedTargetingOptionsResponse
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class BulkListLineItemAssignedTargetingOptionsResponse
class Representation < Google::Apis::Core::JsonRepresentation; end
@ -712,6 +736,12 @@ module Google
include Google::Apis::Core::JsonObjectSupport
end
class ListAdvertiserAssignedTargetingOptionsResponse
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class ListAdvertisersResponse
class Representation < Google::Apis::Core::JsonRepresentation; end
@ -1138,6 +1168,8 @@ module Google
property :name, as: 'name'
property :partner_id, :numeric_string => true, as: 'partnerId'
property :serving_config, as: 'servingConfig', class: Google::Apis::DisplayvideoV1::AdvertiserTargetingConfig, decorator: Google::Apis::DisplayvideoV1::AdvertiserTargetingConfig::Representation
property :update_time, as: 'updateTime'
end
end
@ -1188,6 +1220,13 @@ module Google
end
end
class AdvertiserTargetingConfig
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :exempt_tv_from_viewability_targeting, as: 'exemptTvFromViewabilityTargeting'
end
end
class AgeRangeAssignedTargetingOptionDetails
# @private
class Representation < Google::Apis::Core::JsonRepresentation
@ -1398,6 +1437,24 @@ module Google
end
end
class BulkEditAdvertiserAssignedTargetingOptionsRequest
# @private
class Representation < Google::Apis::Core::JsonRepresentation
collection :create_requests, as: 'createRequests', class: Google::Apis::DisplayvideoV1::CreateAssignedTargetingOptionsRequest, decorator: Google::Apis::DisplayvideoV1::CreateAssignedTargetingOptionsRequest::Representation
collection :delete_requests, as: 'deleteRequests', class: Google::Apis::DisplayvideoV1::DeleteAssignedTargetingOptionsRequest, decorator: Google::Apis::DisplayvideoV1::DeleteAssignedTargetingOptionsRequest::Representation
end
end
class BulkEditAdvertiserAssignedTargetingOptionsResponse
# @private
class Representation < Google::Apis::Core::JsonRepresentation
collection :created_assigned_targeting_options, as: 'createdAssignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
end
end
class BulkEditLineItemAssignedTargetingOptionsRequest
# @private
class Representation < Google::Apis::Core::JsonRepresentation
@ -1416,6 +1473,15 @@ module Google
end
end
class BulkListAdvertiserAssignedTargetingOptionsResponse
# @private
class Representation < Google::Apis::Core::JsonRepresentation
collection :assigned_targeting_options, as: 'assignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
property :next_page_token, as: 'nextPageToken'
end
end
class BulkListLineItemAssignedTargetingOptionsResponse
# @private
class Representation < Google::Apis::Core::JsonRepresentation
@ -2328,6 +2394,15 @@ module Google
end
end
class ListAdvertiserAssignedTargetingOptionsResponse
# @private
class Representation < Google::Apis::Core::JsonRepresentation
collection :assigned_targeting_options, as: 'assignedTargetingOptions', class: Google::Apis::DisplayvideoV1::AssignedTargetingOption, decorator: Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
property :next_page_token, as: 'nextPageToken'
end
end
class ListAdvertisersResponse
# @private
class Representation < Google::Apis::Core::JsonRepresentation

View File

@ -48,6 +48,109 @@ module Google
@batch_path = 'batch'
end
# Bulk edits targeting options under a single advertiser.
# The operation will delete the assigned targeting options provided in
# BulkEditAdvertiserAssignedTargetingOptionsRequest.delete_requests and
# then create the assigned targeting options provided in
# BulkEditAdvertiserAssignedTargetingOptionsRequest.create_requests .
# @param [Fixnum] advertiser_id
# Required. The ID of the advertiser.
# @param [Google::Apis::DisplayvideoV1::BulkEditAdvertiserAssignedTargetingOptionsRequest] bulk_edit_advertiser_assigned_targeting_options_request_object
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::DisplayvideoV1::BulkEditAdvertiserAssignedTargetingOptionsResponse] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::DisplayvideoV1::BulkEditAdvertiserAssignedTargetingOptionsResponse]
#
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
# @raise [Google::Apis::AuthorizationError] Authorization is required
def bulk_edit_advertiser_assigned_targeting_options(advertiser_id, bulk_edit_advertiser_assigned_targeting_options_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:post, 'v1/advertisers/{+advertiserId}:bulkEditAdvertiserAssignedTargetingOptions', options)
command.request_representation = Google::Apis::DisplayvideoV1::BulkEditAdvertiserAssignedTargetingOptionsRequest::Representation
command.request_object = bulk_edit_advertiser_assigned_targeting_options_request_object
command.response_representation = Google::Apis::DisplayvideoV1::BulkEditAdvertiserAssignedTargetingOptionsResponse::Representation
command.response_class = Google::Apis::DisplayvideoV1::BulkEditAdvertiserAssignedTargetingOptionsResponse
command.params['advertiserId'] = advertiser_id unless advertiser_id.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Lists assigned targeting options of an advertiser across targeting types.
# @param [Fixnum] advertiser_id
# Required. The ID of the advertiser the line item belongs to.
# @param [String] filter
# Allows filtering by assigned targeting option properties.
# Supported syntax:
# * Filter expressions are made up of one or more restrictions.
# * Restrictions can be combined by the logical operator `OR`..
# * A restriction has the form of ``field` `operator` `value``.
# * The operator must be `EQUALS (=)`.
# * Supported fields:
# - `targetingType`
# Examples:
# * targetingType with value TARGETING_TYPE_CHANNEL
# `targetingType="TARGETING_TYPE_CHANNEL"`
# The length of this field should be no more than 500 characters.
# @param [String] order_by
# Field by which to sort the list.
# Acceptable values are:
# * `targetingType` (default)
# The default sorting order is ascending. To specify descending order for
# a field, a suffix "desc" should be added to the field name. Example:
# `targetingType desc`.
# @param [Fixnum] page_size
# Requested page size.
# The size must be an integer between `1` and `5000`. If unspecified,
# the default is '5000'. Returns error code `INVALID_ARGUMENT` if an invalid
# value is specified.
# @param [String] page_token
# A token that lets the client fetch the next page of results.
# Typically, this is the value of
# next_page_token
# returned from the previous call to
# `BulkListAdvertiserAssignedTargetingOptions` method.
# If not specified, the first page of results will be returned.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::DisplayvideoV1::BulkListAdvertiserAssignedTargetingOptionsResponse] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::DisplayvideoV1::BulkListAdvertiserAssignedTargetingOptionsResponse]
#
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
# @raise [Google::Apis::AuthorizationError] Authorization is required
def bulk_advertiser_list_advertiser_assigned_targeting_options(advertiser_id, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1/advertisers/{+advertiserId}:bulkListAdvertiserAssignedTargetingOptions', options)
command.response_representation = Google::Apis::DisplayvideoV1::BulkListAdvertiserAssignedTargetingOptionsResponse::Representation
command.response_class = Google::Apis::DisplayvideoV1::BulkListAdvertiserAssignedTargetingOptionsResponse
command.params['advertiserId'] = advertiser_id unless advertiser_id.nil?
command.query['filter'] = filter unless filter.nil?
command.query['orderBy'] = order_by unless order_by.nil?
command.query['pageSize'] = page_size unless page_size.nil?
command.query['pageToken'] = page_token unless page_token.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Creates a new advertiser.
# Returns the newly created advertiser if successful.
# This method can take up to 180 seconds to complete.
@ -1794,6 +1897,183 @@ module Google
execute_or_queue_command(command, &block)
end
# Assigns a targeting option to an advertiser.
# Returns the assigned targeting option if successful.
# @param [Fixnum] advertiser_id
# Required. The ID of the advertiser.
# @param [String] targeting_type
# Required. Identifies the type of this assigned targeting option.
# @param [Google::Apis::DisplayvideoV1::AssignedTargetingOption] assigned_targeting_option_object
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::DisplayvideoV1::AssignedTargetingOption] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::DisplayvideoV1::AssignedTargetingOption]
#
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
# @raise [Google::Apis::AuthorizationError] Authorization is required
def create_advertiser_targeting_type_assigned_targeting_option(advertiser_id, targeting_type, assigned_targeting_option_object = nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:post, 'v1/advertisers/{+advertiserId}/targetingTypes/{+targetingType}/assignedTargetingOptions', options)
command.request_representation = Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
command.request_object = assigned_targeting_option_object
command.response_representation = Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
command.response_class = Google::Apis::DisplayvideoV1::AssignedTargetingOption
command.params['advertiserId'] = advertiser_id unless advertiser_id.nil?
command.params['targetingType'] = targeting_type unless targeting_type.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Deletes an assigned targeting option from an advertiser.
# @param [Fixnum] advertiser_id
# Required. The ID of the advertiser.
# @param [String] targeting_type
# Required. Identifies the type of this assigned targeting option.
# @param [String] assigned_targeting_option_id
# Required. The ID of the assigned targeting option to delete.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::DisplayvideoV1::Empty] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::DisplayvideoV1::Empty]
#
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
# @raise [Google::Apis::AuthorizationError] Authorization is required
def delete_advertiser_targeting_type_assigned_targeting_option(advertiser_id, targeting_type, assigned_targeting_option_id, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:delete, 'v1/advertisers/{+advertiserId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}', options)
command.response_representation = Google::Apis::DisplayvideoV1::Empty::Representation
command.response_class = Google::Apis::DisplayvideoV1::Empty
command.params['advertiserId'] = advertiser_id unless advertiser_id.nil?
command.params['targetingType'] = targeting_type unless targeting_type.nil?
command.params['assignedTargetingOptionId'] = assigned_targeting_option_id unless assigned_targeting_option_id.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Gets a single targeting option assigned to an advertiser.
# @param [Fixnum] advertiser_id
# Required. The ID of the advertiser.
# @param [String] targeting_type
# Required. Identifies the type of this assigned targeting option.
# @param [String] assigned_targeting_option_id
# Required. An identifier unique to the targeting type in this advertiser that
# identifies the assigned targeting option being requested.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::DisplayvideoV1::AssignedTargetingOption] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::DisplayvideoV1::AssignedTargetingOption]
#
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
# @raise [Google::Apis::AuthorizationError] Authorization is required
def get_advertiser_targeting_type_assigned_targeting_option(advertiser_id, targeting_type, assigned_targeting_option_id, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1/advertisers/{+advertiserId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}', options)
command.response_representation = Google::Apis::DisplayvideoV1::AssignedTargetingOption::Representation
command.response_class = Google::Apis::DisplayvideoV1::AssignedTargetingOption
command.params['advertiserId'] = advertiser_id unless advertiser_id.nil?
command.params['targetingType'] = targeting_type unless targeting_type.nil?
command.params['assignedTargetingOptionId'] = assigned_targeting_option_id unless assigned_targeting_option_id.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Lists the targeting options assigned to an advertiser.
# @param [Fixnum] advertiser_id
# Required. The ID of the advertiser.
# @param [String] targeting_type
# Required. Identifies the type of assigned targeting options to list.
# @param [String] filter
# Allows filtering by assigned targeting option properties.
# Supported syntax:
# * Filter expressions are made up of one or more restrictions.
# * Restrictions can be combined by the logical operator `OR`.
# * A restriction has the form of ``field` `operator` `value``.
# * The operator must be `EQUALS (=)`.
# * Supported fields:
# - `assignedTargetingOptionId`
# Examples:
# * AssignedTargetingOption with ID 123456
# `assignedTargetingOptionId="123456"`
# The length of this field should be no more than 500 characters.
# @param [String] order_by
# Field by which to sort the list.
# Acceptable values are:
# * `assignedTargetingOptionId` (default)
# The default sorting order is ascending. To specify descending order for
# a field, a suffix "desc" should be added to the field name. Example:
# `assignedTargetingOptionId desc`.
# @param [Fixnum] page_size
# Requested page size. Must be between `1` and `100`. If unspecified will
# default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value
# is specified.
# @param [String] page_token
# A token identifying a page of results the server should return.
# Typically, this is the value of
# next_page_token
# returned from the previous call to `ListAdvertiserAssignedTargetingOptions`
# method. If not specified, the first page of results will be returned.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::DisplayvideoV1::ListAdvertiserAssignedTargetingOptionsResponse] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::DisplayvideoV1::ListAdvertiserAssignedTargetingOptionsResponse]
#
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
# @raise [Google::Apis::AuthorizationError] Authorization is required
def list_advertiser_targeting_type_assigned_targeting_options(advertiser_id, targeting_type, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1/advertisers/{+advertiserId}/targetingTypes/{+targetingType}/assignedTargetingOptions', options)
command.response_representation = Google::Apis::DisplayvideoV1::ListAdvertiserAssignedTargetingOptionsResponse::Representation
command.response_class = Google::Apis::DisplayvideoV1::ListAdvertiserAssignedTargetingOptionsResponse
command.params['advertiserId'] = advertiser_id unless advertiser_id.nil?
command.params['targetingType'] = targeting_type unless targeting_type.nil?
command.query['filter'] = filter unless filter.nil?
command.query['orderBy'] = order_by unless order_by.nil?
command.query['pageSize'] = page_size unless page_size.nil?
command.query['pageToken'] = page_token unless page_token.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Gets a combined audience.
# @param [Fixnum] combined_audience_id
# Required. The ID of the combined audience to fetch.

View File

@ -1,32 +0,0 @@
# 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 'google/apis/pagespeedonline_v2/service.rb'
require 'google/apis/pagespeedonline_v2/classes.rb'
require 'google/apis/pagespeedonline_v2/representations.rb'
module Google
module Apis
# PageSpeed Insights API
#
# Analyzes the performance of a web page and provides tailored suggestions to
# make that page faster.
#
# @see https://developers.google.com/speed/docs/insights/v2/getting-started
module PagespeedonlineV2
VERSION = 'V2'
REVISION = '20180606'
end
end
end

View File

@ -1,621 +0,0 @@
# 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 PagespeedonlineV2
#
class FormatString
include Google::Apis::Core::Hashable
# List of arguments for the format string.
# Corresponds to the JSON property `args`
# @return [Array<Google::Apis::PagespeedonlineV2::FormatString::Arg>]
attr_accessor :args
# A localized format string with ``FOO`` placeholders, where 'FOO' is the key of
# the argument whose value should be substituted. For HYPERLINK arguments, the
# format string will instead contain ``BEGIN_FOO`` and ``END_FOO`` for the
# argument with key 'FOO'.
# Corresponds to the JSON property `format`
# @return [String]
attr_accessor :format
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@args = args[:args] if args.key?(:args)
@format = args[:format] if args.key?(:format)
end
#
class Arg
include Google::Apis::Core::Hashable
# The placeholder key for this arg, as a string.
# Corresponds to the JSON property `key`
# @return [String]
attr_accessor :key
# The screen rectangles being referred to, with dimensions measured in CSS
# pixels. This is only ever used for SNAPSHOT_RECT arguments. If this is absent
# for a SNAPSHOT_RECT argument, it means that that argument refers to the entire
# snapshot.
# Corresponds to the JSON property `rects`
# @return [Array<Google::Apis::PagespeedonlineV2::FormatString::Arg::Rect>]
attr_accessor :rects
# Secondary screen rectangles being referred to, with dimensions measured in CSS
# pixels. This is only ever used for SNAPSHOT_RECT arguments.
# Corresponds to the JSON property `secondary_rects`
# @return [Array<Google::Apis::PagespeedonlineV2::FormatString::Arg::SecondaryRect>]
attr_accessor :secondary_rects
# Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, BYTES, DURATION,
# VERBATIM_STRING, PERCENTAGE, HYPERLINK, or SNAPSHOT_RECT.
# Corresponds to the JSON property `type`
# @return [String]
attr_accessor :type
# Argument value, as a localized string.
# 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)
@rects = args[:rects] if args.key?(:rects)
@secondary_rects = args[:secondary_rects] if args.key?(:secondary_rects)
@type = args[:type] if args.key?(:type)
@value = args[:value] if args.key?(:value)
end
#
class Rect
include Google::Apis::Core::Hashable
# The height of the rect.
# Corresponds to the JSON property `height`
# @return [Fixnum]
attr_accessor :height
# The left coordinate of the rect, in page coordinates.
# Corresponds to the JSON property `left`
# @return [Fixnum]
attr_accessor :left
# The top coordinate of the rect, in page coordinates.
# Corresponds to the JSON property `top`
# @return [Fixnum]
attr_accessor :top
# The width of the rect.
# Corresponds to the JSON property `width`
# @return [Fixnum]
attr_accessor :width
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@height = args[:height] if args.key?(:height)
@left = args[:left] if args.key?(:left)
@top = args[:top] if args.key?(:top)
@width = args[:width] if args.key?(:width)
end
end
#
class SecondaryRect
include Google::Apis::Core::Hashable
# The height of the rect.
# Corresponds to the JSON property `height`
# @return [Fixnum]
attr_accessor :height
# The left coordinate of the rect, in page coordinates.
# Corresponds to the JSON property `left`
# @return [Fixnum]
attr_accessor :left
# The top coordinate of the rect, in page coordinates.
# Corresponds to the JSON property `top`
# @return [Fixnum]
attr_accessor :top
# The width of the rect.
# Corresponds to the JSON property `width`
# @return [Fixnum]
attr_accessor :width
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@height = args[:height] if args.key?(:height)
@left = args[:left] if args.key?(:left)
@top = args[:top] if args.key?(:top)
@width = args[:width] if args.key?(:width)
end
end
end
end
#
class Image
include Google::Apis::Core::Hashable
# Image data base64 encoded.
# Corresponds to the JSON property `data`
# NOTE: Values are automatically base64 encoded/decoded in the client library.
# @return [String]
attr_accessor :data
# Height of screenshot in pixels.
# Corresponds to the JSON property `height`
# @return [Fixnum]
attr_accessor :height
# Unique string key, if any, identifying this image.
# Corresponds to the JSON property `key`
# @return [String]
attr_accessor :key
# Mime type of image data (e.g. "image/jpeg").
# Corresponds to the JSON property `mime_type`
# @return [String]
attr_accessor :mime_type
# The region of the page that is captured by this image, with dimensions
# measured in CSS pixels.
# Corresponds to the JSON property `page_rect`
# @return [Google::Apis::PagespeedonlineV2::Image::PageRect]
attr_accessor :page_rect
# Width of screenshot in pixels.
# Corresponds to the JSON property `width`
# @return [Fixnum]
attr_accessor :width
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@data = args[:data] if args.key?(:data)
@height = args[:height] if args.key?(:height)
@key = args[:key] if args.key?(:key)
@mime_type = args[:mime_type] if args.key?(:mime_type)
@page_rect = args[:page_rect] if args.key?(:page_rect)
@width = args[:width] if args.key?(:width)
end
# The region of the page that is captured by this image, with dimensions
# measured in CSS pixels.
class PageRect
include Google::Apis::Core::Hashable
# The height of the rect.
# Corresponds to the JSON property `height`
# @return [Fixnum]
attr_accessor :height
# The left coordinate of the rect, in page coordinates.
# Corresponds to the JSON property `left`
# @return [Fixnum]
attr_accessor :left
# The top coordinate of the rect, in page coordinates.
# Corresponds to the JSON property `top`
# @return [Fixnum]
attr_accessor :top
# The width of the rect.
# Corresponds to the JSON property `width`
# @return [Fixnum]
attr_accessor :width
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@height = args[:height] if args.key?(:height)
@left = args[:left] if args.key?(:left)
@top = args[:top] if args.key?(:top)
@width = args[:width] if args.key?(:width)
end
end
end
#
class Result
include Google::Apis::Core::Hashable
# The captcha verify result
# Corresponds to the JSON property `captchaResult`
# @return [String]
attr_accessor :captcha_result
# Localized PageSpeed results. Contains a ruleResults entry for each PageSpeed
# rule instantiated and run by the server.
# Corresponds to the JSON property `formattedResults`
# @return [Google::Apis::PagespeedonlineV2::Result::FormattedResults]
attr_accessor :formatted_results
# Canonicalized and final URL for the document, after following page redirects (
# if any).
# Corresponds to the JSON property `id`
# @return [String]
attr_accessor :id
# List of rules that were specified in the request, but which the server did not
# know how to instantiate.
# Corresponds to the JSON property `invalidRules`
# @return [Array<String>]
attr_accessor :invalid_rules
# Kind of result.
# Corresponds to the JSON property `kind`
# @return [String]
attr_accessor :kind
# Summary statistics for the page, such as number of JavaScript bytes, number of
# HTML bytes, etc.
# Corresponds to the JSON property `pageStats`
# @return [Google::Apis::PagespeedonlineV2::Result::PageStats]
attr_accessor :page_stats
# Response code for the document. 200 indicates a normal page load. 4xx/5xx
# indicates an error.
# Corresponds to the JSON property `responseCode`
# @return [Fixnum]
attr_accessor :response_code
# A map with one entry for each rule group in these results.
# Corresponds to the JSON property `ruleGroups`
# @return [Hash<String,Google::Apis::PagespeedonlineV2::Result::RuleGroup>]
attr_accessor :rule_groups
# Base64-encoded screenshot of the page that was analyzed.
# Corresponds to the JSON property `screenshot`
# @return [Google::Apis::PagespeedonlineV2::Image]
attr_accessor :screenshot
# Title of the page, as displayed in the browser's title bar.
# Corresponds to the JSON property `title`
# @return [String]
attr_accessor :title
# The version of PageSpeed used to generate these results.
# Corresponds to the JSON property `version`
# @return [Google::Apis::PagespeedonlineV2::Result::Version]
attr_accessor :version
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@captcha_result = args[:captcha_result] if args.key?(:captcha_result)
@formatted_results = args[:formatted_results] if args.key?(:formatted_results)
@id = args[:id] if args.key?(:id)
@invalid_rules = args[:invalid_rules] if args.key?(:invalid_rules)
@kind = args[:kind] if args.key?(:kind)
@page_stats = args[:page_stats] if args.key?(:page_stats)
@response_code = args[:response_code] if args.key?(:response_code)
@rule_groups = args[:rule_groups] if args.key?(:rule_groups)
@screenshot = args[:screenshot] if args.key?(:screenshot)
@title = args[:title] if args.key?(:title)
@version = args[:version] if args.key?(:version)
end
# Localized PageSpeed results. Contains a ruleResults entry for each PageSpeed
# rule instantiated and run by the server.
class FormattedResults
include Google::Apis::Core::Hashable
# The locale of the formattedResults, e.g. "en_US".
# Corresponds to the JSON property `locale`
# @return [String]
attr_accessor :locale
# Dictionary of formatted rule results, with one entry for each PageSpeed rule
# instantiated and run by the server.
# Corresponds to the JSON property `ruleResults`
# @return [Hash<String,Google::Apis::PagespeedonlineV2::Result::FormattedResults::RuleResult>]
attr_accessor :rule_results
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@locale = args[:locale] if args.key?(:locale)
@rule_results = args[:rule_results] if args.key?(:rule_results)
end
# The enum-like identifier for this rule. For instance "EnableKeepAlive" or "
# AvoidCssImport". Not localized.
class RuleResult
include Google::Apis::Core::Hashable
# List of rule groups that this rule belongs to. Each entry in the list is one
# of "SPEED" or "USABILITY".
# Corresponds to the JSON property `groups`
# @return [Array<String>]
attr_accessor :groups
# Localized name of the rule, intended for presentation to a user.
# Corresponds to the JSON property `localizedRuleName`
# @return [String]
attr_accessor :localized_rule_name
# The impact (unbounded floating point value) that implementing the suggestions
# for this rule would have on making the page faster. Impact is comparable
# between rules to determine which rule's suggestions would have a higher or
# lower impact on making a page faster. For instance, if enabling compression
# would save 1MB, while optimizing images would save 500kB, the enable
# compression rule would have 2x the impact of the image optimization rule, all
# other things being equal.
# Corresponds to the JSON property `ruleImpact`
# @return [Float]
attr_accessor :rule_impact
# A brief summary description for the rule, indicating at a high level what
# should be done to follow the rule and what benefit can be gained by doing so.
# Corresponds to the JSON property `summary`
# @return [Google::Apis::PagespeedonlineV2::FormatString]
attr_accessor :summary
# List of blocks of URLs. Each block may contain a heading and a list of URLs.
# Each URL may optionally include additional details.
# Corresponds to the JSON property `urlBlocks`
# @return [Array<Google::Apis::PagespeedonlineV2::Result::FormattedResults::RuleResult::UrlBlock>]
attr_accessor :url_blocks
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@groups = args[:groups] if args.key?(:groups)
@localized_rule_name = args[:localized_rule_name] if args.key?(:localized_rule_name)
@rule_impact = args[:rule_impact] if args.key?(:rule_impact)
@summary = args[:summary] if args.key?(:summary)
@url_blocks = args[:url_blocks] if args.key?(:url_blocks)
end
#
class UrlBlock
include Google::Apis::Core::Hashable
# Heading to be displayed with the list of URLs.
# Corresponds to the JSON property `header`
# @return [Google::Apis::PagespeedonlineV2::FormatString]
attr_accessor :header
# List of entries that provide information about URLs in the url block. Optional.
# Corresponds to the JSON property `urls`
# @return [Array<Google::Apis::PagespeedonlineV2::Result::FormattedResults::RuleResult::UrlBlock::Url>]
attr_accessor :urls
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@header = args[:header] if args.key?(:header)
@urls = args[:urls] if args.key?(:urls)
end
#
class Url
include Google::Apis::Core::Hashable
# List of entries that provide additional details about a single URL. Optional.
# Corresponds to the JSON property `details`
# @return [Array<Google::Apis::PagespeedonlineV2::FormatString>]
attr_accessor :details
# A format string that gives information about the URL, and a list of arguments
# for that format string.
# Corresponds to the JSON property `result`
# @return [Google::Apis::PagespeedonlineV2::FormatString]
attr_accessor :result
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@details = args[:details] if args.key?(:details)
@result = args[:result] if args.key?(:result)
end
end
end
end
end
# Summary statistics for the page, such as number of JavaScript bytes, number of
# HTML bytes, etc.
class PageStats
include Google::Apis::Core::Hashable
# Number of uncompressed response bytes for CSS resources on the page.
# Corresponds to the JSON property `cssResponseBytes`
# @return [Fixnum]
attr_accessor :css_response_bytes
# Number of response bytes for flash resources on the page.
# Corresponds to the JSON property `flashResponseBytes`
# @return [Fixnum]
attr_accessor :flash_response_bytes
# Number of uncompressed response bytes for the main HTML document and all
# iframes on the page.
# Corresponds to the JSON property `htmlResponseBytes`
# @return [Fixnum]
attr_accessor :html_response_bytes
# Number of response bytes for image resources on the page.
# Corresponds to the JSON property `imageResponseBytes`
# @return [Fixnum]
attr_accessor :image_response_bytes
# Number of uncompressed response bytes for JS resources on the page.
# Corresponds to the JSON property `javascriptResponseBytes`
# @return [Fixnum]
attr_accessor :javascript_response_bytes
# Number of CSS resources referenced by the page.
# Corresponds to the JSON property `numberCssResources`
# @return [Fixnum]
attr_accessor :number_css_resources
# Number of unique hosts referenced by the page.
# Corresponds to the JSON property `numberHosts`
# @return [Fixnum]
attr_accessor :number_hosts
# Number of JavaScript resources referenced by the page.
# Corresponds to the JSON property `numberJsResources`
# @return [Fixnum]
attr_accessor :number_js_resources
# Number of HTTP resources loaded by the page.
# Corresponds to the JSON property `numberResources`
# @return [Fixnum]
attr_accessor :number_resources
# Number of static (i.e. cacheable) resources on the page.
# Corresponds to the JSON property `numberStaticResources`
# @return [Fixnum]
attr_accessor :number_static_resources
# Number of response bytes for other resources on the page.
# Corresponds to the JSON property `otherResponseBytes`
# @return [Fixnum]
attr_accessor :other_response_bytes
# Number of uncompressed response bytes for text resources not covered by other
# statistics (i.e non-HTML, non-script, non-CSS resources) on the page.
# Corresponds to the JSON property `textResponseBytes`
# @return [Fixnum]
attr_accessor :text_response_bytes
# Total size of all request bytes sent by the page.
# Corresponds to the JSON property `totalRequestBytes`
# @return [Fixnum]
attr_accessor :total_request_bytes
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@css_response_bytes = args[:css_response_bytes] if args.key?(:css_response_bytes)
@flash_response_bytes = args[:flash_response_bytes] if args.key?(:flash_response_bytes)
@html_response_bytes = args[:html_response_bytes] if args.key?(:html_response_bytes)
@image_response_bytes = args[:image_response_bytes] if args.key?(:image_response_bytes)
@javascript_response_bytes = args[:javascript_response_bytes] if args.key?(:javascript_response_bytes)
@number_css_resources = args[:number_css_resources] if args.key?(:number_css_resources)
@number_hosts = args[:number_hosts] if args.key?(:number_hosts)
@number_js_resources = args[:number_js_resources] if args.key?(:number_js_resources)
@number_resources = args[:number_resources] if args.key?(:number_resources)
@number_static_resources = args[:number_static_resources] if args.key?(:number_static_resources)
@other_response_bytes = args[:other_response_bytes] if args.key?(:other_response_bytes)
@text_response_bytes = args[:text_response_bytes] if args.key?(:text_response_bytes)
@total_request_bytes = args[:total_request_bytes] if args.key?(:total_request_bytes)
end
end
# The name of this rule group: one of "SPEED" or "USABILITY".
class RuleGroup
include Google::Apis::Core::Hashable
# The score (0-100) for this rule group, which indicates how much better a page
# could be in that category (e.g. how much faster, or how much more usable). A
# high score indicates little room for improvement, while a lower score
# indicates more room for improvement.
# Corresponds to the JSON property `score`
# @return [Fixnum]
attr_accessor :score
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@score = args[:score] if args.key?(:score)
end
end
# The version of PageSpeed used to generate these results.
class Version
include Google::Apis::Core::Hashable
# The major version number of PageSpeed used to generate these results.
# Corresponds to the JSON property `major`
# @return [Fixnum]
attr_accessor :major
# The minor version number of PageSpeed used to generate these results.
# Corresponds to the JSON property `minor`
# @return [Fixnum]
attr_accessor :minor
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@major = args[:major] if args.key?(:major)
@minor = args[:minor] if args.key?(:minor)
end
end
end
end
end
end

View File

@ -1,273 +0,0 @@
# 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 PagespeedonlineV2
class FormatString
class Representation < Google::Apis::Core::JsonRepresentation; end
class Arg
class Representation < Google::Apis::Core::JsonRepresentation; end
class Rect
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class SecondaryRect
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
class Image
class Representation < Google::Apis::Core::JsonRepresentation; end
class PageRect
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
class Result
class Representation < Google::Apis::Core::JsonRepresentation; end
class FormattedResults
class Representation < Google::Apis::Core::JsonRepresentation; end
class RuleResult
class Representation < Google::Apis::Core::JsonRepresentation; end
class UrlBlock
class Representation < Google::Apis::Core::JsonRepresentation; end
class Url
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
class PageStats
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class RuleGroup
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class Version
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
class FormatString
# @private
class Representation < Google::Apis::Core::JsonRepresentation
collection :args, as: 'args', class: Google::Apis::PagespeedonlineV2::FormatString::Arg, decorator: Google::Apis::PagespeedonlineV2::FormatString::Arg::Representation
property :format, as: 'format'
end
class Arg
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :key, as: 'key'
collection :rects, as: 'rects', class: Google::Apis::PagespeedonlineV2::FormatString::Arg::Rect, decorator: Google::Apis::PagespeedonlineV2::FormatString::Arg::Rect::Representation
collection :secondary_rects, as: 'secondary_rects', class: Google::Apis::PagespeedonlineV2::FormatString::Arg::SecondaryRect, decorator: Google::Apis::PagespeedonlineV2::FormatString::Arg::SecondaryRect::Representation
property :type, as: 'type'
property :value, as: 'value'
end
class Rect
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :height, as: 'height'
property :left, as: 'left'
property :top, as: 'top'
property :width, as: 'width'
end
end
class SecondaryRect
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :height, as: 'height'
property :left, as: 'left'
property :top, as: 'top'
property :width, as: 'width'
end
end
end
end
class Image
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :data, :base64 => true, as: 'data'
property :height, as: 'height'
property :key, as: 'key'
property :mime_type, as: 'mime_type'
property :page_rect, as: 'page_rect', class: Google::Apis::PagespeedonlineV2::Image::PageRect, decorator: Google::Apis::PagespeedonlineV2::Image::PageRect::Representation
property :width, as: 'width'
end
class PageRect
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :height, as: 'height'
property :left, as: 'left'
property :top, as: 'top'
property :width, as: 'width'
end
end
end
class Result
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :captcha_result, as: 'captchaResult'
property :formatted_results, as: 'formattedResults', class: Google::Apis::PagespeedonlineV2::Result::FormattedResults, decorator: Google::Apis::PagespeedonlineV2::Result::FormattedResults::Representation
property :id, as: 'id'
collection :invalid_rules, as: 'invalidRules'
property :kind, as: 'kind'
property :page_stats, as: 'pageStats', class: Google::Apis::PagespeedonlineV2::Result::PageStats, decorator: Google::Apis::PagespeedonlineV2::Result::PageStats::Representation
property :response_code, as: 'responseCode'
hash :rule_groups, as: 'ruleGroups', class: Google::Apis::PagespeedonlineV2::Result::RuleGroup, decorator: Google::Apis::PagespeedonlineV2::Result::RuleGroup::Representation
property :screenshot, as: 'screenshot', class: Google::Apis::PagespeedonlineV2::Image, decorator: Google::Apis::PagespeedonlineV2::Image::Representation
property :title, as: 'title'
property :version, as: 'version', class: Google::Apis::PagespeedonlineV2::Result::Version, decorator: Google::Apis::PagespeedonlineV2::Result::Version::Representation
end
class FormattedResults
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :locale, as: 'locale'
hash :rule_results, as: 'ruleResults', class: Google::Apis::PagespeedonlineV2::Result::FormattedResults::RuleResult, decorator: Google::Apis::PagespeedonlineV2::Result::FormattedResults::RuleResult::Representation
end
class RuleResult
# @private
class Representation < Google::Apis::Core::JsonRepresentation
collection :groups, as: 'groups'
property :localized_rule_name, as: 'localizedRuleName'
property :rule_impact, as: 'ruleImpact'
property :summary, as: 'summary', class: Google::Apis::PagespeedonlineV2::FormatString, decorator: Google::Apis::PagespeedonlineV2::FormatString::Representation
collection :url_blocks, as: 'urlBlocks', class: Google::Apis::PagespeedonlineV2::Result::FormattedResults::RuleResult::UrlBlock, decorator: Google::Apis::PagespeedonlineV2::Result::FormattedResults::RuleResult::UrlBlock::Representation
end
class UrlBlock
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :header, as: 'header', class: Google::Apis::PagespeedonlineV2::FormatString, decorator: Google::Apis::PagespeedonlineV2::FormatString::Representation
collection :urls, as: 'urls', class: Google::Apis::PagespeedonlineV2::Result::FormattedResults::RuleResult::UrlBlock::Url, decorator: Google::Apis::PagespeedonlineV2::Result::FormattedResults::RuleResult::UrlBlock::Url::Representation
end
class Url
# @private
class Representation < Google::Apis::Core::JsonRepresentation
collection :details, as: 'details', class: Google::Apis::PagespeedonlineV2::FormatString, decorator: Google::Apis::PagespeedonlineV2::FormatString::Representation
property :result, as: 'result', class: Google::Apis::PagespeedonlineV2::FormatString, decorator: Google::Apis::PagespeedonlineV2::FormatString::Representation
end
end
end
end
end
class PageStats
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :css_response_bytes, :numeric_string => true, as: 'cssResponseBytes'
property :flash_response_bytes, :numeric_string => true, as: 'flashResponseBytes'
property :html_response_bytes, :numeric_string => true, as: 'htmlResponseBytes'
property :image_response_bytes, :numeric_string => true, as: 'imageResponseBytes'
property :javascript_response_bytes, :numeric_string => true, as: 'javascriptResponseBytes'
property :number_css_resources, as: 'numberCssResources'
property :number_hosts, as: 'numberHosts'
property :number_js_resources, as: 'numberJsResources'
property :number_resources, as: 'numberResources'
property :number_static_resources, as: 'numberStaticResources'
property :other_response_bytes, :numeric_string => true, as: 'otherResponseBytes'
property :text_response_bytes, :numeric_string => true, as: 'textResponseBytes'
property :total_request_bytes, :numeric_string => true, as: 'totalRequestBytes'
end
end
class RuleGroup
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :score, as: 'score'
end
end
class Version
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :major, as: 'major'
property :minor, as: 'minor'
end
end
end
end
end
end

View File

@ -1,116 +0,0 @@
# 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 '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 PagespeedonlineV2
# PageSpeed Insights API
#
# Analyzes the performance of a web page and provides tailored suggestions to
# make that page faster.
#
# @example
# require 'google/apis/pagespeedonline_v2'
#
# Pagespeedonline = Google::Apis::PagespeedonlineV2 # Alias the module
# service = Pagespeedonline::PagespeedonlineService.new
#
# @see https://developers.google.com/speed/docs/insights/v2/getting-started
class PagespeedonlineService < Google::Apis::Core::BaseService
# @return [String]
# API key. Your API key identifies your project and provides you with API access,
# quota, and reports. Required unless you provide an OAuth 2.0 token.
attr_accessor :key
# @return [String]
# An opaque string that represents a user for quota purposes. Must not exceed 40
# characters.
attr_accessor :quota_user
# @return [String]
# Deprecated. Please use quotaUser instead.
attr_accessor :user_ip
def initialize
super('https://www.googleapis.com/', 'pagespeedonline/v2/')
@batch_path = 'batch/pagespeedonline/v2'
end
# Runs PageSpeed analysis on the page at the specified URL, and returns
# PageSpeed scores, a list of suggestions to make that page faster, and other
# information.
# @param [String] url
# The URL to fetch and analyze
# @param [Boolean] filter_third_party_resources
# Indicates if third party resources should be filtered out before PageSpeed
# analysis.
# @param [String] locale
# The locale used to localize formatted results
# @param [Array<String>, String] rule
# A PageSpeed rule to run; if none are given, all rules are run
# @param [Boolean] screenshot
# Indicates if binary data containing a screenshot should be included
# @param [String] strategy
# The analysis strategy to use
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# An opaque string that represents a user for quota purposes. Must not exceed 40
# characters.
# @param [String] user_ip
# Deprecated. Please use quotaUser instead.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::PagespeedonlineV2::Result] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::PagespeedonlineV2::Result]
#
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
# @raise [Google::Apis::AuthorizationError] Authorization is required
def run_pagespeed(url, filter_third_party_resources: nil, locale: nil, rule: nil, screenshot: nil, strategy: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
command = make_simple_command(:get, 'runPagespeed', options)
command.response_representation = Google::Apis::PagespeedonlineV2::Result::Representation
command.response_class = Google::Apis::PagespeedonlineV2::Result
command.query['filter_third_party_resources'] = filter_third_party_resources unless filter_third_party_resources.nil?
command.query['locale'] = locale unless locale.nil?
command.query['rule'] = rule unless rule.nil?
command.query['screenshot'] = screenshot unless screenshot.nil?
command.query['strategy'] = strategy unless strategy.nil?
command.query['url'] = url unless url.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
command.query['userIp'] = user_ip unless user_ip.nil?
execute_or_queue_command(command, &block)
end
protected
def apply_command_defaults(command)
command.query['key'] = key unless key.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
command.query['userIp'] = user_ip unless user_ip.nil?
end
end
end
end
end

View File

@ -1,32 +0,0 @@
# 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 'google/apis/pagespeedonline_v4/service.rb'
require 'google/apis/pagespeedonline_v4/classes.rb'
require 'google/apis/pagespeedonline_v4/representations.rb'
module Google
module Apis
# PageSpeed Insights API
#
# Analyzes the performance of a web page and provides tailored suggestions to
# make that page faster.
#
# @see https://developers.google.com/speed/docs/insights/v4/getting-started
module PagespeedonlineV4
VERSION = 'V4'
REVISION = '20180606'
end
end
end

View File

@ -1,795 +0,0 @@
# 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 PagespeedonlineV4
#
class PagespeedApiFormatStringV4
include Google::Apis::Core::Hashable
# List of arguments for the format string.
# Corresponds to the JSON property `args`
# @return [Array<Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4::Arg>]
attr_accessor :args
# A localized format string with ``FOO`` placeholders, where 'FOO' is the key of
# the argument whose value should be substituted. For HYPERLINK arguments, the
# format string will instead contain ``BEGIN_FOO`` and ``END_FOO`` for the
# argument with key 'FOO'.
# Corresponds to the JSON property `format`
# @return [String]
attr_accessor :format
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@args = args[:args] if args.key?(:args)
@format = args[:format] if args.key?(:format)
end
#
class Arg
include Google::Apis::Core::Hashable
# The placeholder key for this arg, as a string.
# Corresponds to the JSON property `key`
# @return [String]
attr_accessor :key
# The screen rectangles being referred to, with dimensions measured in CSS
# pixels. This is only ever used for SNAPSHOT_RECT arguments. If this is absent
# for a SNAPSHOT_RECT argument, it means that that argument refers to the entire
# snapshot.
# Corresponds to the JSON property `rects`
# @return [Array<Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4::Arg::Rect>]
attr_accessor :rects
# Secondary screen rectangles being referred to, with dimensions measured in CSS
# pixels. This is only ever used for SNAPSHOT_RECT arguments.
# Corresponds to the JSON property `secondary_rects`
# @return [Array<Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4::Arg::SecondaryRect>]
attr_accessor :secondary_rects
# Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, BYTES, DURATION,
# VERBATIM_STRING, PERCENTAGE, HYPERLINK, or SNAPSHOT_RECT.
# Corresponds to the JSON property `type`
# @return [String]
attr_accessor :type
# Argument value, as a localized string.
# 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)
@rects = args[:rects] if args.key?(:rects)
@secondary_rects = args[:secondary_rects] if args.key?(:secondary_rects)
@type = args[:type] if args.key?(:type)
@value = args[:value] if args.key?(:value)
end
#
class Rect
include Google::Apis::Core::Hashable
#
# Corresponds to the JSON property `height`
# @return [Fixnum]
attr_accessor :height
#
# Corresponds to the JSON property `left`
# @return [Fixnum]
attr_accessor :left
#
# Corresponds to the JSON property `top`
# @return [Fixnum]
attr_accessor :top
#
# Corresponds to the JSON property `width`
# @return [Fixnum]
attr_accessor :width
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@height = args[:height] if args.key?(:height)
@left = args[:left] if args.key?(:left)
@top = args[:top] if args.key?(:top)
@width = args[:width] if args.key?(:width)
end
end
#
class SecondaryRect
include Google::Apis::Core::Hashable
#
# Corresponds to the JSON property `height`
# @return [Fixnum]
attr_accessor :height
#
# Corresponds to the JSON property `left`
# @return [Fixnum]
attr_accessor :left
#
# Corresponds to the JSON property `top`
# @return [Fixnum]
attr_accessor :top
#
# Corresponds to the JSON property `width`
# @return [Fixnum]
attr_accessor :width
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@height = args[:height] if args.key?(:height)
@left = args[:left] if args.key?(:left)
@top = args[:top] if args.key?(:top)
@width = args[:width] if args.key?(:width)
end
end
end
end
#
class PagespeedApiImageV4
include Google::Apis::Core::Hashable
# Image data base64 encoded.
# Corresponds to the JSON property `data`
# NOTE: Values are automatically base64 encoded/decoded in the client library.
# @return [String]
attr_accessor :data
# Height of screenshot in pixels.
# Corresponds to the JSON property `height`
# @return [Fixnum]
attr_accessor :height
# Unique string key, if any, identifying this image.
# Corresponds to the JSON property `key`
# @return [String]
attr_accessor :key
# Mime type of image data (e.g. "image/jpeg").
# Corresponds to the JSON property `mime_type`
# @return [String]
attr_accessor :mime_type
#
# Corresponds to the JSON property `page_rect`
# @return [Google::Apis::PagespeedonlineV4::PagespeedApiImageV4::PageRect]
attr_accessor :page_rect
# Width of screenshot in pixels.
# Corresponds to the JSON property `width`
# @return [Fixnum]
attr_accessor :width
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@data = args[:data] if args.key?(:data)
@height = args[:height] if args.key?(:height)
@key = args[:key] if args.key?(:key)
@mime_type = args[:mime_type] if args.key?(:mime_type)
@page_rect = args[:page_rect] if args.key?(:page_rect)
@width = args[:width] if args.key?(:width)
end
#
class PageRect
include Google::Apis::Core::Hashable
#
# Corresponds to the JSON property `height`
# @return [Fixnum]
attr_accessor :height
#
# Corresponds to the JSON property `left`
# @return [Fixnum]
attr_accessor :left
#
# Corresponds to the JSON property `top`
# @return [Fixnum]
attr_accessor :top
#
# Corresponds to the JSON property `width`
# @return [Fixnum]
attr_accessor :width
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@height = args[:height] if args.key?(:height)
@left = args[:left] if args.key?(:left)
@top = args[:top] if args.key?(:top)
@width = args[:width] if args.key?(:width)
end
end
end
#
class PagespeedApiPagespeedResponseV4
include Google::Apis::Core::Hashable
# The captcha verify result
# Corresponds to the JSON property `captchaResult`
# @return [String]
attr_accessor :captcha_result
# Localized PageSpeed results. Contains a ruleResults entry for each PageSpeed
# rule instantiated and run by the server.
# Corresponds to the JSON property `formattedResults`
# @return [Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::FormattedResults]
attr_accessor :formatted_results
# Canonicalized and final URL for the document, after following page redirects (
# if any).
# Corresponds to the JSON property `id`
# @return [String]
attr_accessor :id
# List of rules that were specified in the request, but which the server did not
# know how to instantiate.
# Corresponds to the JSON property `invalidRules`
# @return [Array<String>]
attr_accessor :invalid_rules
# Kind of result.
# Corresponds to the JSON property `kind`
# @return [String]
attr_accessor :kind
# Metrics of end users' page loading experience.
# Corresponds to the JSON property `loadingExperience`
# @return [Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::LoadingExperience]
attr_accessor :loading_experience
# Summary statistics for the page, such as number of JavaScript bytes, number of
# HTML bytes, etc.
# Corresponds to the JSON property `pageStats`
# @return [Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::PageStats]
attr_accessor :page_stats
# Response code for the document. 200 indicates a normal page load. 4xx/5xx
# indicates an error.
# Corresponds to the JSON property `responseCode`
# @return [Fixnum]
attr_accessor :response_code
# A map with one entry for each rule group in these results.
# Corresponds to the JSON property `ruleGroups`
# @return [Hash<String,Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::RuleGroup>]
attr_accessor :rule_groups
# Base64-encoded screenshot of the page that was analyzed.
# Corresponds to the JSON property `screenshot`
# @return [Google::Apis::PagespeedonlineV4::PagespeedApiImageV4]
attr_accessor :screenshot
# Additional base64-encoded screenshots of the page, in various partial render
# states.
# Corresponds to the JSON property `snapshots`
# @return [Array<Google::Apis::PagespeedonlineV4::PagespeedApiImageV4>]
attr_accessor :snapshots
# Title of the page, as displayed in the browser's title bar.
# Corresponds to the JSON property `title`
# @return [String]
attr_accessor :title
# The version of PageSpeed used to generate these results.
# Corresponds to the JSON property `version`
# @return [Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::Version]
attr_accessor :version
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@captcha_result = args[:captcha_result] if args.key?(:captcha_result)
@formatted_results = args[:formatted_results] if args.key?(:formatted_results)
@id = args[:id] if args.key?(:id)
@invalid_rules = args[:invalid_rules] if args.key?(:invalid_rules)
@kind = args[:kind] if args.key?(:kind)
@loading_experience = args[:loading_experience] if args.key?(:loading_experience)
@page_stats = args[:page_stats] if args.key?(:page_stats)
@response_code = args[:response_code] if args.key?(:response_code)
@rule_groups = args[:rule_groups] if args.key?(:rule_groups)
@screenshot = args[:screenshot] if args.key?(:screenshot)
@snapshots = args[:snapshots] if args.key?(:snapshots)
@title = args[:title] if args.key?(:title)
@version = args[:version] if args.key?(:version)
end
# Localized PageSpeed results. Contains a ruleResults entry for each PageSpeed
# rule instantiated and run by the server.
class FormattedResults
include Google::Apis::Core::Hashable
# The locale of the formattedResults, e.g. "en_US".
# Corresponds to the JSON property `locale`
# @return [String]
attr_accessor :locale
# Dictionary of formatted rule results, with one entry for each PageSpeed rule
# instantiated and run by the server.
# Corresponds to the JSON property `ruleResults`
# @return [Hash<String,Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::FormattedResults::RuleResult>]
attr_accessor :rule_results
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@locale = args[:locale] if args.key?(:locale)
@rule_results = args[:rule_results] if args.key?(:rule_results)
end
# The enum-like identifier for this rule. For instance "EnableKeepAlive" or "
# AvoidCssImport". Not localized.
class RuleResult
include Google::Apis::Core::Hashable
# Whether this rule is in 'beta'. Rules in beta are new rules that are being
# tested, which do not impact the overall score.
# Corresponds to the JSON property `beta`
# @return [Boolean]
attr_accessor :beta
alias_method :beta?, :beta
# List of rule groups that this rule belongs to. Each entry in the list is one
# of "SPEED", "USABILITY", or "SECURITY".
# Corresponds to the JSON property `groups`
# @return [Array<String>]
attr_accessor :groups
# Localized name of the rule, intended for presentation to a user.
# Corresponds to the JSON property `localizedRuleName`
# @return [String]
attr_accessor :localized_rule_name
# The impact (unbounded floating point value) that implementing the suggestions
# for this rule would have on making the page faster. Impact is comparable
# between rules to determine which rule's suggestions would have a higher or
# lower impact on making a page faster. For instance, if enabling compression
# would save 1MB, while optimizing images would save 500kB, the enable
# compression rule would have 2x the impact of the image optimization rule, all
# other things being equal.
# Corresponds to the JSON property `ruleImpact`
# @return [Float]
attr_accessor :rule_impact
# A brief summary description for the rule, indicating at a high level what
# should be done to follow the rule and what benefit can be gained by doing so.
# Corresponds to the JSON property `summary`
# @return [Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4]
attr_accessor :summary
# List of blocks of URLs. Each block may contain a heading and a list of URLs.
# Each URL may optionally include additional details.
# Corresponds to the JSON property `urlBlocks`
# @return [Array<Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::FormattedResults::RuleResult::UrlBlock>]
attr_accessor :url_blocks
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@beta = args[:beta] if args.key?(:beta)
@groups = args[:groups] if args.key?(:groups)
@localized_rule_name = args[:localized_rule_name] if args.key?(:localized_rule_name)
@rule_impact = args[:rule_impact] if args.key?(:rule_impact)
@summary = args[:summary] if args.key?(:summary)
@url_blocks = args[:url_blocks] if args.key?(:url_blocks)
end
#
class UrlBlock
include Google::Apis::Core::Hashable
# Heading to be displayed with the list of URLs.
# Corresponds to the JSON property `header`
# @return [Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4]
attr_accessor :header
# List of entries that provide information about URLs in the url block. Optional.
# Corresponds to the JSON property `urls`
# @return [Array<Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::FormattedResults::RuleResult::UrlBlock::Url>]
attr_accessor :urls
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@header = args[:header] if args.key?(:header)
@urls = args[:urls] if args.key?(:urls)
end
#
class Url
include Google::Apis::Core::Hashable
# List of entries that provide additional details about a single URL. Optional.
# Corresponds to the JSON property `details`
# @return [Array<Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4>]
attr_accessor :details
# A format string that gives information about the URL, and a list of arguments
# for that format string.
# Corresponds to the JSON property `result`
# @return [Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4]
attr_accessor :result
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@details = args[:details] if args.key?(:details)
@result = args[:result] if args.key?(:result)
end
end
end
end
end
# Metrics of end users' page loading experience.
class LoadingExperience
include Google::Apis::Core::Hashable
# The url, pattern or origin which the metrics are on.
# Corresponds to the JSON property `id`
# @return [String]
attr_accessor :id
#
# Corresponds to the JSON property `initial_url`
# @return [String]
attr_accessor :initial_url
#
# Corresponds to the JSON property `metrics`
# @return [Hash<String,Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::LoadingExperience::Metric>]
attr_accessor :metrics
#
# Corresponds to the JSON property `overall_category`
# @return [String]
attr_accessor :overall_category
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@id = args[:id] if args.key?(:id)
@initial_url = args[:initial_url] if args.key?(:initial_url)
@metrics = args[:metrics] if args.key?(:metrics)
@overall_category = args[:overall_category] if args.key?(:overall_category)
end
# The type of the metric.
class Metric
include Google::Apis::Core::Hashable
#
# Corresponds to the JSON property `category`
# @return [String]
attr_accessor :category
#
# Corresponds to the JSON property `distributions`
# @return [Array<Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::LoadingExperience::Metric::Distribution>]
attr_accessor :distributions
#
# Corresponds to the JSON property `median`
# @return [Fixnum]
attr_accessor :median
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@category = args[:category] if args.key?(:category)
@distributions = args[:distributions] if args.key?(:distributions)
@median = args[:median] if args.key?(:median)
end
#
class Distribution
include Google::Apis::Core::Hashable
#
# Corresponds to the JSON property `max`
# @return [Fixnum]
attr_accessor :max
#
# Corresponds to the JSON property `min`
# @return [Fixnum]
attr_accessor :min
#
# Corresponds to the JSON property `proportion`
# @return [Float]
attr_accessor :proportion
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@max = args[:max] if args.key?(:max)
@min = args[:min] if args.key?(:min)
@proportion = args[:proportion] if args.key?(:proportion)
end
end
end
end
# Summary statistics for the page, such as number of JavaScript bytes, number of
# HTML bytes, etc.
class PageStats
include Google::Apis::Core::Hashable
# Content management system (CMS) used for the page.
# Corresponds to the JSON property `cms`
# @return [String]
attr_accessor :cms
# Number of uncompressed response bytes for CSS resources on the page.
# Corresponds to the JSON property `cssResponseBytes`
# @return [Fixnum]
attr_accessor :css_response_bytes
# Number of response bytes for flash resources on the page.
# Corresponds to the JSON property `flashResponseBytes`
# @return [Fixnum]
attr_accessor :flash_response_bytes
# Number of uncompressed response bytes for the main HTML document and all
# iframes on the page.
# Corresponds to the JSON property `htmlResponseBytes`
# @return [Fixnum]
attr_accessor :html_response_bytes
# Number of response bytes for image resources on the page.
# Corresponds to the JSON property `imageResponseBytes`
# @return [Fixnum]
attr_accessor :image_response_bytes
# Number of uncompressed response bytes for JS resources on the page.
# Corresponds to the JSON property `javascriptResponseBytes`
# @return [Fixnum]
attr_accessor :javascript_response_bytes
# The needed round trips to load render blocking resources
# Corresponds to the JSON property `numRenderBlockingRoundTrips`
# @return [Fixnum]
attr_accessor :num_render_blocking_round_trips
# The needed round trips to load the full page
# Corresponds to the JSON property `numTotalRoundTrips`
# @return [Fixnum]
attr_accessor :num_total_round_trips
# Number of CSS resources referenced by the page.
# Corresponds to the JSON property `numberCssResources`
# @return [Fixnum]
attr_accessor :number_css_resources
# Number of unique hosts referenced by the page.
# Corresponds to the JSON property `numberHosts`
# @return [Fixnum]
attr_accessor :number_hosts
# Number of JavaScript resources referenced by the page.
# Corresponds to the JSON property `numberJsResources`
# @return [Fixnum]
attr_accessor :number_js_resources
# Number of HTTP resources loaded by the page.
# Corresponds to the JSON property `numberResources`
# @return [Fixnum]
attr_accessor :number_resources
# Number of roboted resources.
# Corresponds to the JSON property `numberRobotedResources`
# @return [Fixnum]
attr_accessor :number_roboted_resources
# Number of static (i.e. cacheable) resources on the page.
# Corresponds to the JSON property `numberStaticResources`
# @return [Fixnum]
attr_accessor :number_static_resources
# Number of transient-failed resources.
# Corresponds to the JSON property `numberTransientFetchFailureResources`
# @return [Fixnum]
attr_accessor :number_transient_fetch_failure_resources
# Number of response bytes for other resources on the page.
# Corresponds to the JSON property `otherResponseBytes`
# @return [Fixnum]
attr_accessor :other_response_bytes
# Number of over-the-wire bytes, uses the default gzip compression strategy as
# an estimation.
# Corresponds to the JSON property `overTheWireResponseBytes`
# @return [Fixnum]
attr_accessor :over_the_wire_response_bytes
# List of roboted urls.
# Corresponds to the JSON property `robotedUrls`
# @return [Array<String>]
attr_accessor :roboted_urls
# Number of uncompressed response bytes for text resources not covered by other
# statistics (i.e non-HTML, non-script, non-CSS resources) on the page.
# Corresponds to the JSON property `textResponseBytes`
# @return [Fixnum]
attr_accessor :text_response_bytes
# Total size of all request bytes sent by the page.
# Corresponds to the JSON property `totalRequestBytes`
# @return [Fixnum]
attr_accessor :total_request_bytes
# List of transient fetch failure urls.
# Corresponds to the JSON property `transientFetchFailureUrls`
# @return [Array<String>]
attr_accessor :transient_fetch_failure_urls
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@cms = args[:cms] if args.key?(:cms)
@css_response_bytes = args[:css_response_bytes] if args.key?(:css_response_bytes)
@flash_response_bytes = args[:flash_response_bytes] if args.key?(:flash_response_bytes)
@html_response_bytes = args[:html_response_bytes] if args.key?(:html_response_bytes)
@image_response_bytes = args[:image_response_bytes] if args.key?(:image_response_bytes)
@javascript_response_bytes = args[:javascript_response_bytes] if args.key?(:javascript_response_bytes)
@num_render_blocking_round_trips = args[:num_render_blocking_round_trips] if args.key?(:num_render_blocking_round_trips)
@num_total_round_trips = args[:num_total_round_trips] if args.key?(:num_total_round_trips)
@number_css_resources = args[:number_css_resources] if args.key?(:number_css_resources)
@number_hosts = args[:number_hosts] if args.key?(:number_hosts)
@number_js_resources = args[:number_js_resources] if args.key?(:number_js_resources)
@number_resources = args[:number_resources] if args.key?(:number_resources)
@number_roboted_resources = args[:number_roboted_resources] if args.key?(:number_roboted_resources)
@number_static_resources = args[:number_static_resources] if args.key?(:number_static_resources)
@number_transient_fetch_failure_resources = args[:number_transient_fetch_failure_resources] if args.key?(:number_transient_fetch_failure_resources)
@other_response_bytes = args[:other_response_bytes] if args.key?(:other_response_bytes)
@over_the_wire_response_bytes = args[:over_the_wire_response_bytes] if args.key?(:over_the_wire_response_bytes)
@roboted_urls = args[:roboted_urls] if args.key?(:roboted_urls)
@text_response_bytes = args[:text_response_bytes] if args.key?(:text_response_bytes)
@total_request_bytes = args[:total_request_bytes] if args.key?(:total_request_bytes)
@transient_fetch_failure_urls = args[:transient_fetch_failure_urls] if args.key?(:transient_fetch_failure_urls)
end
end
# The name of this rule group: one of "SPEED", "USABILITY", or "SECURITY".
class RuleGroup
include Google::Apis::Core::Hashable
#
# Corresponds to the JSON property `pass`
# @return [Boolean]
attr_accessor :pass
alias_method :pass?, :pass
# The score (0-100) for this rule group, which indicates how much better a page
# could be in that category (e.g. how much faster, or how much more usable, or
# how much more secure). A high score indicates little room for improvement,
# while a lower score indicates more room for improvement.
# Corresponds to the JSON property `score`
# @return [Fixnum]
attr_accessor :score
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@pass = args[:pass] if args.key?(:pass)
@score = args[:score] if args.key?(:score)
end
end
# The version of PageSpeed used to generate these results.
class Version
include Google::Apis::Core::Hashable
# The major version number of PageSpeed used to generate these results.
# Corresponds to the JSON property `major`
# @return [Fixnum]
attr_accessor :major
# The minor version number of PageSpeed used to generate these results.
# Corresponds to the JSON property `minor`
# @return [Fixnum]
attr_accessor :minor
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@major = args[:major] if args.key?(:major)
@minor = args[:minor] if args.key?(:minor)
end
end
end
end
end
end

View File

@ -1,335 +0,0 @@
# 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 PagespeedonlineV4
class PagespeedApiFormatStringV4
class Representation < Google::Apis::Core::JsonRepresentation; end
class Arg
class Representation < Google::Apis::Core::JsonRepresentation; end
class Rect
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class SecondaryRect
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
class PagespeedApiImageV4
class Representation < Google::Apis::Core::JsonRepresentation; end
class PageRect
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
class PagespeedApiPagespeedResponseV4
class Representation < Google::Apis::Core::JsonRepresentation; end
class FormattedResults
class Representation < Google::Apis::Core::JsonRepresentation; end
class RuleResult
class Representation < Google::Apis::Core::JsonRepresentation; end
class UrlBlock
class Representation < Google::Apis::Core::JsonRepresentation; end
class Url
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
class LoadingExperience
class Representation < Google::Apis::Core::JsonRepresentation; end
class Metric
class Representation < Google::Apis::Core::JsonRepresentation; end
class Distribution
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
class PageStats
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class RuleGroup
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
class Version
class Representation < Google::Apis::Core::JsonRepresentation; end
include Google::Apis::Core::JsonObjectSupport
end
include Google::Apis::Core::JsonObjectSupport
end
class PagespeedApiFormatStringV4
# @private
class Representation < Google::Apis::Core::JsonRepresentation
collection :args, as: 'args', class: Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4::Arg, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4::Arg::Representation
property :format, as: 'format'
end
class Arg
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :key, as: 'key'
collection :rects, as: 'rects', class: Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4::Arg::Rect, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4::Arg::Rect::Representation
collection :secondary_rects, as: 'secondary_rects', class: Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4::Arg::SecondaryRect, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4::Arg::SecondaryRect::Representation
property :type, as: 'type'
property :value, as: 'value'
end
class Rect
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :height, as: 'height'
property :left, as: 'left'
property :top, as: 'top'
property :width, as: 'width'
end
end
class SecondaryRect
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :height, as: 'height'
property :left, as: 'left'
property :top, as: 'top'
property :width, as: 'width'
end
end
end
end
class PagespeedApiImageV4
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :data, :base64 => true, as: 'data'
property :height, as: 'height'
property :key, as: 'key'
property :mime_type, as: 'mime_type'
property :page_rect, as: 'page_rect', class: Google::Apis::PagespeedonlineV4::PagespeedApiImageV4::PageRect, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiImageV4::PageRect::Representation
property :width, as: 'width'
end
class PageRect
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :height, as: 'height'
property :left, as: 'left'
property :top, as: 'top'
property :width, as: 'width'
end
end
end
class PagespeedApiPagespeedResponseV4
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :captcha_result, as: 'captchaResult'
property :formatted_results, as: 'formattedResults', class: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::FormattedResults, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::FormattedResults::Representation
property :id, as: 'id'
collection :invalid_rules, as: 'invalidRules'
property :kind, as: 'kind'
property :loading_experience, as: 'loadingExperience', class: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::LoadingExperience, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::LoadingExperience::Representation
property :page_stats, as: 'pageStats', class: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::PageStats, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::PageStats::Representation
property :response_code, as: 'responseCode'
hash :rule_groups, as: 'ruleGroups', class: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::RuleGroup, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::RuleGroup::Representation
property :screenshot, as: 'screenshot', class: Google::Apis::PagespeedonlineV4::PagespeedApiImageV4, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiImageV4::Representation
collection :snapshots, as: 'snapshots', class: Google::Apis::PagespeedonlineV4::PagespeedApiImageV4, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiImageV4::Representation
property :title, as: 'title'
property :version, as: 'version', class: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::Version, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::Version::Representation
end
class FormattedResults
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :locale, as: 'locale'
hash :rule_results, as: 'ruleResults', class: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::FormattedResults::RuleResult, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::FormattedResults::RuleResult::Representation
end
class RuleResult
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :beta, as: 'beta'
collection :groups, as: 'groups'
property :localized_rule_name, as: 'localizedRuleName'
property :rule_impact, as: 'ruleImpact'
property :summary, as: 'summary', class: Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4::Representation
collection :url_blocks, as: 'urlBlocks', class: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::FormattedResults::RuleResult::UrlBlock, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::FormattedResults::RuleResult::UrlBlock::Representation
end
class UrlBlock
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :header, as: 'header', class: Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4::Representation
collection :urls, as: 'urls', class: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::FormattedResults::RuleResult::UrlBlock::Url, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::FormattedResults::RuleResult::UrlBlock::Url::Representation
end
class Url
# @private
class Representation < Google::Apis::Core::JsonRepresentation
collection :details, as: 'details', class: Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4::Representation
property :result, as: 'result', class: Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiFormatStringV4::Representation
end
end
end
end
end
class LoadingExperience
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :id, as: 'id'
property :initial_url, as: 'initial_url'
hash :metrics, as: 'metrics', class: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::LoadingExperience::Metric, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::LoadingExperience::Metric::Representation
property :overall_category, as: 'overall_category'
end
class Metric
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :category, as: 'category'
collection :distributions, as: 'distributions', class: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::LoadingExperience::Metric::Distribution, decorator: Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::LoadingExperience::Metric::Distribution::Representation
property :median, as: 'median'
end
class Distribution
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :max, as: 'max'
property :min, as: 'min'
property :proportion, as: 'proportion'
end
end
end
end
class PageStats
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :cms, as: 'cms'
property :css_response_bytes, :numeric_string => true, as: 'cssResponseBytes'
property :flash_response_bytes, :numeric_string => true, as: 'flashResponseBytes'
property :html_response_bytes, :numeric_string => true, as: 'htmlResponseBytes'
property :image_response_bytes, :numeric_string => true, as: 'imageResponseBytes'
property :javascript_response_bytes, :numeric_string => true, as: 'javascriptResponseBytes'
property :num_render_blocking_round_trips, as: 'numRenderBlockingRoundTrips'
property :num_total_round_trips, as: 'numTotalRoundTrips'
property :number_css_resources, as: 'numberCssResources'
property :number_hosts, as: 'numberHosts'
property :number_js_resources, as: 'numberJsResources'
property :number_resources, as: 'numberResources'
property :number_roboted_resources, as: 'numberRobotedResources'
property :number_static_resources, as: 'numberStaticResources'
property :number_transient_fetch_failure_resources, as: 'numberTransientFetchFailureResources'
property :other_response_bytes, :numeric_string => true, as: 'otherResponseBytes'
property :over_the_wire_response_bytes, :numeric_string => true, as: 'overTheWireResponseBytes'
collection :roboted_urls, as: 'robotedUrls'
property :text_response_bytes, :numeric_string => true, as: 'textResponseBytes'
property :total_request_bytes, :numeric_string => true, as: 'totalRequestBytes'
collection :transient_fetch_failure_urls, as: 'transientFetchFailureUrls'
end
end
class RuleGroup
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :pass, as: 'pass'
property :score, as: 'score'
end
end
class Version
# @private
class Representation < Google::Apis::Core::JsonRepresentation
property :major, as: 'major'
property :minor, as: 'minor'
end
end
end
end
end
end

View File

@ -1,125 +0,0 @@
# 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 '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 PagespeedonlineV4
# PageSpeed Insights API
#
# Analyzes the performance of a web page and provides tailored suggestions to
# make that page faster.
#
# @example
# require 'google/apis/pagespeedonline_v4'
#
# Pagespeedonline = Google::Apis::PagespeedonlineV4 # Alias the module
# service = Pagespeedonline::PagespeedonlineService.new
#
# @see https://developers.google.com/speed/docs/insights/v4/getting-started
class PagespeedonlineService < Google::Apis::Core::BaseService
# @return [String]
# API key. Your API key identifies your project and provides you with API access,
# quota, and reports. Required unless you provide an OAuth 2.0 token.
attr_accessor :key
# @return [String]
# An opaque string that represents a user for quota purposes. Must not exceed 40
# characters.
attr_accessor :quota_user
# @return [String]
# Deprecated. Please use quotaUser instead.
attr_accessor :user_ip
def initialize
super('https://www.googleapis.com/', 'pagespeedonline/v4/')
@batch_path = 'batch/pagespeedonline/v4'
end
# Runs PageSpeed analysis on the page at the specified URL, and returns
# PageSpeed scores, a list of suggestions to make that page faster, and other
# information.
# @param [String] url
# The URL to fetch and analyze
# @param [Boolean] filter_third_party_resources
# Indicates if third party resources should be filtered out before PageSpeed
# analysis.
# @param [String] locale
# The locale used to localize formatted results
# @param [Array<String>, String] rule
# A PageSpeed rule to run; if none are given, all rules are run
# @param [Boolean] screenshot
# Indicates if binary data containing a screenshot should be included
# @param [Boolean] snapshots
# Indicates if binary data containing snapshot images should be included
# @param [String] strategy
# The analysis strategy (desktop or mobile) to use, and desktop is the default
# @param [String] utm_campaign
# Campaign name for analytics.
# @param [String] utm_source
# Campaign source for analytics.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# An opaque string that represents a user for quota purposes. Must not exceed 40
# characters.
# @param [String] user_ip
# Deprecated. Please use quotaUser instead.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4]
#
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
# @raise [Google::Apis::AuthorizationError] Authorization is required
def runpagespeed_pagespeedapi(url, filter_third_party_resources: nil, locale: nil, rule: nil, screenshot: nil, snapshots: nil, strategy: nil, utm_campaign: nil, utm_source: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
command = make_simple_command(:get, 'runPagespeed', options)
command.response_representation = Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4::Representation
command.response_class = Google::Apis::PagespeedonlineV4::PagespeedApiPagespeedResponseV4
command.query['filter_third_party_resources'] = filter_third_party_resources unless filter_third_party_resources.nil?
command.query['locale'] = locale unless locale.nil?
command.query['rule'] = rule unless rule.nil?
command.query['screenshot'] = screenshot unless screenshot.nil?
command.query['snapshots'] = snapshots unless snapshots.nil?
command.query['strategy'] = strategy unless strategy.nil?
command.query['url'] = url unless url.nil?
command.query['utm_campaign'] = utm_campaign unless utm_campaign.nil?
command.query['utm_source'] = utm_source unless utm_source.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
command.query['userIp'] = user_ip unless user_ip.nil?
execute_or_queue_command(command, &block)
end
protected
def apply_command_defaults(command)
command.query['key'] = key unless key.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
command.query['userIp'] = user_ip unless user_ip.nil?
end
end
end
end
end

View File

@ -26,7 +26,7 @@ module Google
# @see https://cloud.google.com/spanner/
module SpannerV1
VERSION = 'V1'
REVISION = '20200508'
REVISION = '20200522'
# View and manage your data across Google Cloud Platform services
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'

View File

@ -1434,6 +1434,9 @@ module Google
# Requests for policies with any conditional bindings must specify version 3.
# Policies without any conditional bindings may specify any valid value or
# leave the field unset.
# To learn which resources support conditions in their IAM policies, see the
# [IAM
# documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
# Corresponds to the JSON property `requestedPolicyVersion`
# @return [Fixnum]
attr_accessor :requested_policy_version
@ -2534,10 +2537,13 @@ module Google
# Google groups, and domains (such as G Suite). A `role` is a named list of
# permissions; each `role` can be an IAM predefined role or a user-created
# custom role.
# Optionally, a `binding` can specify a `condition`, which is a logical
# expression that allows access to a resource only if the expression evaluates
# to `true`. A condition can add constraints based on attributes of the
# request, the resource, or both.
# For some types of Google Cloud resources, a `binding` can also specify a
# `condition`, which is a logical expression that allows access to a resource
# only if the expression evaluates to `true`. A condition can add constraints
# based on attributes of the request, the resource, or both. To learn which
# resources support conditions in their IAM policies, see the
# [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
# policies).
# **JSON example:**
# `
# "bindings": [
@ -2552,7 +2558,9 @@ module Google
# `,
# `
# "role": "roles/resourcemanager.organizationViewer",
# "members": ["user:eve@example.com"],
# "members": [
# "user:eve@example.com"
# ],
# "condition": `
# "title": "expirable access",
# "description": "Does not grant access after Sep 2020",
@ -2625,6 +2633,9 @@ module Google
# the conditions in the version `3` policy are lost.
# If a policy does not include any conditions, operations on that policy may
# specify any valid version or leave the field unset.
# To learn which resources support conditions in their IAM policies, see the
# [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
# policies).
# Corresponds to the JSON property `version`
# @return [Fixnum]
attr_accessor :version
@ -2657,6 +2668,9 @@ module Google
# SPANNER_SYS.SUPPORTED_OPTIMIZER_VERSIONS. Executing a SQL statement
# with an invalid optimizer version will fail with a syntax error
# (`INVALID_ARGUMENT`) status.
# See
# https://cloud.google.com/spanner/docs/query-optimizer/manage-query-optimizer
# for more information on managing the query optimizer.
# The `optimizer_version` statement hint has precedence over this setting.
# Corresponds to the JSON property `optimizerVersion`
# @return [String]
@ -3223,10 +3237,13 @@ module Google
# Google groups, and domains (such as G Suite). A `role` is a named list of
# permissions; each `role` can be an IAM predefined role or a user-created
# custom role.
# Optionally, a `binding` can specify a `condition`, which is a logical
# expression that allows access to a resource only if the expression evaluates
# to `true`. A condition can add constraints based on attributes of the
# request, the resource, or both.
# For some types of Google Cloud resources, a `binding` can also specify a
# `condition`, which is a logical expression that allows access to a resource
# only if the expression evaluates to `true`. A condition can add constraints
# based on attributes of the request, the resource, or both. To learn which
# resources support conditions in their IAM policies, see the
# [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
# policies).
# **JSON example:**
# `
# "bindings": [
@ -3241,7 +3258,9 @@ module Google
# `,
# `
# "role": "roles/resourcemanager.organizationViewer",
# "members": ["user:eve@example.com"],
# "members": [
# "user:eve@example.com"
# ],
# "condition": `
# "title": "expirable access",
# "description": "Does not grant access after Sep 2020",

View File

@ -26,7 +26,7 @@ module Google
# @see https://developers.google.com/youtube/
module YoutubeV3
VERSION = 'V3'
REVISION = '20200518'
REVISION = '20200522'
# Manage your YouTube account
AUTH_YOUTUBE = 'https://www.googleapis.com/auth/youtube'

View File

@ -609,7 +609,7 @@ module Google
# The date and time that the video was uploaded. The value is specified
# in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `publishedAt`
# @return [String]
attr_accessor :published_at
@ -800,7 +800,7 @@ module Google
# The date and time when the caption track was last updated. The value is
# specified in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `lastUpdated`
# @return [String]
attr_accessor :last_updated
@ -1200,7 +1200,7 @@ module Google
# The date and time of when the channel was linked to the content owner.
# The value is specified in <a href="//www.w3.org/TR/NOTE-datetime">ISO
# 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `timeLinked`
# @return [String]
attr_accessor :time_linked
@ -1769,7 +1769,7 @@ module Google
# The date and time that the channel was created. The value is specified in
# < a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `publishedAt`
# @return [String]
attr_accessor :published_at
@ -2078,7 +2078,7 @@ module Google
# The date and time when the comment was orignally published. The value is
# specified in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `publishedAt`
# @return [String]
attr_accessor :published_at
@ -2100,7 +2100,7 @@ module Google
# The date and time when was last updated . The value is
# specified in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `updatedAt`
# @return [String]
attr_accessor :updated_at
@ -3945,7 +3945,7 @@ module Google
# The date and time that the broadcast actually ended. This information is
# only available once the broadcast's state is <code>complete</code>. The
# value is specified in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `actualEndTime`
# @return [String]
attr_accessor :actual_end_time
@ -3953,7 +3953,7 @@ module Google
# The date and time that the broadcast actually started. This information is
# only available once the broadcast's state is <code>live</code>. The
# value is specified in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `actualStartTime`
# @return [String]
attr_accessor :actual_start_time
@ -3988,21 +3988,21 @@ module Google
# The date and time that the broadcast was added to YouTube's live broadcast
# schedule. The value is specified in
# <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `publishedAt`
# @return [String]
attr_accessor :published_at
# The date and time that the broadcast is scheduled to end. The value
# is specified in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `scheduledEndTime`
# @return [String]
attr_accessor :scheduled_end_time
# The date and time that the broadcast is scheduled to start. The value
# is specified in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `scheduledStartTime`
# @return [String]
attr_accessor :scheduled_start_time
@ -4403,7 +4403,7 @@ module Google
# The date and time when the underlying stream went offline. The value is
# specified in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `offlineAt`
# @return [String]
attr_accessor :offline_at
@ -4520,7 +4520,7 @@ module Google
# The date and time when the message was orignally published. The value is
# specified in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `publishedAt`
# @return [String]
attr_accessor :published_at
@ -5116,7 +5116,7 @@ module Google
# The date and time that the stream was created. The value is specified in
# <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `publishedAt`
# @return [String]
attr_accessor :published_at
@ -5866,7 +5866,7 @@ module Google
# The date and time that the video was published to YouTube. The value is
# specified in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `videoPublishedAt`
# @return [String]
attr_accessor :video_published_at
@ -5994,7 +5994,7 @@ module Google
# The date and time that the item was added to the playlist. The value is
# specified in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `publishedAt`
# @return [String]
attr_accessor :published_at
@ -6199,7 +6199,7 @@ module Google
# The date and time that the playlist was created. The value is specified
# in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `publishedAt`
# @return [String]
attr_accessor :published_at
@ -6559,7 +6559,7 @@ module Google
# The creation date and time of the resource that the search result
# identifies. The value is specified in <a
# href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `publishedAt`
# @return [String]
attr_accessor :published_at
@ -6909,7 +6909,7 @@ module Google
# The date and time that the subscription was created. The value is
# specified in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `publishedAt`
# @return [String]
attr_accessor :published_at
@ -7108,7 +7108,7 @@ module Google
# The date and time when the event occurred. The value is
# specified in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `createdAt`
# @return [String]
attr_accessor :created_at
@ -8224,7 +8224,7 @@ module Google
# The time that the broadcast actually ended. The value is specified
# in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format. This value will not be
# format. This value will not be
# available until the broadcast is over.
# Corresponds to the JSON property `actualEndTime`
# @return [String]
@ -8232,7 +8232,7 @@ module Google
# The time that the broadcast actually started. The value is specified
# in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format. This value will not be
# format. This value will not be
# available until the broadcast begins.
# Corresponds to the JSON property `actualStartTime`
# @return [String]
@ -8251,7 +8251,7 @@ module Google
# The time that the broadcast is scheduled to end. The value is specified
# in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format. If the value is empty or
# format. If the value is empty or
# the property is not present, then the broadcast is scheduled to continue
# indefinitely.
# Corresponds to the JSON property `scheduledEndTime`
@ -8260,7 +8260,7 @@ module Google
# The time that the broadcast is scheduled to begin. The value is specified
# in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `scheduledStartTime`
# @return [String]
attr_accessor :scheduled_start_time
@ -8650,7 +8650,7 @@ module Google
# The date and time that the video was uploaded. The value is specified
# in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `publishedAt`
# @return [String]
attr_accessor :published_at
@ -8787,7 +8787,7 @@ module Google
# The date and time when the video is scheduled to publish. It can be set
# only if the privacy status of the video is private. The value is specified
# in <a href="//www.w3.org/TR/NOTE-datetime">ISO 8601</a>
# (<code>YYYY-MM-DDThh:mm:ss.sZ</code>) format.
# format.
# Corresponds to the JSON property `publishAt`
# @return [String]
attr_accessor :publish_at

View File

@ -48,41 +48,6 @@ module Google
@batch_path = 'batch/youtube/v3'
end
# Inserts a new resource into this collection.
# @param [Array<String>, String] part
# The <code><strong>part</strong></code> parameter serves two purposes in
# this operation. It identifies the properties that the write operation will
# set as well as the properties that the API response will include.
# @param [Google::Apis::YoutubeV3::Activity] activity_object
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::YoutubeV3::Activity] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::YoutubeV3::Activity]
#
# @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
# @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
# @raise [Google::Apis::AuthorizationError] Authorization is required
def insert_activity(part, activity_object = nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:post, 'youtube/v3/activities', options)
command.request_representation = Google::Apis::YoutubeV3::Activity::Representation
command.request_object = activity_object
command.response_representation = Google::Apis::YoutubeV3::Activity::Representation
command.response_class = Google::Apis::YoutubeV3::Activity
command.query['part'] = part unless part.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Retrieves a list of resources, possibly filtered.
# @param [Array<String>, String] part
# The <code><strong>part</strong></code> parameter specifies a