Hmx Accounts

<back to all web services

UpdateProduct

Requires Authentication
The following routes are available for this service:
PUT/api/products/{id}Update a Product
import java.math.*;
import java.util.*;
import net.servicestack.client.*;

public class dtos
{

    public static class UpdateProduct
    {
        public String id = null;
        public String name = null;
        public String description = null;
        public BigDecimal price = null;
        public String productType = null;
        public Integer year = null;
        public String applicationId = null;
        public String requiredProductId = null;
        public String scope = null;
        public String feature = null;
        public ArrayList<String> childProductIds = null;
        public HashMap<Integer,BigDecimal> volumeDiscounts = null;
        
        public String getId() { return id; }
        public UpdateProduct setId(String value) { this.id = value; return this; }
        public String getName() { return name; }
        public UpdateProduct setName(String value) { this.name = value; return this; }
        public String getDescription() { return description; }
        public UpdateProduct setDescription(String value) { this.description = value; return this; }
        public BigDecimal getPrice() { return price; }
        public UpdateProduct setPrice(BigDecimal value) { this.price = value; return this; }
        public String getProductType() { return productType; }
        public UpdateProduct setProductType(String value) { this.productType = value; return this; }
        public Integer getYear() { return year; }
        public UpdateProduct setYear(Integer value) { this.year = value; return this; }
        public String getApplicationId() { return applicationId; }
        public UpdateProduct setApplicationId(String value) { this.applicationId = value; return this; }
        public String getRequiredProductId() { return requiredProductId; }
        public UpdateProduct setRequiredProductId(String value) { this.requiredProductId = value; return this; }
        public String getScope() { return scope; }
        public UpdateProduct setScope(String value) { this.scope = value; return this; }
        public String getFeature() { return feature; }
        public UpdateProduct setFeature(String value) { this.feature = value; return this; }
        public ArrayList<String> getChildProductIds() { return childProductIds; }
        public UpdateProduct setChildProductIds(ArrayList<String> value) { this.childProductIds = value; return this; }
        public HashMap<Integer,BigDecimal> getVolumeDiscounts() { return volumeDiscounts; }
        public UpdateProduct setVolumeDiscounts(HashMap<Integer,BigDecimal> value) { this.volumeDiscounts = value; return this; }
    }

    public static class UpdateProductResponse
    {
        public String message = null;
        public HttpStatusCode status = null;
        public ResponseStatus responseStatus = null;
        
        public String getMessage() { return message; }
        public UpdateProductResponse setMessage(String value) { this.message = value; return this; }
        public HttpStatusCode getStatus() { return status; }
        public UpdateProductResponse setStatus(HttpStatusCode value) { this.status = value; return this; }
        public ResponseStatus getResponseStatus() { return responseStatus; }
        public UpdateProductResponse setResponseStatus(ResponseStatus value) { this.responseStatus = value; return this; }
    }

}

Java UpdateProduct DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

PUT /api/products/{id} HTTP/1.1 
Host: accounts.dev.healthmonix.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	id: String,
	name: String,
	description: String,
	price: 0,
	productType: String,
	year: 0,
	applicationId: String,
	requiredProductId: String,
	scope: String,
	feature: String,
	childProductIds: 
	[
		String
	],
	volumeDiscounts: 
	{
		0: 0
	}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	message: String,
	status: Continue,
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}