code: public Observable<ServiceResponse<PersistedFace>> addPersonFaceFromUrlWithServiceResponseAsync(String personGroupId, UUID personId, String url, AddPersonFaceFromUrlOptionalParameter addPersonFaceFromUrlOptionalParameter) {
          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 (personId == null) {
              throw new IllegalArgumentException("Parameter personId is required and cannot be null.");
          }
          if (url == null) {
              throw new IllegalArgumentException("Parameter url is required and cannot be null.");
          }
          final String userData = addPersonFaceFromUrlOptionalParameter != null ? addPersonFaceFromUrlOptionalParameter.userData() : null;
          final List<Integer> targetFace = addPersonFaceFromUrlOptionalParameter != null ? addPersonFaceFromUrlOptionalParameter.targetFace() : null;
  
          return addPersonFaceFromUrlWithServiceResponseAsync(personGroupId, personId, url, userData, targetFace);
      }
docs: Add a representative face to a person for identification. The input face is specified as an image with a targetFace rectangle.
  
  @param personGroupId Id referencing a particular person group.
  @param personId Id referencing a particular person.
  @param url Publicly reachable URL of an image
  @param addPersonFaceFromUrlOptionalParameter the object representing the optional parameters to be set before calling this API
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the observable to the PersistedFace object