Autogenerated update (2017-08-25)
Add: - adexperiencereport_v1 - androiddeviceprovisioning_v1 - androidmanagement_v1 - bigquerydatatransfer_v1 - cloudtrace_v2 - clouduseraccounts_vm_alpha - consumersurveys_v2 - dlp_v2beta1 - oslogin_v1alpha - playcustomapp_v1 - playmoviespartner_v1 - safebrowsing_v4 - spectrum_v1explorer - speech_v1 - streetviewpublish_v1 - vault_v1 - videointelligence_v1beta1 Update: - acceleratedmobilepageurl_v1 - adexchangebuyer2_v2beta1 - adexchangebuyer_v1_4 - adsense_v1_4 - adsensehost_v4_1 - analytics_v3 - analyticsreporting_v4 - androidenterprise_v1 - androidpublisher_v2 - appengine_v1 - appsactivity_v1 - appstate_v1 - bigquery_v2 - calendar_v3 - classroom_v1 - cloudbilling_v1 - cloudbuild_v1 - clouddebugger_v2 - clouderrorreporting_v1beta1 - cloudfunctions_v1 - cloudkms_v1 - cloudmonitoring_v2beta2 - cloudresourcemanager_v1 - compute_beta - compute_v1 - container_v1 - content_v2 - dataflow_v1b3 - dataproc_v1 - datastore_v1 - deploymentmanager_v2 - dfareporting_v2_8 - dns_v1 - doubleclicksearch_v2 - drive_v3 - firebasedynamiclinks_v1 - firebaserules_v1 - fitness_v1 - games_configuration_v1configuration - games_management_v1management - games_v1 - genomics_v1 - gmail_v1 - iam_v1 - identitytoolkit_v3 - language_v1 - logging_v2 - manufacturers_v1 - ml_v1 - monitoring_v3 - oauth2_v2 - partners_v2 - people_v1 - plus_domains_v1 - plus_v1 - proximitybeacon_v1beta1 - pubsub_v1 - runtimeconfig_v1 - script_v1 - searchconsole_v1 - servicecontrol_v1 - servicemanagement_v1 - serviceuser_v1 - sheets_v4 - slides_v1 - sourcerepo_v1 - spanner_v1 - sqladmin_v1beta4 - storage_v1 - storagetransfer_v1 - toolresults_v1beta3 - vision_v1 - webmasters_v3 - youtube_analytics_v1 - youtube_partner_v1 - youtubereporting_v1
This commit is contained in:
1 parent
ce32deabcf
commit
2dd396ce6e
315 files changed
+158012
-116092
No files matched your search
@@ -0,0 +1,771 @@
|
||||
# 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 SafebrowsingV4
|
||||
|
||||
# The expected state of a client's local database.
|
||||
class Checksum
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The SHA256 hash of the client state; that is, of the sorted list of all
|
||||
# hashes present in the database.
|
||||
# Corresponds to the JSON property `sha256`
|
||||
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
||||
# @return [String]
|
||||
attr_accessor :sha256
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@sha256 = args[:sha256] if args.key?(:sha256)
|
||||
end
|
||||
end
|
||||
|
||||
# The client metadata associated with Safe Browsing API requests.
|
||||
class ClientInfo
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# A client ID that (hopefully) uniquely identifies the client implementation
|
||||
# of the Safe Browsing API.
|
||||
# Corresponds to the JSON property `clientId`
|
||||
# @return [String]
|
||||
attr_accessor :client_id
|
||||
|
||||
# The version of the client implementation.
|
||||
# Corresponds to the JSON property `clientVersion`
|
||||
# @return [String]
|
||||
attr_accessor :client_version
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@client_id = args[:client_id] if args.key?(:client_id)
|
||||
@client_version = args[:client_version] if args.key?(:client_version)
|
||||
end
|
||||
end
|
||||
|
||||
# The constraints for this update.
|
||||
class Constraints
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# Sets the maximum number of entries that the client is willing to have
|
||||
# in the local database. This should be a power of 2 between 2**10 and
|
||||
# 2**20. If zero, no database size limit is set.
|
||||
# Corresponds to the JSON property `maxDatabaseEntries`
|
||||
# @return [Fixnum]
|
||||
attr_accessor :max_database_entries
|
||||
|
||||
# The maximum size in number of entries. The update will not contain more
|
||||
# entries than this value. This should be a power of 2 between 2**10 and
|
||||
# 2**20. If zero, no update size limit is set.
|
||||
# Corresponds to the JSON property `maxUpdateEntries`
|
||||
# @return [Fixnum]
|
||||
attr_accessor :max_update_entries
|
||||
|
||||
# Requests the list for a specific geographic location. If not set the
|
||||
# server may pick that value based on the user's IP address. Expects ISO
|
||||
# 3166-1 alpha-2 format.
|
||||
# Corresponds to the JSON property `region`
|
||||
# @return [String]
|
||||
attr_accessor :region
|
||||
|
||||
# The compression types supported by the client.
|
||||
# Corresponds to the JSON property `supportedCompressions`
|
||||
# @return [Array<String>]
|
||||
attr_accessor :supported_compressions
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@max_database_entries = args[:max_database_entries] if args.key?(:max_database_entries)
|
||||
@max_update_entries = args[:max_update_entries] if args.key?(:max_update_entries)
|
||||
@region = args[:region] if args.key?(:region)
|
||||
@supported_compressions = args[:supported_compressions] if args.key?(:supported_compressions)
|
||||
end
|
||||
end
|
||||
|
||||
# Describes a Safe Browsing API update request. Clients can request updates for
|
||||
# multiple lists in a single request.
|
||||
# NOTE: Field index 2 is unused.
|
||||
# NEXT: 5
|
||||
class FetchThreatListUpdatesRequest
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The client metadata associated with Safe Browsing API requests.
|
||||
# Corresponds to the JSON property `client`
|
||||
# @return [Google::Apis::SafebrowsingV4::ClientInfo]
|
||||
attr_accessor :client
|
||||
|
||||
# The requested threat list updates.
|
||||
# Corresponds to the JSON property `listUpdateRequests`
|
||||
# @return [Array<Google::Apis::SafebrowsingV4::ListUpdateRequest>]
|
||||
attr_accessor :list_update_requests
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@client = args[:client] if args.key?(:client)
|
||||
@list_update_requests = args[:list_update_requests] if args.key?(:list_update_requests)
|
||||
end
|
||||
end
|
||||
|
||||
#
|
||||
class FetchThreatListUpdatesResponse
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The list updates requested by the clients.
|
||||
# Corresponds to the JSON property `listUpdateResponses`
|
||||
# @return [Array<Google::Apis::SafebrowsingV4::ListUpdateResponse>]
|
||||
attr_accessor :list_update_responses
|
||||
|
||||
# The minimum duration the client must wait before issuing any update
|
||||
# request. If this field is not set clients may update as soon as they want.
|
||||
# Corresponds to the JSON property `minimumWaitDuration`
|
||||
# @return [String]
|
||||
attr_accessor :minimum_wait_duration
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@list_update_responses = args[:list_update_responses] if args.key?(:list_update_responses)
|
||||
@minimum_wait_duration = args[:minimum_wait_duration] if args.key?(:minimum_wait_duration)
|
||||
end
|
||||
end
|
||||
|
||||
# Request to return full hashes matched by the provided hash prefixes.
|
||||
class FindFullHashesRequest
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The client metadata associated with Safe Browsing API requests.
|
||||
# Corresponds to the JSON property `apiClient`
|
||||
# @return [Google::Apis::SafebrowsingV4::ClientInfo]
|
||||
attr_accessor :api_client
|
||||
|
||||
# The client metadata associated with Safe Browsing API requests.
|
||||
# Corresponds to the JSON property `client`
|
||||
# @return [Google::Apis::SafebrowsingV4::ClientInfo]
|
||||
attr_accessor :client
|
||||
|
||||
# The current client states for each of the client's local threat lists.
|
||||
# Corresponds to the JSON property `clientStates`
|
||||
# @return [Array<String>]
|
||||
attr_accessor :client_states
|
||||
|
||||
# The information regarding one or more threats that a client submits when
|
||||
# checking for matches in threat lists.
|
||||
# Corresponds to the JSON property `threatInfo`
|
||||
# @return [Google::Apis::SafebrowsingV4::ThreatInfo]
|
||||
attr_accessor :threat_info
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@api_client = args[:api_client] if args.key?(:api_client)
|
||||
@client = args[:client] if args.key?(:client)
|
||||
@client_states = args[:client_states] if args.key?(:client_states)
|
||||
@threat_info = args[:threat_info] if args.key?(:threat_info)
|
||||
end
|
||||
end
|
||||
|
||||
#
|
||||
class FindFullHashesResponse
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The full hashes that matched the requested prefixes.
|
||||
# Corresponds to the JSON property `matches`
|
||||
# @return [Array<Google::Apis::SafebrowsingV4::ThreatMatch>]
|
||||
attr_accessor :matches
|
||||
|
||||
# The minimum duration the client must wait before issuing any find hashes
|
||||
# request. If this field is not set, clients can issue a request as soon as
|
||||
# they want.
|
||||
# Corresponds to the JSON property `minimumWaitDuration`
|
||||
# @return [String]
|
||||
attr_accessor :minimum_wait_duration
|
||||
|
||||
# For requested entities that did not match the threat list, how long to
|
||||
# cache the response.
|
||||
# Corresponds to the JSON property `negativeCacheDuration`
|
||||
# @return [String]
|
||||
attr_accessor :negative_cache_duration
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@matches = args[:matches] if args.key?(:matches)
|
||||
@minimum_wait_duration = args[:minimum_wait_duration] if args.key?(:minimum_wait_duration)
|
||||
@negative_cache_duration = args[:negative_cache_duration] if args.key?(:negative_cache_duration)
|
||||
end
|
||||
end
|
||||
|
||||
# Request to check entries against lists.
|
||||
class FindThreatMatchesRequest
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The client metadata associated with Safe Browsing API requests.
|
||||
# Corresponds to the JSON property `client`
|
||||
# @return [Google::Apis::SafebrowsingV4::ClientInfo]
|
||||
attr_accessor :client
|
||||
|
||||
# The information regarding one or more threats that a client submits when
|
||||
# checking for matches in threat lists.
|
||||
# Corresponds to the JSON property `threatInfo`
|
||||
# @return [Google::Apis::SafebrowsingV4::ThreatInfo]
|
||||
attr_accessor :threat_info
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@client = args[:client] if args.key?(:client)
|
||||
@threat_info = args[:threat_info] if args.key?(:threat_info)
|
||||
end
|
||||
end
|
||||
|
||||
#
|
||||
class FindThreatMatchesResponse
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The threat list matches.
|
||||
# Corresponds to the JSON property `matches`
|
||||
# @return [Array<Google::Apis::SafebrowsingV4::ThreatMatch>]
|
||||
attr_accessor :matches
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@matches = args[:matches] if args.key?(:matches)
|
||||
end
|
||||
end
|
||||
|
||||
#
|
||||
class ListThreatListsResponse
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The lists available for download by the client.
|
||||
# Corresponds to the JSON property `threatLists`
|
||||
# @return [Array<Google::Apis::SafebrowsingV4::ThreatListDescriptor>]
|
||||
attr_accessor :threat_lists
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@threat_lists = args[:threat_lists] if args.key?(:threat_lists)
|
||||
end
|
||||
end
|
||||
|
||||
# A single list update request.
|
||||
class ListUpdateRequest
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The constraints for this update.
|
||||
# Corresponds to the JSON property `constraints`
|
||||
# @return [Google::Apis::SafebrowsingV4::Constraints]
|
||||
attr_accessor :constraints
|
||||
|
||||
# The type of platform at risk by entries present in the list.
|
||||
# Corresponds to the JSON property `platformType`
|
||||
# @return [String]
|
||||
attr_accessor :platform_type
|
||||
|
||||
# The current state of the client for the requested list (the encrypted
|
||||
# client state that was received from the last successful list update).
|
||||
# Corresponds to the JSON property `state`
|
||||
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
||||
# @return [String]
|
||||
attr_accessor :state
|
||||
|
||||
# The types of entries present in the list.
|
||||
# Corresponds to the JSON property `threatEntryType`
|
||||
# @return [String]
|
||||
attr_accessor :threat_entry_type
|
||||
|
||||
# The type of threat posed by entries present in the list.
|
||||
# Corresponds to the JSON property `threatType`
|
||||
# @return [String]
|
||||
attr_accessor :threat_type
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@constraints = args[:constraints] if args.key?(:constraints)
|
||||
@platform_type = args[:platform_type] if args.key?(:platform_type)
|
||||
@state = args[:state] if args.key?(:state)
|
||||
@threat_entry_type = args[:threat_entry_type] if args.key?(:threat_entry_type)
|
||||
@threat_type = args[:threat_type] if args.key?(:threat_type)
|
||||
end
|
||||
end
|
||||
|
||||
# An update to an individual list.
|
||||
class ListUpdateResponse
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# A set of entries to add to a local threat type's list. Repeated to allow
|
||||
# for a combination of compressed and raw data to be sent in a single
|
||||
# response.
|
||||
# Corresponds to the JSON property `additions`
|
||||
# @return [Array<Google::Apis::SafebrowsingV4::ThreatEntrySet>]
|
||||
attr_accessor :additions
|
||||
|
||||
# The expected state of a client's local database.
|
||||
# Corresponds to the JSON property `checksum`
|
||||
# @return [Google::Apis::SafebrowsingV4::Checksum]
|
||||
attr_accessor :checksum
|
||||
|
||||
# The new client state, in encrypted format. Opaque to clients.
|
||||
# Corresponds to the JSON property `newClientState`
|
||||
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
||||
# @return [String]
|
||||
attr_accessor :new_client_state
|
||||
|
||||
# The platform type for which data is returned.
|
||||
# Corresponds to the JSON property `platformType`
|
||||
# @return [String]
|
||||
attr_accessor :platform_type
|
||||
|
||||
# A set of entries to remove from a local threat type's list. In practice,
|
||||
# this field is empty or contains exactly one ThreatEntrySet.
|
||||
# Corresponds to the JSON property `removals`
|
||||
# @return [Array<Google::Apis::SafebrowsingV4::ThreatEntrySet>]
|
||||
attr_accessor :removals
|
||||
|
||||
# The type of response. This may indicate that an action is required by the
|
||||
# client when the response is received.
|
||||
# Corresponds to the JSON property `responseType`
|
||||
# @return [String]
|
||||
attr_accessor :response_type
|
||||
|
||||
# The format of the threats.
|
||||
# Corresponds to the JSON property `threatEntryType`
|
||||
# @return [String]
|
||||
attr_accessor :threat_entry_type
|
||||
|
||||
# The threat type for which data is returned.
|
||||
# Corresponds to the JSON property `threatType`
|
||||
# @return [String]
|
||||
attr_accessor :threat_type
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@additions = args[:additions] if args.key?(:additions)
|
||||
@checksum = args[:checksum] if args.key?(:checksum)
|
||||
@new_client_state = args[:new_client_state] if args.key?(:new_client_state)
|
||||
@platform_type = args[:platform_type] if args.key?(:platform_type)
|
||||
@removals = args[:removals] if args.key?(:removals)
|
||||
@response_type = args[:response_type] if args.key?(:response_type)
|
||||
@threat_entry_type = args[:threat_entry_type] if args.key?(:threat_entry_type)
|
||||
@threat_type = args[:threat_type] if args.key?(:threat_type)
|
||||
end
|
||||
end
|
||||
|
||||
# A single metadata entry.
|
||||
class MetadataEntry
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The metadata entry key. For JSON requests, the key is base64-encoded.
|
||||
# Corresponds to the JSON property `key`
|
||||
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
||||
# @return [String]
|
||||
attr_accessor :key
|
||||
|
||||
# The metadata entry value. For JSON requests, the value is base64-encoded.
|
||||
# Corresponds to the JSON property `value`
|
||||
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
||||
# @return [String]
|
||||
attr_accessor :value
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@key = args[:key] if args.key?(:key)
|
||||
@value = args[:value] if args.key?(:value)
|
||||
end
|
||||
end
|
||||
|
||||
# The uncompressed threat entries in hash format of a particular prefix length.
|
||||
# Hashes can be anywhere from 4 to 32 bytes in size. A large majority are 4
|
||||
# bytes, but some hashes are lengthened if they collide with the hash of a
|
||||
# popular URL.
|
||||
# Used for sending ThreatEntrySet to clients that do not support compression,
|
||||
# or when sending non-4-byte hashes to clients that do support compression.
|
||||
class RawHashes
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The number of bytes for each prefix encoded below. This field can be
|
||||
# anywhere from 4 (shortest prefix) to 32 (full SHA256 hash).
|
||||
# Corresponds to the JSON property `prefixSize`
|
||||
# @return [Fixnum]
|
||||
attr_accessor :prefix_size
|
||||
|
||||
# The hashes, in binary format, concatenated into one long string. Hashes are
|
||||
# sorted in lexicographic order. For JSON API users, hashes are
|
||||
# base64-encoded.
|
||||
# Corresponds to the JSON property `rawHashes`
|
||||
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
||||
# @return [String]
|
||||
attr_accessor :raw_hashes
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@prefix_size = args[:prefix_size] if args.key?(:prefix_size)
|
||||
@raw_hashes = args[:raw_hashes] if args.key?(:raw_hashes)
|
||||
end
|
||||
end
|
||||
|
||||
# A set of raw indices to remove from a local list.
|
||||
class RawIndices
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The indices to remove from a lexicographically-sorted local list.
|
||||
# Corresponds to the JSON property `indices`
|
||||
# @return [Array<Fixnum>]
|
||||
attr_accessor :indices
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@indices = args[:indices] if args.key?(:indices)
|
||||
end
|
||||
end
|
||||
|
||||
# The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or
|
||||
# compressed removal indices.
|
||||
class RiceDeltaEncoding
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The encoded deltas that are encoded using the Golomb-Rice coder.
|
||||
# Corresponds to the JSON property `encodedData`
|
||||
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
||||
# @return [String]
|
||||
attr_accessor :encoded_data
|
||||
|
||||
# The offset of the first entry in the encoded data, or, if only a single
|
||||
# integer was encoded, that single integer's value.
|
||||
# Corresponds to the JSON property `firstValue`
|
||||
# @return [Fixnum]
|
||||
attr_accessor :first_value
|
||||
|
||||
# The number of entries that are delta encoded in the encoded data. If only a
|
||||
# single integer was encoded, this will be zero and the single value will be
|
||||
# stored in `first_value`.
|
||||
# Corresponds to the JSON property `numEntries`
|
||||
# @return [Fixnum]
|
||||
attr_accessor :num_entries
|
||||
|
||||
# The Golomb-Rice parameter, which is a number between 2 and 28. This field
|
||||
# is missing (that is, zero) if `num_entries` is zero.
|
||||
# Corresponds to the JSON property `riceParameter`
|
||||
# @return [Fixnum]
|
||||
attr_accessor :rice_parameter
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@encoded_data = args[:encoded_data] if args.key?(:encoded_data)
|
||||
@first_value = args[:first_value] if args.key?(:first_value)
|
||||
@num_entries = args[:num_entries] if args.key?(:num_entries)
|
||||
@rice_parameter = args[:rice_parameter] if args.key?(:rice_parameter)
|
||||
end
|
||||
end
|
||||
|
||||
# An individual threat; for example, a malicious URL or its hash
|
||||
# representation. Only one of these fields should be set.
|
||||
class ThreatEntry
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The digest of an executable in SHA256 format. The API supports both
|
||||
# binary and hex digests. For JSON requests, digests are base64-encoded.
|
||||
# Corresponds to the JSON property `digest`
|
||||
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
||||
# @return [String]
|
||||
attr_accessor :digest
|
||||
|
||||
# A hash prefix, consisting of the most significant 4-32 bytes of a SHA256
|
||||
# hash. This field is in binary format. For JSON requests, hashes are
|
||||
# base64-encoded.
|
||||
# Corresponds to the JSON property `hash`
|
||||
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
||||
# @return [String]
|
||||
attr_accessor :hash_prop
|
||||
|
||||
# A URL.
|
||||
# Corresponds to the JSON property `url`
|
||||
# @return [String]
|
||||
attr_accessor :url
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@digest = args[:digest] if args.key?(:digest)
|
||||
@hash_prop = args[:hash_prop] if args.key?(:hash_prop)
|
||||
@url = args[:url] if args.key?(:url)
|
||||
end
|
||||
end
|
||||
|
||||
# The metadata associated with a specific threat entry. The client is expected
|
||||
# to know the metadata key/value pairs associated with each threat type.
|
||||
class ThreatEntryMetadata
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The metadata entries.
|
||||
# Corresponds to the JSON property `entries`
|
||||
# @return [Array<Google::Apis::SafebrowsingV4::MetadataEntry>]
|
||||
attr_accessor :entries
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@entries = args[:entries] if args.key?(:entries)
|
||||
end
|
||||
end
|
||||
|
||||
# A set of threats that should be added or removed from a client's local
|
||||
# database.
|
||||
class ThreatEntrySet
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The compression type for the entries in this set.
|
||||
# Corresponds to the JSON property `compressionType`
|
||||
# @return [String]
|
||||
attr_accessor :compression_type
|
||||
|
||||
# The uncompressed threat entries in hash format of a particular prefix length.
|
||||
# Hashes can be anywhere from 4 to 32 bytes in size. A large majority are 4
|
||||
# bytes, but some hashes are lengthened if they collide with the hash of a
|
||||
# popular URL.
|
||||
# Used for sending ThreatEntrySet to clients that do not support compression,
|
||||
# or when sending non-4-byte hashes to clients that do support compression.
|
||||
# Corresponds to the JSON property `rawHashes`
|
||||
# @return [Google::Apis::SafebrowsingV4::RawHashes]
|
||||
attr_accessor :raw_hashes
|
||||
|
||||
# A set of raw indices to remove from a local list.
|
||||
# Corresponds to the JSON property `rawIndices`
|
||||
# @return [Google::Apis::SafebrowsingV4::RawIndices]
|
||||
attr_accessor :raw_indices
|
||||
|
||||
# The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or
|
||||
# compressed removal indices.
|
||||
# Corresponds to the JSON property `riceHashes`
|
||||
# @return [Google::Apis::SafebrowsingV4::RiceDeltaEncoding]
|
||||
attr_accessor :rice_hashes
|
||||
|
||||
# The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or
|
||||
# compressed removal indices.
|
||||
# Corresponds to the JSON property `riceIndices`
|
||||
# @return [Google::Apis::SafebrowsingV4::RiceDeltaEncoding]
|
||||
attr_accessor :rice_indices
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@compression_type = args[:compression_type] if args.key?(:compression_type)
|
||||
@raw_hashes = args[:raw_hashes] if args.key?(:raw_hashes)
|
||||
@raw_indices = args[:raw_indices] if args.key?(:raw_indices)
|
||||
@rice_hashes = args[:rice_hashes] if args.key?(:rice_hashes)
|
||||
@rice_indices = args[:rice_indices] if args.key?(:rice_indices)
|
||||
end
|
||||
end
|
||||
|
||||
# The information regarding one or more threats that a client submits when
|
||||
# checking for matches in threat lists.
|
||||
class ThreatInfo
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The platform types to be checked.
|
||||
# Corresponds to the JSON property `platformTypes`
|
||||
# @return [Array<String>]
|
||||
attr_accessor :platform_types
|
||||
|
||||
# The threat entries to be checked.
|
||||
# Corresponds to the JSON property `threatEntries`
|
||||
# @return [Array<Google::Apis::SafebrowsingV4::ThreatEntry>]
|
||||
attr_accessor :threat_entries
|
||||
|
||||
# The entry types to be checked.
|
||||
# Corresponds to the JSON property `threatEntryTypes`
|
||||
# @return [Array<String>]
|
||||
attr_accessor :threat_entry_types
|
||||
|
||||
# The threat types to be checked.
|
||||
# Corresponds to the JSON property `threatTypes`
|
||||
# @return [Array<String>]
|
||||
attr_accessor :threat_types
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@platform_types = args[:platform_types] if args.key?(:platform_types)
|
||||
@threat_entries = args[:threat_entries] if args.key?(:threat_entries)
|
||||
@threat_entry_types = args[:threat_entry_types] if args.key?(:threat_entry_types)
|
||||
@threat_types = args[:threat_types] if args.key?(:threat_types)
|
||||
end
|
||||
end
|
||||
|
||||
# Describes an individual threat list. A list is defined by three parameters:
|
||||
# the type of threat posed, the type of platform targeted by the threat, and
|
||||
# the type of entries in the list.
|
||||
class ThreatListDescriptor
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The platform type targeted by the list's entries.
|
||||
# Corresponds to the JSON property `platformType`
|
||||
# @return [String]
|
||||
attr_accessor :platform_type
|
||||
|
||||
# The entry types contained in the list.
|
||||
# Corresponds to the JSON property `threatEntryType`
|
||||
# @return [String]
|
||||
attr_accessor :threat_entry_type
|
||||
|
||||
# The threat type posed by the list's entries.
|
||||
# Corresponds to the JSON property `threatType`
|
||||
# @return [String]
|
||||
attr_accessor :threat_type
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@platform_type = args[:platform_type] if args.key?(:platform_type)
|
||||
@threat_entry_type = args[:threat_entry_type] if args.key?(:threat_entry_type)
|
||||
@threat_type = args[:threat_type] if args.key?(:threat_type)
|
||||
end
|
||||
end
|
||||
|
||||
# A match when checking a threat entry in the Safe Browsing threat lists.
|
||||
class ThreatMatch
|
||||
include Google::Apis::Core::Hashable
|
||||
|
||||
# The cache lifetime for the returned match. Clients must not cache this
|
||||
# response for more than this duration to avoid false positives.
|
||||
# Corresponds to the JSON property `cacheDuration`
|
||||
# @return [String]
|
||||
attr_accessor :cache_duration
|
||||
|
||||
# The platform type matching this threat.
|
||||
# Corresponds to the JSON property `platformType`
|
||||
# @return [String]
|
||||
attr_accessor :platform_type
|
||||
|
||||
# An individual threat; for example, a malicious URL or its hash
|
||||
# representation. Only one of these fields should be set.
|
||||
# Corresponds to the JSON property `threat`
|
||||
# @return [Google::Apis::SafebrowsingV4::ThreatEntry]
|
||||
attr_accessor :threat
|
||||
|
||||
# The metadata associated with a specific threat entry. The client is expected
|
||||
# to know the metadata key/value pairs associated with each threat type.
|
||||
# Corresponds to the JSON property `threatEntryMetadata`
|
||||
# @return [Google::Apis::SafebrowsingV4::ThreatEntryMetadata]
|
||||
attr_accessor :threat_entry_metadata
|
||||
|
||||
# The threat entry type matching this threat.
|
||||
# Corresponds to the JSON property `threatEntryType`
|
||||
# @return [String]
|
||||
attr_accessor :threat_entry_type
|
||||
|
||||
# The threat type matching this threat.
|
||||
# Corresponds to the JSON property `threatType`
|
||||
# @return [String]
|
||||
attr_accessor :threat_type
|
||||
|
||||
def initialize(**args)
|
||||
update!(**args)
|
||||
end
|
||||
|
||||
# Update properties of this object
|
||||
def update!(**args)
|
||||
@cache_duration = args[:cache_duration] if args.key?(:cache_duration)
|
||||
@platform_type = args[:platform_type] if args.key?(:platform_type)
|
||||
@threat = args[:threat] if args.key?(:threat)
|
||||
@threat_entry_metadata = args[:threat_entry_metadata] if args.key?(:threat_entry_metadata)
|
||||
@threat_entry_type = args[:threat_entry_type] if args.key?(:threat_entry_type)
|
||||
@threat_type = args[:threat_type] if args.key?(:threat_type)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,379 @@
|
||||
# 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 SafebrowsingV4
|
||||
|
||||
class Checksum
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class ClientInfo
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class Constraints
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class FetchThreatListUpdatesRequest
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class FetchThreatListUpdatesResponse
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class FindFullHashesRequest
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class FindFullHashesResponse
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class FindThreatMatchesRequest
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class FindThreatMatchesResponse
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class ListThreatListsResponse
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class ListUpdateRequest
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class ListUpdateResponse
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class MetadataEntry
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class RawHashes
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class RawIndices
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class RiceDeltaEncoding
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class ThreatEntry
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class ThreatEntryMetadata
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class ThreatEntrySet
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class ThreatInfo
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class ThreatListDescriptor
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class ThreatMatch
|
||||
class Representation < Google::Apis::Core::JsonRepresentation; end
|
||||
|
||||
include Google::Apis::Core::JsonObjectSupport
|
||||
end
|
||||
|
||||
class Checksum
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
property :sha256, :base64 => true, as: 'sha256'
|
||||
end
|
||||
end
|
||||
|
||||
class ClientInfo
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
property :client_id, as: 'clientId'
|
||||
property :client_version, as: 'clientVersion'
|
||||
end
|
||||
end
|
||||
|
||||
class Constraints
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
property :max_database_entries, as: 'maxDatabaseEntries'
|
||||
property :max_update_entries, as: 'maxUpdateEntries'
|
||||
property :region, as: 'region'
|
||||
collection :supported_compressions, as: 'supportedCompressions'
|
||||
end
|
||||
end
|
||||
|
||||
class FetchThreatListUpdatesRequest
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
property :client, as: 'client', class: Google::Apis::SafebrowsingV4::ClientInfo, decorator: Google::Apis::SafebrowsingV4::ClientInfo::Representation
|
||||
|
||||
collection :list_update_requests, as: 'listUpdateRequests', class: Google::Apis::SafebrowsingV4::ListUpdateRequest, decorator: Google::Apis::SafebrowsingV4::ListUpdateRequest::Representation
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
class FetchThreatListUpdatesResponse
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
collection :list_update_responses, as: 'listUpdateResponses', class: Google::Apis::SafebrowsingV4::ListUpdateResponse, decorator: Google::Apis::SafebrowsingV4::ListUpdateResponse::Representation
|
||||
|
||||
property :minimum_wait_duration, as: 'minimumWaitDuration'
|
||||
end
|
||||
end
|
||||
|
||||
class FindFullHashesRequest
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
property :api_client, as: 'apiClient', class: Google::Apis::SafebrowsingV4::ClientInfo, decorator: Google::Apis::SafebrowsingV4::ClientInfo::Representation
|
||||
|
||||
property :client, as: 'client', class: Google::Apis::SafebrowsingV4::ClientInfo, decorator: Google::Apis::SafebrowsingV4::ClientInfo::Representation
|
||||
|
||||
collection :client_states, as: 'clientStates'
|
||||
property :threat_info, as: 'threatInfo', class: Google::Apis::SafebrowsingV4::ThreatInfo, decorator: Google::Apis::SafebrowsingV4::ThreatInfo::Representation
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
class FindFullHashesResponse
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
collection :matches, as: 'matches', class: Google::Apis::SafebrowsingV4::ThreatMatch, decorator: Google::Apis::SafebrowsingV4::ThreatMatch::Representation
|
||||
|
||||
property :minimum_wait_duration, as: 'minimumWaitDuration'
|
||||
property :negative_cache_duration, as: 'negativeCacheDuration'
|
||||
end
|
||||
end
|
||||
|
||||
class FindThreatMatchesRequest
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
property :client, as: 'client', class: Google::Apis::SafebrowsingV4::ClientInfo, decorator: Google::Apis::SafebrowsingV4::ClientInfo::Representation
|
||||
|
||||
property :threat_info, as: 'threatInfo', class: Google::Apis::SafebrowsingV4::ThreatInfo, decorator: Google::Apis::SafebrowsingV4::ThreatInfo::Representation
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
class FindThreatMatchesResponse
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
collection :matches, as: 'matches', class: Google::Apis::SafebrowsingV4::ThreatMatch, decorator: Google::Apis::SafebrowsingV4::ThreatMatch::Representation
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
class ListThreatListsResponse
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
collection :threat_lists, as: 'threatLists', class: Google::Apis::SafebrowsingV4::ThreatListDescriptor, decorator: Google::Apis::SafebrowsingV4::ThreatListDescriptor::Representation
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
class ListUpdateRequest
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
property :constraints, as: 'constraints', class: Google::Apis::SafebrowsingV4::Constraints, decorator: Google::Apis::SafebrowsingV4::Constraints::Representation
|
||||
|
||||
property :platform_type, as: 'platformType'
|
||||
property :state, :base64 => true, as: 'state'
|
||||
property :threat_entry_type, as: 'threatEntryType'
|
||||
property :threat_type, as: 'threatType'
|
||||
end
|
||||
end
|
||||
|
||||
class ListUpdateResponse
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
collection :additions, as: 'additions', class: Google::Apis::SafebrowsingV4::ThreatEntrySet, decorator: Google::Apis::SafebrowsingV4::ThreatEntrySet::Representation
|
||||
|
||||
property :checksum, as: 'checksum', class: Google::Apis::SafebrowsingV4::Checksum, decorator: Google::Apis::SafebrowsingV4::Checksum::Representation
|
||||
|
||||
property :new_client_state, :base64 => true, as: 'newClientState'
|
||||
property :platform_type, as: 'platformType'
|
||||
collection :removals, as: 'removals', class: Google::Apis::SafebrowsingV4::ThreatEntrySet, decorator: Google::Apis::SafebrowsingV4::ThreatEntrySet::Representation
|
||||
|
||||
property :response_type, as: 'responseType'
|
||||
property :threat_entry_type, as: 'threatEntryType'
|
||||
property :threat_type, as: 'threatType'
|
||||
end
|
||||
end
|
||||
|
||||
class MetadataEntry
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
property :key, :base64 => true, as: 'key'
|
||||
property :value, :base64 => true, as: 'value'
|
||||
end
|
||||
end
|
||||
|
||||
class RawHashes
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
property :prefix_size, as: 'prefixSize'
|
||||
property :raw_hashes, :base64 => true, as: 'rawHashes'
|
||||
end
|
||||
end
|
||||
|
||||
class RawIndices
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
collection :indices, as: 'indices'
|
||||
end
|
||||
end
|
||||
|
||||
class RiceDeltaEncoding
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
property :encoded_data, :base64 => true, as: 'encodedData'
|
||||
property :first_value, :numeric_string => true, as: 'firstValue'
|
||||
property :num_entries, as: 'numEntries'
|
||||
property :rice_parameter, as: 'riceParameter'
|
||||
end
|
||||
end
|
||||
|
||||
class ThreatEntry
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
property :digest, :base64 => true, as: 'digest'
|
||||
property :hash_prop, :base64 => true, as: 'hash'
|
||||
property :url, as: 'url'
|
||||
end
|
||||
end
|
||||
|
||||
class ThreatEntryMetadata
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
collection :entries, as: 'entries', class: Google::Apis::SafebrowsingV4::MetadataEntry, decorator: Google::Apis::SafebrowsingV4::MetadataEntry::Representation
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
class ThreatEntrySet
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
property :compression_type, as: 'compressionType'
|
||||
property :raw_hashes, as: 'rawHashes', class: Google::Apis::SafebrowsingV4::RawHashes, decorator: Google::Apis::SafebrowsingV4::RawHashes::Representation
|
||||
|
||||
property :raw_indices, as: 'rawIndices', class: Google::Apis::SafebrowsingV4::RawIndices, decorator: Google::Apis::SafebrowsingV4::RawIndices::Representation
|
||||
|
||||
property :rice_hashes, as: 'riceHashes', class: Google::Apis::SafebrowsingV4::RiceDeltaEncoding, decorator: Google::Apis::SafebrowsingV4::RiceDeltaEncoding::Representation
|
||||
|
||||
property :rice_indices, as: 'riceIndices', class: Google::Apis::SafebrowsingV4::RiceDeltaEncoding, decorator: Google::Apis::SafebrowsingV4::RiceDeltaEncoding::Representation
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
class ThreatInfo
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
collection :platform_types, as: 'platformTypes'
|
||||
collection :threat_entries, as: 'threatEntries', class: Google::Apis::SafebrowsingV4::ThreatEntry, decorator: Google::Apis::SafebrowsingV4::ThreatEntry::Representation
|
||||
|
||||
collection :threat_entry_types, as: 'threatEntryTypes'
|
||||
collection :threat_types, as: 'threatTypes'
|
||||
end
|
||||
end
|
||||
|
||||
class ThreatListDescriptor
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
property :platform_type, as: 'platformType'
|
||||
property :threat_entry_type, as: 'threatEntryType'
|
||||
property :threat_type, as: 'threatType'
|
||||
end
|
||||
end
|
||||
|
||||
class ThreatMatch
|
||||
# @private
|
||||
class Representation < Google::Apis::Core::JsonRepresentation
|
||||
property :cache_duration, as: 'cacheDuration'
|
||||
property :platform_type, as: 'platformType'
|
||||
property :threat, as: 'threat', class: Google::Apis::SafebrowsingV4::ThreatEntry, decorator: Google::Apis::SafebrowsingV4::ThreatEntry::Representation
|
||||
|
||||
property :threat_entry_metadata, as: 'threatEntryMetadata', class: Google::Apis::SafebrowsingV4::ThreatEntryMetadata, decorator: Google::Apis::SafebrowsingV4::ThreatEntryMetadata::Representation
|
||||
|
||||
property :threat_entry_type, as: 'threatEntryType'
|
||||
property :threat_type, as: 'threatType'
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,252 @@
|
||||
# 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 SafebrowsingV4
|
||||
# Google Safe Browsing API
|
||||
#
|
||||
# Enables client applications to check web resources (most commonly URLs)
|
||||
# against Google-generated lists of unsafe web resources.
|
||||
#
|
||||
# @example
|
||||
# require 'google/apis/safebrowsing_v4'
|
||||
#
|
||||
# Safebrowsing = Google::Apis::SafebrowsingV4 # Alias the module
|
||||
# service = Safebrowsing::SafebrowsingService.new
|
||||
#
|
||||
# @see https://developers.google.com/safe-browsing/
|
||||
class SafebrowsingService < 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]
|
||||
# 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.
|
||||
attr_accessor :quota_user
|
||||
|
||||
def initialize
|
||||
super('https://safebrowsing.googleapis.com/', '')
|
||||
@batch_path = 'batch'
|
||||
end
|
||||
|
||||
#
|
||||
# @param [String] encoded_request
|
||||
# A serialized FindFullHashesRequest proto.
|
||||
# @param [String] client_id
|
||||
# A client ID that (hopefully) uniquely identifies the client implementation
|
||||
# of the Safe Browsing API.
|
||||
# @param [String] client_version
|
||||
# The version of the client implementation.
|
||||
# @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::SafebrowsingV4::FindFullHashesResponse] parsed result object
|
||||
# @yieldparam err [StandardError] error object if request failed
|
||||
#
|
||||
# @return [Google::Apis::SafebrowsingV4::FindFullHashesResponse]
|
||||
#
|
||||
# @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_encoded_full_hash(encoded_request, client_id: nil, client_version: nil, fields: nil, quota_user: nil, options: nil, &block)
|
||||
command = make_simple_command(:get, 'v4/encodedFullHashes/{encodedRequest}', options)
|
||||
command.response_representation = Google::Apis::SafebrowsingV4::FindFullHashesResponse::Representation
|
||||
command.response_class = Google::Apis::SafebrowsingV4::FindFullHashesResponse
|
||||
command.params['encodedRequest'] = encoded_request unless encoded_request.nil?
|
||||
command.query['clientId'] = client_id unless client_id.nil?
|
||||
command.query['clientVersion'] = client_version unless client_version.nil?
|
||||
command.query['fields'] = fields unless fields.nil?
|
||||
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
||||
execute_or_queue_command(command, &block)
|
||||
end
|
||||
|
||||
#
|
||||
# @param [String] encoded_request
|
||||
# A serialized FetchThreatListUpdatesRequest proto.
|
||||
# @param [String] client_id
|
||||
# A client ID that uniquely identifies the client implementation of the Safe
|
||||
# Browsing API.
|
||||
# @param [String] client_version
|
||||
# The version of the client implementation.
|
||||
# @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::SafebrowsingV4::FetchThreatListUpdatesResponse] parsed result object
|
||||
# @yieldparam err [StandardError] error object if request failed
|
||||
#
|
||||
# @return [Google::Apis::SafebrowsingV4::FetchThreatListUpdatesResponse]
|
||||
#
|
||||
# @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_encoded_update(encoded_request, client_id: nil, client_version: nil, fields: nil, quota_user: nil, options: nil, &block)
|
||||
command = make_simple_command(:get, 'v4/encodedUpdates/{encodedRequest}', options)
|
||||
command.response_representation = Google::Apis::SafebrowsingV4::FetchThreatListUpdatesResponse::Representation
|
||||
command.response_class = Google::Apis::SafebrowsingV4::FetchThreatListUpdatesResponse
|
||||
command.params['encodedRequest'] = encoded_request unless encoded_request.nil?
|
||||
command.query['clientId'] = client_id unless client_id.nil?
|
||||
command.query['clientVersion'] = client_version unless client_version.nil?
|
||||
command.query['fields'] = fields unless fields.nil?
|
||||
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
||||
execute_or_queue_command(command, &block)
|
||||
end
|
||||
|
||||
# Finds the full hashes that match the requested hash prefixes.
|
||||
# @param [Google::Apis::SafebrowsingV4::FindFullHashesRequest] find_full_hashes_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::SafebrowsingV4::FindFullHashesResponse] parsed result object
|
||||
# @yieldparam err [StandardError] error object if request failed
|
||||
#
|
||||
# @return [Google::Apis::SafebrowsingV4::FindFullHashesResponse]
|
||||
#
|
||||
# @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 find_full_hashes(find_full_hashes_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
|
||||
command = make_simple_command(:post, 'v4/fullHashes:find', options)
|
||||
command.request_representation = Google::Apis::SafebrowsingV4::FindFullHashesRequest::Representation
|
||||
command.request_object = find_full_hashes_request_object
|
||||
command.response_representation = Google::Apis::SafebrowsingV4::FindFullHashesResponse::Representation
|
||||
command.response_class = Google::Apis::SafebrowsingV4::FindFullHashesResponse
|
||||
command.query['fields'] = fields unless fields.nil?
|
||||
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
||||
execute_or_queue_command(command, &block)
|
||||
end
|
||||
|
||||
# Fetches the most recent threat list updates. A client can request updates
|
||||
# for multiple lists at once.
|
||||
# @param [Google::Apis::SafebrowsingV4::FetchThreatListUpdatesRequest] fetch_threat_list_updates_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::SafebrowsingV4::FetchThreatListUpdatesResponse] parsed result object
|
||||
# @yieldparam err [StandardError] error object if request failed
|
||||
#
|
||||
# @return [Google::Apis::SafebrowsingV4::FetchThreatListUpdatesResponse]
|
||||
#
|
||||
# @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 fetch_threat_list_updates(fetch_threat_list_updates_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
|
||||
command = make_simple_command(:post, 'v4/threatListUpdates:fetch', options)
|
||||
command.request_representation = Google::Apis::SafebrowsingV4::FetchThreatListUpdatesRequest::Representation
|
||||
command.request_object = fetch_threat_list_updates_request_object
|
||||
command.response_representation = Google::Apis::SafebrowsingV4::FetchThreatListUpdatesResponse::Representation
|
||||
command.response_class = Google::Apis::SafebrowsingV4::FetchThreatListUpdatesResponse
|
||||
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 Safe Browsing threat lists available for download.
|
||||
# @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::SafebrowsingV4::ListThreatListsResponse] parsed result object
|
||||
# @yieldparam err [StandardError] error object if request failed
|
||||
#
|
||||
# @return [Google::Apis::SafebrowsingV4::ListThreatListsResponse]
|
||||
#
|
||||
# @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_threat_lists(fields: nil, quota_user: nil, options: nil, &block)
|
||||
command = make_simple_command(:get, 'v4/threatLists', options)
|
||||
command.response_representation = Google::Apis::SafebrowsingV4::ListThreatListsResponse::Representation
|
||||
command.response_class = Google::Apis::SafebrowsingV4::ListThreatListsResponse
|
||||
command.query['fields'] = fields unless fields.nil?
|
||||
command.query['quotaUser'] = quota_user unless quota_user.nil?
|
||||
execute_or_queue_command(command, &block)
|
||||
end
|
||||
|
||||
# Finds the threat entries that match the Safe Browsing lists.
|
||||
# @param [Google::Apis::SafebrowsingV4::FindThreatMatchesRequest] find_threat_matches_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::SafebrowsingV4::FindThreatMatchesResponse] parsed result object
|
||||
# @yieldparam err [StandardError] error object if request failed
|
||||
#
|
||||
# @return [Google::Apis::SafebrowsingV4::FindThreatMatchesResponse]
|
||||
#
|
||||
# @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 find_threat_matches(find_threat_matches_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
|
||||
command = make_simple_command(:post, 'v4/threatMatches:find', options)
|
||||
command.request_representation = Google::Apis::SafebrowsingV4::FindThreatMatchesRequest::Representation
|
||||
command.request_object = find_threat_matches_request_object
|
||||
command.response_representation = Google::Apis::SafebrowsingV4::FindThreatMatchesResponse::Representation
|
||||
command.response_class = Google::Apis::SafebrowsingV4::FindThreatMatchesResponse
|
||||
command.query['fields'] = fields unless fields.nil?
|
||||
command.query['quotaUser'] = quota_user unless quota_user.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?
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in new issue
Block a user