- 2.54.0 (latest)
- 2.53.0
- 2.52.0
- 2.51.0
- 2.50.0
- 2.48.0
- 2.47.0
- 2.46.0
- 2.45.0
- 2.44.0
- 2.43.0
- 2.42.0
- 2.41.0
- 2.40.0
- 2.39.0
- 2.38.0
- 2.36.0
- 2.35.0
- 2.34.0
- 2.33.0
- 2.32.0
- 2.31.0
- 2.30.0
- 2.29.0
- 2.28.0
- 2.27.0
- 2.26.0
- 2.23.0
- 2.22.0
- 2.21.0
- 2.20.0
- 2.19.0
- 2.18.0
- 2.17.0
- 2.16.0
- 2.15.0
- 2.14.0
- 2.13.0
- 2.12.0
- 2.11.0
- 2.10.0
- 2.8.0
- 2.7.0
- 2.6.0
- 2.5.0
- 2.4.0
- 2.3.0
- 2.2.6
- 2.0.12
public class WebRiskServiceClient implements BackgroundResource
Service Description: Web Risk API defines an interface to detect malicious URLs on your website and in client applications.
This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:
try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
ThreatType threatType = ThreatType.forNumber(0);
ByteString versionToken = ByteString.EMPTY;
ComputeThreatListDiffRequest.Constraints constraints =
ComputeThreatListDiffRequest.Constraints.newBuilder().build();
ComputeThreatListDiffResponse response =
webRiskServiceClient.computeThreatListDiff(threatType, versionToken, constraints);
}
Note: close() needs to be called on the WebRiskServiceClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().
The surface of this class includes several types of Java methods for each of the API's methods:
- A "flattened" method. With this type of method, the fields of the request type have been converted into function parameters. It may be the case that not all fields are available as parameters, and not every API method will have a flattened method entry point.
- A "request object" method. This type of method only takes one parameter, a request object, which must be constructed before the call. Not every API method will have a request object method.
- A "callable" method. This type of method takes no parameters and returns an immutable API callable object, which can be used to initiate calls to the service.
See the individual methods for example code.
Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.
This class can be customized by passing in a custom instance of WebRiskServiceSettings to create(). For example:
To customize credentials:
WebRiskServiceSettings webRiskServiceSettings =
WebRiskServiceSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
.build();
WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create(webRiskServiceSettings);
To customize the endpoint:
WebRiskServiceSettings webRiskServiceSettings =
WebRiskServiceSettings.newBuilder().setEndpoint(myEndpoint).build();
WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create(webRiskServiceSettings);
Please refer to the GitHub repository's samples for more quickstart code snippets.
Implements
BackgroundResourceStatic Methods
create()
public static final WebRiskServiceClient create()
Constructs an instance of WebRiskServiceClient with default settings.
Type | Description |
WebRiskServiceClient |
Type | Description |
IOException |
create(WebRiskServiceSettings settings)
public static final WebRiskServiceClient create(WebRiskServiceSettings settings)
Constructs an instance of WebRiskServiceClient, using the given settings. The channels are created based on the settings passed in, or defaults for any settings that are not set.
Name | Description |
settings | WebRiskServiceSettings |
Type | Description |
WebRiskServiceClient |
Type | Description |
IOException |
create(WebRiskServiceStub stub)
public static final WebRiskServiceClient create(WebRiskServiceStub stub)
Constructs an instance of WebRiskServiceClient, using the given stub for making calls. This is for advanced usage - prefer using create(WebRiskServiceSettings).
Name | Description |
stub | WebRiskServiceStub |
Type | Description |
WebRiskServiceClient |
Constructors
WebRiskServiceClient(WebRiskServiceSettings settings)
protected WebRiskServiceClient(WebRiskServiceSettings settings)
Constructs an instance of WebRiskServiceClient, using the given settings. This is protected so that it is easy to make a subclass, but otherwise, the static factory methods should be preferred.
Name | Description |
settings | WebRiskServiceSettings |
WebRiskServiceClient(WebRiskServiceStub stub)
protected WebRiskServiceClient(WebRiskServiceStub stub)
Name | Description |
stub | WebRiskServiceStub |
Methods
awaitTermination(long duration, TimeUnit unit)
public boolean awaitTermination(long duration, TimeUnit unit)
Name | Description |
duration | long |
unit | TimeUnit |
Type | Description |
boolean |
Type | Description |
InterruptedException |
close()
public final void close()
computeThreatListDiff(ComputeThreatListDiffRequest request)
public final ComputeThreatListDiffResponse computeThreatListDiff(ComputeThreatListDiffRequest request)
Gets the most recent threat list diffs. These diffs should be applied to a local database of hashes to keep it up-to-date. If the local database is empty or excessively out-of-date, a complete snapshot of the database will be returned. This Method only updates a single ThreatList at a time. To update multiple ThreatList databases, this method needs to be called once for each list.
Sample code:
try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
ComputeThreatListDiffRequest request =
ComputeThreatListDiffRequest.newBuilder()
.setThreatType(ThreatType.forNumber(0))
.setVersionToken(ByteString.EMPTY)
.setConstraints(ComputeThreatListDiffRequest.Constraints.newBuilder().build())
.build();
ComputeThreatListDiffResponse response = webRiskServiceClient.computeThreatListDiff(request);
}
Name | Description |
request | ComputeThreatListDiffRequest The request object containing all of the parameters for the API call. |
Type | Description |
ComputeThreatListDiffResponse |
computeThreatListDiff(ThreatType threatType, ByteString versionToken, ComputeThreatListDiffRequest.Constraints constraints)
public final ComputeThreatListDiffResponse computeThreatListDiff(ThreatType threatType, ByteString versionToken, ComputeThreatListDiffRequest.Constraints constraints)
Gets the most recent threat list diffs. These diffs should be applied to a local database of hashes to keep it up-to-date. If the local database is empty or excessively out-of-date, a complete snapshot of the database will be returned. This Method only updates a single ThreatList at a time. To update multiple ThreatList databases, this method needs to be called once for each list.
Sample code:
try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
ThreatType threatType = ThreatType.forNumber(0);
ByteString versionToken = ByteString.EMPTY;
ComputeThreatListDiffRequest.Constraints constraints =
ComputeThreatListDiffRequest.Constraints.newBuilder().build();
ComputeThreatListDiffResponse response =
webRiskServiceClient.computeThreatListDiff(threatType, versionToken, constraints);
}
Name | Description |
threatType | ThreatType Required. The threat list to update. Only a single ThreatType should be specified. |
versionToken | ByteString The current version token of the client for the requested list (the client version that was received from the last successful diff). If the client does not have a version token (this is the first time calling ComputeThreatListDiff), this may be left empty and a full database snapshot will be returned. |
constraints | ComputeThreatListDiffRequest.Constraints Required. The constraints associated with this request. |
Type | Description |
ComputeThreatListDiffResponse |
computeThreatListDiffCallable()
public final UnaryCallable<ComputeThreatListDiffRequest,ComputeThreatListDiffResponse> computeThreatListDiffCallable()
Gets the most recent threat list diffs. These diffs should be applied to a local database of hashes to keep it up-to-date. If the local database is empty or excessively out-of-date, a complete snapshot of the database will be returned. This Method only updates a single ThreatList at a time. To update multiple ThreatList databases, this method needs to be called once for each list.
Sample code:
try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
ComputeThreatListDiffRequest request =
ComputeThreatListDiffRequest.newBuilder()
.setThreatType(ThreatType.forNumber(0))
.setVersionToken(ByteString.EMPTY)
.setConstraints(ComputeThreatListDiffRequest.Constraints.newBuilder().build())
.build();
ApiFuture
Type | Description |
UnaryCallable<ComputeThreatListDiffRequest,ComputeThreatListDiffResponse> |
createSubmission(CreateSubmissionRequest request)
public final Submission createSubmission(CreateSubmissionRequest request)
Creates a Submission of a URI suspected of containing phishing content to be reviewed. If the result verifies the existence of malicious phishing content, the site will be added to the Google's Social Engineering lists in order to protect users that could get exposed to this threat in the future. Only projects with CREATE_SUBMISSION_USERS visibility can use this method.
Sample code:
try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
CreateSubmissionRequest request =
CreateSubmissionRequest.newBuilder()
.setParent(ProjectName.of("[PROJECT]").toString())
.setSubmission(Submission.newBuilder().build())
.build();
Submission response = webRiskServiceClient.createSubmission(request);
}
Name | Description |
request | CreateSubmissionRequest The request object containing all of the parameters for the API call. |
Type | Description |
Submission |
createSubmission(ProjectName parent, Submission submission)
public final Submission createSubmission(ProjectName parent, Submission submission)
Creates a Submission of a URI suspected of containing phishing content to be reviewed. If the result verifies the existence of malicious phishing content, the site will be added to the Google's Social Engineering lists in order to protect users that could get exposed to this threat in the future. Only projects with CREATE_SUBMISSION_USERS visibility can use this method.
Sample code:
try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
ProjectName parent = ProjectName.of("[PROJECT]");
Submission submission = Submission.newBuilder().build();
Submission response = webRiskServiceClient.createSubmission(parent, submission);
}
Name | Description |
parent | ProjectName Required. The name of the project that is making the submission. This string is in the format "projects/{project_number}". |
submission | Submission Required. The submission that contains the content of the phishing report. |
Type | Description |
Submission |
createSubmission(String parent, Submission submission)
public final Submission createSubmission(String parent, Submission submission)
Creates a Submission of a URI suspected of containing phishing content to be reviewed. If the result verifies the existence of malicious phishing content, the site will be added to the Google's Social Engineering lists in order to protect users that could get exposed to this threat in the future. Only projects with CREATE_SUBMISSION_USERS visibility can use this method.
Sample code:
try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
String parent = ProjectName.of("[PROJECT]").toString();
Submission submission = Submission.newBuilder().build();
Submission response = webRiskServiceClient.createSubmission(parent, submission);
}
Name | Description |
parent | String Required. The name of the project that is making the submission. This string is in the format "projects/{project_number}". |
submission | Submission Required. The submission that contains the content of the phishing report. |
Type | Description |
Submission |
createSubmissionCallable()
public final UnaryCallable<CreateSubmissionRequest,Submission> createSubmissionCallable()
Creates a Submission of a URI suspected of containing phishing content to be reviewed. If the result verifies the existence of malicious phishing content, the site will be added to the Google's Social Engineering lists in order to protect users that could get exposed to this threat in the future. Only projects with CREATE_SUBMISSION_USERS visibility can use this method.
Sample code:
try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
CreateSubmissionRequest request =
CreateSubmissionRequest.newBuilder()
.setParent(ProjectName.of("[PROJECT]").toString())
.setSubmission(Submission.newBuilder().build())
.build();
ApiFuture<Submission> future =
webRiskServiceClient.createSubmissionCallable().futureCall(request);
// Do something.
Submission response = future.get();
}
Type | Description |
UnaryCallable<CreateSubmissionRequest,Submission> |
getSettings()
public final WebRiskServiceSettings getSettings()
Type | Description |
WebRiskServiceSettings |
getStub()
public WebRiskServiceStub getStub()
Type | Description |
WebRiskServiceStub |
isShutdown()
public boolean isShutdown()
Type | Description |
boolean |
isTerminated()
public boolean isTerminated()
Type | Description |
boolean |
searchHashes(ByteString hashPrefix, List<ThreatType> threatTypes)
public final SearchHashesResponse searchHashes(ByteString hashPrefix, List<ThreatType> threatTypes)
Gets the full hashes that match the requested hash prefix. This is used after a hash prefix is looked up in a threatList and there is a match. The client side threatList only holds partial hashes so the client must query this method to determine if there is a full hash match of a threat.
Sample code:
try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
ByteString hashPrefix = ByteString.EMPTY;
List
Name | Description |
hashPrefix | ByteString A hash prefix, consisting of the most significant 4-32 bytes of a SHA256 hash. For JSON requests, this field is base64-encoded. |
threatTypes | List<ThreatType> Required. The ThreatLists to search in. Multiple ThreatLists may be specified. |
Type | Description |
SearchHashesResponse |
searchHashes(SearchHashesRequest request)
public final SearchHashesResponse searchHashes(SearchHashesRequest request)
Gets the full hashes that match the requested hash prefix. This is used after a hash prefix is looked up in a threatList and there is a match. The client side threatList only holds partial hashes so the client must query this method to determine if there is a full hash match of a threat.
Sample code:
try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
SearchHashesRequest request =
SearchHashesRequest.newBuilder()
.setHashPrefix(ByteString.EMPTY)
.addAllThreatTypes(new ArrayList
Name | Description |
request | SearchHashesRequest The request object containing all of the parameters for the API call. |
Type | Description |
SearchHashesResponse |
searchHashesCallable()
public final UnaryCallable<SearchHashesRequest,SearchHashesResponse> searchHashesCallable()
Gets the full hashes that match the requested hash prefix. This is used after a hash prefix is looked up in a threatList and there is a match. The client side threatList only holds partial hashes so the client must query this method to determine if there is a full hash match of a threat.
Sample code:
try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
SearchHashesRequest request =
SearchHashesRequest.newBuilder()
.setHashPrefix(ByteString.EMPTY)
.addAllThreatTypes(new ArrayList
Type | Description |
UnaryCallable<SearchHashesRequest,SearchHashesResponse> |
searchUris(SearchUrisRequest request)
public final SearchUrisResponse searchUris(SearchUrisRequest request)
This method is used to check whether a URI is on a given threatList. Multiple threatLists may be searched in a single query. The response will list all requested threatLists the URI was found to match. If the URI is not found on any of the requested ThreatList an empty response will be returned.
Sample code:
try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
SearchUrisRequest request =
SearchUrisRequest.newBuilder()
.setUri("uri116076")
.addAllThreatTypes(new ArrayList
Name | Description |
request | SearchUrisRequest The request object containing all of the parameters for the API call. |
Type | Description |
SearchUrisResponse |
searchUris(String uri, List<ThreatType> threatTypes)
public final SearchUrisResponse searchUris(String uri, List<ThreatType> threatTypes)
This method is used to check whether a URI is on a given threatList. Multiple threatLists may be searched in a single query. The response will list all requested threatLists the URI was found to match. If the URI is not found on any of the requested ThreatList an empty response will be returned.
Sample code:
try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
String uri = "uri116076";
List
Name | Description |
uri | String Required. The URI to be checked for matches. |
threatTypes | List<ThreatType> Required. The ThreatLists to search in. Multiple ThreatLists may be specified. |
Type | Description |
SearchUrisResponse |
searchUrisCallable()
public final UnaryCallable<SearchUrisRequest,SearchUrisResponse> searchUrisCallable()
This method is used to check whether a URI is on a given threatList. Multiple threatLists may be searched in a single query. The response will list all requested threatLists the URI was found to match. If the URI is not found on any of the requested ThreatList an empty response will be returned.
Sample code:
try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
SearchUrisRequest request =
SearchUrisRequest.newBuilder()
.setUri("uri116076")
.addAllThreatTypes(new ArrayList
Type | Description |
UnaryCallable<SearchUrisRequest,SearchUrisResponse> |
shutdown()
public void shutdown()
shutdownNow()
public void shutdownNow()