code: public Observable<ServiceResponse<Integer>> getTaggedImageCountWithServiceResponseAsync(UUID projectId, UUID iterationId, List<String> tagIds) {
          if (projectId == null) {
              throw new IllegalArgumentException("Parameter projectId is required and cannot be null.");
          }
          if (this.client.apiKey() == null) {
              throw new IllegalArgumentException("Parameter this.client.apiKey() is required and cannot be null.");
          }
          Validator.validate(tagIds);
          String tagIdsConverted = this.client.serializerAdapter().serializeList(tagIds, CollectionFormat.CSV);
          return service.getTaggedImageCount(projectId, iterationId, tagIdsConverted, this.client.apiKey(), this.client.acceptLanguage(), this.client.userAgent())
              .flatMap(new Func1<Response<ResponseBody>, Observable<ServiceResponse<Integer>>>() {
                  @Override
                  public Observable<ServiceResponse<Integer>> call(Response<ResponseBody> response) {
                      try {
                          ServiceResponse<Integer> clientResponse = getTaggedImageCountDelegate(response);
                          return Observable.just(clientResponse);
                      } catch (Throwable t) {
                          return Observable.error(t);
                      }
                  }
              });
      }
docs: Gets the number of images tagged with the provided {tagIds}.
  The filtering is on an and/or relationship. For example, if the provided tag ids are for the "Dog" and
  "Cat" tags, then only images tagged with Dog and/or Cat will be returned.
  
  @param projectId The project id
  @param iterationId The iteration id. Defaults to workspace
  @param tagIds A list of tags ids to filter the images to count. Defaults to all tags when null.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the observable to the Integer object