Class WebRiskServiceClient

  • All Implemented Interfaces:
    com.google.api.gax.core.BackgroundResource, AutoCloseable

    @Generated("by gapic-generator-java")
    public class WebRiskServiceClient
    extends Object
    implements com.google.api.gax.core.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:

    
     // This snippet has been automatically generated and should be regarded as a code template only.
     // It will require modifications to work:
     // - It may require correct/in-range values for request initialization.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     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:

    1. 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.
    2. 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.
    3. 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:

    
     // This snippet has been automatically generated and should be regarded as a code template only.
     // It will require modifications to work:
     // - It may require correct/in-range values for request initialization.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     WebRiskServiceSettings webRiskServiceSettings =
         WebRiskServiceSettings.newBuilder()
             .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
             .build();
     WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create(webRiskServiceSettings);
     

    To customize the endpoint:

    
     // This snippet has been automatically generated and should be regarded as a code template only.
     // It will require modifications to work:
     // - It may require correct/in-range values for request initialization.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     WebRiskServiceSettings webRiskServiceSettings =
         WebRiskServiceSettings.newBuilder().setEndpoint(myEndpoint).build();
     WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create(webRiskServiceSettings);
     

    To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over the wire:

    
     // This snippet has been automatically generated and should be regarded as a code template only.
     // It will require modifications to work:
     // - It may require correct/in-range values for request initialization.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     WebRiskServiceSettings webRiskServiceSettings =
         WebRiskServiceSettings.newHttpJsonBuilder().build();
     WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create(webRiskServiceSettings);
     

    Please refer to the GitHub repository's samples for more quickstart code snippets.

    • Constructor Detail

      • WebRiskServiceClient

        protected WebRiskServiceClient​(WebRiskServiceSettings settings)
                                throws IOException
        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.
        Throws:
        IOException
    • Method Detail

      • create

        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).
      • getOperationsClient

        public final com.google.longrunning.OperationsClient getOperationsClient()
        Returns the OperationsClient that can be used to query the status of a long-running operation returned by another API method call.
      • getHttpJsonOperationsClient

        @BetaApi
        public final com.google.api.gax.httpjson.longrunning.OperationsClient getHttpJsonOperationsClient()
        Returns the OperationsClient that can be used to query the status of a long-running operation returned by another API method call.
      • computeThreatListDiff

        public final ComputeThreatListDiffResponse computeThreatListDiff​(ThreatType threatType,
                                                                         com.google.protobuf.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:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         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);
         }
         
        Parameters:
        threatType - Required. The threat list to update. Only a single ThreatType should be specified per request. If you want to handle multiple ThreatTypes, you must make one request per ThreatType.
        versionToken - 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 - Required. The constraints associated with this request.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • computeThreatListDiff

        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:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         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);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • computeThreatListDiffCallable

        public final com.google.api.gax.rpc.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:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
           ComputeThreatListDiffRequest request =
               ComputeThreatListDiffRequest.newBuilder()
                   .setThreatType(ThreatType.forNumber(0))
                   .setVersionToken(ByteString.EMPTY)
                   .setConstraints(ComputeThreatListDiffRequest.Constraints.newBuilder().build())
                   .build();
           ApiFuture<ComputeThreatListDiffResponse> future =
               webRiskServiceClient.computeThreatListDiffCallable().futureCall(request);
           // Do something.
           ComputeThreatListDiffResponse response = future.get();
         }
         
      • searchUris

        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:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
           String uri = "uri116076";
           List<ThreatType> threatTypes = new ArrayList<>();
           SearchUrisResponse response = webRiskServiceClient.searchUris(uri, threatTypes);
         }
         
        Parameters:
        uri - Required. The URI to be checked for matches.
        threatTypes - Required. The ThreatLists to search in. Multiple ThreatLists may be specified.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • searchUris

        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:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
           SearchUrisRequest request =
               SearchUrisRequest.newBuilder()
                   .setUri("uri116076")
                   .addAllThreatTypes(new ArrayList<ThreatType>())
                   .build();
           SearchUrisResponse response = webRiskServiceClient.searchUris(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • searchUrisCallable

        public final com.google.api.gax.rpc.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:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
           SearchUrisRequest request =
               SearchUrisRequest.newBuilder()
                   .setUri("uri116076")
                   .addAllThreatTypes(new ArrayList<ThreatType>())
                   .build();
           ApiFuture<SearchUrisResponse> future =
               webRiskServiceClient.searchUrisCallable().futureCall(request);
           // Do something.
           SearchUrisResponse response = future.get();
         }
         
      • searchHashes

        public final SearchHashesResponse searchHashes​(com.google.protobuf.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:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
           ByteString hashPrefix = ByteString.EMPTY;
           List<ThreatType> threatTypes = new ArrayList<>();
           SearchHashesResponse response = webRiskServiceClient.searchHashes(hashPrefix, threatTypes);
         }
         
        Parameters:
        hashPrefix - A hash prefix, consisting of the most significant 4-32 bytes of a SHA256 hash. For JSON requests, this field is base64-encoded. Note that if this parameter is provided by a URI, it must be encoded using the web safe base64 variant (RFC 4648).
        threatTypes - Required. The ThreatLists to search in. Multiple ThreatLists may be specified.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • searchHashes

        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:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
           SearchHashesRequest request =
               SearchHashesRequest.newBuilder()
                   .setHashPrefix(ByteString.EMPTY)
                   .addAllThreatTypes(new ArrayList<ThreatType>())
                   .build();
           SearchHashesResponse response = webRiskServiceClient.searchHashes(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • searchHashesCallable

        public final com.google.api.gax.rpc.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:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
           SearchHashesRequest request =
               SearchHashesRequest.newBuilder()
                   .setHashPrefix(ByteString.EMPTY)
                   .addAllThreatTypes(new ArrayList<ThreatType>())
                   .build();
           ApiFuture<SearchHashesResponse> future =
               webRiskServiceClient.searchHashesCallable().futureCall(request);
           // Do something.
           SearchHashesResponse response = future.get();
         }
         
      • createSubmission

        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](https://support.google.com/webmasters/answer/6350487/) in order to protect users that could get exposed to this threat in the future. Only allowlisted projects can use this method during Early Access. Please reach out to Sales or your customer engineer to obtain access.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
           ProjectName parent = ProjectName.of("[PROJECT]");
           Submission submission = Submission.newBuilder().build();
           Submission response = webRiskServiceClient.createSubmission(parent, submission);
         }
         
        Parameters:
        parent - Required. The name of the project that is making the submission. This string is in the format "projects/{project_number}".
        submission - Required. The submission that contains the content of the phishing report.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createSubmission

        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](https://support.google.com/webmasters/answer/6350487/) in order to protect users that could get exposed to this threat in the future. Only allowlisted projects can use this method during Early Access. Please reach out to Sales or your customer engineer to obtain access.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
           String parent = ProjectName.of("[PROJECT]").toString();
           Submission submission = Submission.newBuilder().build();
           Submission response = webRiskServiceClient.createSubmission(parent, submission);
         }
         
        Parameters:
        parent - Required. The name of the project that is making the submission. This string is in the format "projects/{project_number}".
        submission - Required. The submission that contains the content of the phishing report.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createSubmission

        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](https://support.google.com/webmasters/answer/6350487/) in order to protect users that could get exposed to this threat in the future. Only allowlisted projects can use this method during Early Access. Please reach out to Sales or your customer engineer to obtain access.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
           CreateSubmissionRequest request =
               CreateSubmissionRequest.newBuilder()
                   .setParent(ProjectName.of("[PROJECT]").toString())
                   .setSubmission(Submission.newBuilder().build())
                   .build();
           Submission response = webRiskServiceClient.createSubmission(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createSubmissionCallable

        public final com.google.api.gax.rpc.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](https://support.google.com/webmasters/answer/6350487/) in order to protect users that could get exposed to this threat in the future. Only allowlisted projects can use this method during Early Access. Please reach out to Sales or your customer engineer to obtain access.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         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();
         }
         
      • submitUriAsync

        public final com.google.api.gax.longrunning.OperationFuture<Submission,​SubmitUriMetadata> submitUriAsync​(SubmitUriRequest request)
        Submits a URI suspected of containing malicious content to be reviewed. Returns a google.longrunning.Operation which, once the review is complete, is updated with its result. You can use the [Pub/Sub API] (https://cloud.google.com/pubsub) to receive notifications for the returned Operation. If the result verifies the existence of malicious content, the site will be added to the [Google's Social Engineering lists] (https://support.google.com/webmasters/answer/6350487/) in order to protect users that could get exposed to this threat in the future. Only allowlisted projects can use this method during Early Access. Please reach out to Sales or your customer engineer to obtain access.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
           SubmitUriRequest request =
               SubmitUriRequest.newBuilder()
                   .setParent(ProjectName.of("[PROJECT]").toString())
                   .setSubmission(Submission.newBuilder().build())
                   .setThreatInfo(ThreatInfo.newBuilder().build())
                   .setThreatDiscovery(ThreatDiscovery.newBuilder().build())
                   .build();
           Submission response = webRiskServiceClient.submitUriAsync(request).get();
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • submitUriOperationCallable

        public final com.google.api.gax.rpc.OperationCallable<SubmitUriRequest,​Submission,​SubmitUriMetadata> submitUriOperationCallable()
        Submits a URI suspected of containing malicious content to be reviewed. Returns a google.longrunning.Operation which, once the review is complete, is updated with its result. You can use the [Pub/Sub API] (https://cloud.google.com/pubsub) to receive notifications for the returned Operation. If the result verifies the existence of malicious content, the site will be added to the [Google's Social Engineering lists] (https://support.google.com/webmasters/answer/6350487/) in order to protect users that could get exposed to this threat in the future. Only allowlisted projects can use this method during Early Access. Please reach out to Sales or your customer engineer to obtain access.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
           SubmitUriRequest request =
               SubmitUriRequest.newBuilder()
                   .setParent(ProjectName.of("[PROJECT]").toString())
                   .setSubmission(Submission.newBuilder().build())
                   .setThreatInfo(ThreatInfo.newBuilder().build())
                   .setThreatDiscovery(ThreatDiscovery.newBuilder().build())
                   .build();
           OperationFuture<Submission, SubmitUriMetadata> future =
               webRiskServiceClient.submitUriOperationCallable().futureCall(request);
           // Do something.
           Submission response = future.get();
         }
         
      • submitUriCallable

        public final com.google.api.gax.rpc.UnaryCallable<SubmitUriRequest,​com.google.longrunning.Operation> submitUriCallable()
        Submits a URI suspected of containing malicious content to be reviewed. Returns a google.longrunning.Operation which, once the review is complete, is updated with its result. You can use the [Pub/Sub API] (https://cloud.google.com/pubsub) to receive notifications for the returned Operation. If the result verifies the existence of malicious content, the site will be added to the [Google's Social Engineering lists] (https://support.google.com/webmasters/answer/6350487/) in order to protect users that could get exposed to this threat in the future. Only allowlisted projects can use this method during Early Access. Please reach out to Sales or your customer engineer to obtain access.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (WebRiskServiceClient webRiskServiceClient = WebRiskServiceClient.create()) {
           SubmitUriRequest request =
               SubmitUriRequest.newBuilder()
                   .setParent(ProjectName.of("[PROJECT]").toString())
                   .setSubmission(Submission.newBuilder().build())
                   .setThreatInfo(ThreatInfo.newBuilder().build())
                   .setThreatDiscovery(ThreatDiscovery.newBuilder().build())
                   .build();
           ApiFuture<Operation> future = webRiskServiceClient.submitUriCallable().futureCall(request);
           // Do something.
           Operation response = future.get();
         }
         
      • shutdown

        public void shutdown()
        Specified by:
        shutdown in interface com.google.api.gax.core.BackgroundResource
      • isShutdown

        public boolean isShutdown()
        Specified by:
        isShutdown in interface com.google.api.gax.core.BackgroundResource
      • isTerminated

        public boolean isTerminated()
        Specified by:
        isTerminated in interface com.google.api.gax.core.BackgroundResource
      • shutdownNow

        public void shutdownNow()
        Specified by:
        shutdownNow in interface com.google.api.gax.core.BackgroundResource