docs: @POST
      @Consumes(MediaType.APPLICATION_JSON)
      @Produces(MediaType.APPLICATION_JSON)
      public Response registerWindowsVariant(
              WindowsVariant windowsVariant,
              @PathParam("pushAppID") String pushApplicationID,
              @Context UriInfo uriInfo) {
  
          PushApplication pushApp = getSearch().findByPushApplicationIDForDeveloper(pushApplicationID);
  
          if (pushApp == null) {
              return Response.status(Response.Status.NOT_FOUND).entity("Could not find requested PushApplicationEntity").build();
          }
  
          // some validation
          try {
              validateModelClass(windowsVariant);
          } catch (ConstraintViolationException cve) {
              logger.trace("Unable to create Windows variant");
  
              // Build and return the 400 (Bad Request) response
              Response.ResponseBuilder builder = createBadRequestResponse(cve.getConstraintViolations());
  
              return builder.build();
          }
  
          logger.trace("Register Windows variant with Push Application '{}'", pushApplicationID);
          // store the Windows variant:
          variantService.addVariant(windowsVariant);
          // add iOS variant, and merge:
          pushAppService.addVariant(pushApp, windowsVariant);
  
          return Response.created(uriInfo.getAbsolutePathBuilder().path(String.valueOf(windowsVariant.getVariantID())).build()).entity(windowsVariant).build();
      }