code: public Observable<ServiceResponse<List<IdentifyResult>>> identifyWithServiceResponseAsync(String personGroupId, List<UUID> faceIds, Integer maxNumOfCandidatesReturned, Double confidenceThreshold) {
          if (this.client.azureRegion() == null) {
              throw new IllegalArgumentException("Parameter this.client.azureRegion() is required and cannot be null.");
          }
          if (personGroupId == null) {
              throw new IllegalArgumentException("Parameter personGroupId is required and cannot be null.");
          }
          if (faceIds == null) {
              throw new IllegalArgumentException("Parameter faceIds is required and cannot be null.");
          }
          Validator.validate(faceIds);
          IdentifyRequest bodyParameter = new IdentifyRequest();
          bodyParameter.withPersonGroupId(personGroupId);
          bodyParameter.withFaceIds(faceIds);
          bodyParameter.withMaxNumOfCandidatesReturned(maxNumOfCandidatesReturned);
          bodyParameter.withConfidenceThreshold(confidenceThreshold);
          String parameterizedHost = Joiner.on(", ").join("{AzureRegion}", this.client.azureRegion());
          return service.identify(this.client.acceptLanguage(), bodyParameter, parameterizedHost, this.client.userAgent())
              .flatMap(new Func1<Response<ResponseBody>, Observable<ServiceResponse<List<IdentifyResult>>>>() {
                  @Override
                  public Observable<ServiceResponse<List<IdentifyResult>>> call(Response<ResponseBody> response) {
                      try {
                          ServiceResponse<List<IdentifyResult>> clientResponse = identifyDelegate(response);
                          return Observable.just(clientResponse);
                      } catch (Throwable t) {
                          return Observable.error(t);
                      }
                  }
              });
      }
docs: Identify unknown faces from a person group.
  
  @param personGroupId PersonGroupId of the target person group, created by PersonGroups.Create
  @param faceIds Array of query faces faceIds, created by the Face - Detect. Each of the faces are identified independently. The valid number of faceIds is between [1, 10].
  @param maxNumOfCandidatesReturned The range of maxNumOfCandidatesReturned is between 1 and 5 (default is 1).
  @param confidenceThreshold Confidence threshold of identification, used to judge whether one face belong to one person. The range of confidenceThreshold is [0, 1] (default specified by algorithm).
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the observable to the List&lt;IdentifyResult&gt; object