Class: Google::Apis::SafebrowsingV4::SafebrowsingService

Inherits:
Core::BaseService
  • Object
show all
Defined in:
lib/google/apis/safebrowsing_v4/service.rb

Overview

Safe Browsing API

Enables client applications to check web resources (most commonly URLs) against Google-generated lists of unsafe web resources. The Safe Browsing APIs are for non-commercial use only. If you need to use APIs to detect malicious URLs for commercial purposes – meaning “for sale or revenue-generating purposes” – please refer to the Web Risk API.

Examples:

require 'google/apis/safebrowsing_v4'

Safebrowsing = Google::Apis::SafebrowsingV4 # Alias the module
service = Safebrowsing::SafebrowsingService.new

See Also:

Constant Summary collapse

DEFAULT_ENDPOINT_TEMPLATE =
"https://safebrowsing.$UNIVERSE_DOMAIN$/"

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeSafebrowsingService

Returns a new instance of SafebrowsingService.



51
52
53
54
55
56
# File 'lib/google/apis/safebrowsing_v4/service.rb', line 51

def initialize
  super(DEFAULT_ENDPOINT_TEMPLATE, '',
        client_name: 'google-apis-safebrowsing_v4',
        client_version: Google::Apis::SafebrowsingV4::GEM_VERSION)
  @batch_path = 'batch'
end

Instance Attribute Details

#keyString

Returns 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.

Returns:

  • (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.



44
45
46
# File 'lib/google/apis/safebrowsing_v4/service.rb', line 44

def key
  @key
end

#quota_userString

Returns 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.

Returns:

  • (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.



49
50
51
# File 'lib/google/apis/safebrowsing_v4/service.rb', line 49

def quota_user
  @quota_user
end

Instance Method Details

#create_threat_hit(google_security_safebrowsing_v4_threat_hit_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::SafebrowsingV4::GoogleProtobufEmpty

Reports a Safe Browsing threat list hit to Google. Only projects with TRUSTED_REPORTER visibility can use this method.

Parameters:

  • google_security_safebrowsing_v4_threat_hit_object (Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4ThreatHit) (defaults to: nil)
  • fields (String) (defaults to: nil)

    Selector specifying which fields to include in a partial response.

  • quota_user (String) (defaults to: nil)

    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.

  • options (Google::Apis::RequestOptions) (defaults to: nil)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:

  • (Google::Apis::ServerError)

    An error occurred on the server and the request can be retried

  • (Google::Apis::ClientError)

    The request is invalid and should not be retried without modification

  • (Google::Apis::AuthorizationError)

    Authorization is required



182
183
184
185
186
187
188
189
190
191
# File 'lib/google/apis/safebrowsing_v4/service.rb', line 182

def create_threat_hit(google_security_safebrowsing_v4_threat_hit_object = nil, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:post, 'v4/threatHits', options)
  command.request_representation = Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4ThreatHit::Representation
  command.request_object = google_security_safebrowsing_v4_threat_hit_object
  command.response_representation = Google::Apis::SafebrowsingV4::GoogleProtobufEmpty::Representation
  command.response_class = Google::Apis::SafebrowsingV4::GoogleProtobufEmpty
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#fetch_threat_list_updates(google_security_safebrowsing_v4_fetch_threat_list_updates_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FetchThreatListUpdatesResponse

Fetches the most recent threat list updates. A client can request updates for multiple lists at once.

Parameters:

  • google_security_safebrowsing_v4_fetch_threat_list_updates_request_object (Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FetchThreatListUpdatesRequest) (defaults to: nil)
  • fields (String) (defaults to: nil)

    Selector specifying which fields to include in a partial response.

  • quota_user (String) (defaults to: nil)

    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.

  • options (Google::Apis::RequestOptions) (defaults to: nil)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:

  • (Google::Apis::ServerError)

    An error occurred on the server and the request can be retried

  • (Google::Apis::ClientError)

    The request is invalid and should not be retried without modification

  • (Google::Apis::AuthorizationError)

    Authorization is required



213
214
215
216
217
218
219
220
221
222
# File 'lib/google/apis/safebrowsing_v4/service.rb', line 213

def fetch_threat_list_updates(google_security_safebrowsing_v4_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::GoogleSecuritySafebrowsingV4FetchThreatListUpdatesRequest::Representation
  command.request_object = google_security_safebrowsing_v4_fetch_threat_list_updates_request_object
  command.response_representation = Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FetchThreatListUpdatesResponse::Representation
  command.response_class = Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FetchThreatListUpdatesResponse
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#find_full_hashes(google_security_safebrowsing_v4_find_full_hashes_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FindFullHashesResponse

Finds the full hashes that match the requested hash prefixes.

Parameters:

  • google_security_safebrowsing_v4_find_full_hashes_request_object (Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FindFullHashesRequest) (defaults to: nil)
  • fields (String) (defaults to: nil)

    Selector specifying which fields to include in a partial response.

  • quota_user (String) (defaults to: nil)

    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.

  • options (Google::Apis::RequestOptions) (defaults to: nil)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:

  • (Google::Apis::ServerError)

    An error occurred on the server and the request can be retried

  • (Google::Apis::ClientError)

    The request is invalid and should not be retried without modification

  • (Google::Apis::AuthorizationError)

    Authorization is required



151
152
153
154
155
156
157
158
159
160
# File 'lib/google/apis/safebrowsing_v4/service.rb', line 151

def find_full_hashes(google_security_safebrowsing_v4_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::GoogleSecuritySafebrowsingV4FindFullHashesRequest::Representation
  command.request_object = google_security_safebrowsing_v4_find_full_hashes_request_object
  command.response_representation = Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FindFullHashesResponse::Representation
  command.response_class = Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FindFullHashesResponse
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#find_threat_matches(google_security_safebrowsing_v4_find_threat_matches_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FindThreatMatchesResponse

Finds the threat entries that match the Safe Browsing lists.

Parameters:

  • google_security_safebrowsing_v4_find_threat_matches_request_object (Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FindThreatMatchesRequest) (defaults to: nil)
  • fields (String) (defaults to: nil)

    Selector specifying which fields to include in a partial response.

  • quota_user (String) (defaults to: nil)

    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.

  • options (Google::Apis::RequestOptions) (defaults to: nil)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:

  • (Google::Apis::ServerError)

    An error occurred on the server and the request can be retried

  • (Google::Apis::ClientError)

    The request is invalid and should not be retried without modification

  • (Google::Apis::AuthorizationError)

    Authorization is required



270
271
272
273
274
275
276
277
278
279
# File 'lib/google/apis/safebrowsing_v4/service.rb', line 270

def find_threat_matches(google_security_safebrowsing_v4_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::GoogleSecuritySafebrowsingV4FindThreatMatchesRequest::Representation
  command.request_object = google_security_safebrowsing_v4_find_threat_matches_request_object
  command.response_representation = Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FindThreatMatchesResponse::Representation
  command.response_class = Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FindThreatMatchesResponse
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#get_encoded_full_hash(encoded_request, client_id: nil, client_version: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FindFullHashesResponse

Parameters:

  • encoded_request (String)

    A serialized FindFullHashesRequest proto.

  • client_id (String) (defaults to: nil)

    A client ID that (hopefully) uniquely identifies the client implementation of the Safe Browsing API.

  • client_version (String) (defaults to: nil)

    The version of the client implementation.

  • fields (String) (defaults to: nil)

    Selector specifying which fields to include in a partial response.

  • quota_user (String) (defaults to: nil)

    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.

  • options (Google::Apis::RequestOptions) (defaults to: nil)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:

  • (Google::Apis::ServerError)

    An error occurred on the server and the request can be retried

  • (Google::Apis::ClientError)

    The request is invalid and should not be retried without modification

  • (Google::Apis::AuthorizationError)

    Authorization is required



83
84
85
86
87
88
89
90
91
92
93
# File 'lib/google/apis/safebrowsing_v4/service.rb', line 83

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::GoogleSecuritySafebrowsingV4FindFullHashesResponse::Representation
  command.response_class = Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FindFullHashesResponse
  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

#get_encoded_update(encoded_request, client_id: nil, client_version: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FetchThreatListUpdatesResponse

Parameters:

  • encoded_request (String)

    A serialized FetchThreatListUpdatesRequest proto.

  • client_id (String) (defaults to: nil)

    A client ID that uniquely identifies the client implementation of the Safe Browsing API.

  • client_version (String) (defaults to: nil)

    The version of the client implementation.

  • fields (String) (defaults to: nil)

    Selector specifying which fields to include in a partial response.

  • quota_user (String) (defaults to: nil)

    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.

  • options (Google::Apis::RequestOptions) (defaults to: nil)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:

  • (Google::Apis::ServerError)

    An error occurred on the server and the request can be retried

  • (Google::Apis::ClientError)

    The request is invalid and should not be retried without modification

  • (Google::Apis::AuthorizationError)

    Authorization is required



120
121
122
123
124
125
126
127
128
129
130
# File 'lib/google/apis/safebrowsing_v4/service.rb', line 120

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::GoogleSecuritySafebrowsingV4FetchThreatListUpdatesResponse::Representation
  command.response_class = Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4FetchThreatListUpdatesResponse
  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

#list_threat_lists(fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4ListThreatListsResponse

Lists the Safe Browsing threat lists available for download.

Parameters:

  • fields (String) (defaults to: nil)

    Selector specifying which fields to include in a partial response.

  • quota_user (String) (defaults to: nil)

    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.

  • options (Google::Apis::RequestOptions) (defaults to: nil)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:

  • (Google::Apis::ServerError)

    An error occurred on the server and the request can be retried

  • (Google::Apis::ClientError)

    The request is invalid and should not be retried without modification

  • (Google::Apis::AuthorizationError)

    Authorization is required



242
243
244
245
246
247
248
249
# File 'lib/google/apis/safebrowsing_v4/service.rb', line 242

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::GoogleSecuritySafebrowsingV4ListThreatListsResponse::Representation
  command.response_class = Google::Apis::SafebrowsingV4::GoogleSecuritySafebrowsingV4ListThreatListsResponse
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end