BokaMera.API.Host

<back to all web services

CreateArticle

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
POST/articlesAdd new articleAdd article to the company for the currently logged in user
import java.math.*;
import java.util.*;
import net.servicestack.client.*;

public class dtos
{

    public static class CreateArticle
    {
        /**
        * 
        */
        @ApiMember(Description="")
        public UUID CompanyId = null;

        /**
        * 
        */
        @ApiMember(Description="", IsRequired=true)
        public String Name = null;

        /**
        * 
        */
        @ApiMember(Description="", IsRequired=true)
        public Integer ArticleTypeId = null;

        /**
        * 
        */
        @ApiMember(Description="", IsRequired=true)
        public String Description = null;

        /**
        * 
        */
        @ApiMember(Description="")
        public Uri ImageUrl = null;

        /**
        * 
        */
        @ApiMember(Description="", IsRequired=true)
        public Boolean Active = null;

        /**
        * 
        */
        @ApiMember(Description="", IsRequired=true)
        public Integer Amount = null;

        /**
        * .
        */
        @ApiMember(Description=".", IsRequired=true)
        public Double Price = null;

        /**
        * The payment currency id
        */
        @ApiMember(Description="The payment currency id", IsRequired=true)
        public String CurrencyId = null;

        /**
        * Query for specific services.
        */
        @ApiMember(Description="Query for specific services.", ParameterType="query")
        public ArrayList<Integer> ServiceIds = null;
        
        public UUID getCompanyId() { return CompanyId; }
        public CreateArticle setCompanyId(UUID value) { this.CompanyId = value; return this; }
        public String getName() { return Name; }
        public CreateArticle setName(String value) { this.Name = value; return this; }
        public Integer getArticleTypeId() { return ArticleTypeId; }
        public CreateArticle setArticleTypeId(Integer value) { this.ArticleTypeId = value; return this; }
        public String getDescription() { return Description; }
        public CreateArticle setDescription(String value) { this.Description = value; return this; }
        public Uri getImageUrl() { return ImageUrl; }
        public CreateArticle setImageUrl(Uri value) { this.ImageUrl = value; return this; }
        public Boolean isActive() { return Active; }
        public CreateArticle setActive(Boolean value) { this.Active = value; return this; }
        public Integer getAmount() { return Amount; }
        public CreateArticle setAmount(Integer value) { this.Amount = value; return this; }
        public Double getPrice() { return Price; }
        public CreateArticle setPrice(Double value) { this.Price = value; return this; }
        public String getCurrencyId() { return CurrencyId; }
        public CreateArticle setCurrencyId(String value) { this.CurrencyId = value; return this; }
        public ArrayList<Integer> getServiceIds() { return ServiceIds; }
        public CreateArticle setServiceIds(ArrayList<Integer> value) { this.ServiceIds = value; return this; }
    }

    public static class ArticleResponse
    {
        public UUID CompanyId = null;
        public Integer Id = null;
        public String Name = null;
        public Integer ArticleTypeId = null;
        public String Description = null;
        public String ImageUrl = null;
        public Boolean Active = null;
        public Integer Amount = null;
        public Double Price = null;
        public String CurrencyId = null;
        public Date UpdatedDate = null;
        public Date CreatedDate = null;
        public ArrayList<ArticleServiceRelation> Services = null;
        public ArrayList<Integer> ServiceIds = null;
        public String PriceSign = null;
        
        public UUID getCompanyId() { return CompanyId; }
        public ArticleResponse setCompanyId(UUID value) { this.CompanyId = value; return this; }
        public Integer getId() { return Id; }
        public ArticleResponse setId(Integer value) { this.Id = value; return this; }
        public String getName() { return Name; }
        public ArticleResponse setName(String value) { this.Name = value; return this; }
        public Integer getArticleTypeId() { return ArticleTypeId; }
        public ArticleResponse setArticleTypeId(Integer value) { this.ArticleTypeId = value; return this; }
        public String getDescription() { return Description; }
        public ArticleResponse setDescription(String value) { this.Description = value; return this; }
        public String getImageUrl() { return ImageUrl; }
        public ArticleResponse setImageUrl(String value) { this.ImageUrl = value; return this; }
        public Boolean isActive() { return Active; }
        public ArticleResponse setActive(Boolean value) { this.Active = value; return this; }
        public Integer getAmount() { return Amount; }
        public ArticleResponse setAmount(Integer value) { this.Amount = value; return this; }
        public Double getPrice() { return Price; }
        public ArticleResponse setPrice(Double value) { this.Price = value; return this; }
        public String getCurrencyId() { return CurrencyId; }
        public ArticleResponse setCurrencyId(String value) { this.CurrencyId = value; return this; }
        public Date getUpdatedDate() { return UpdatedDate; }
        public ArticleResponse setUpdatedDate(Date value) { this.UpdatedDate = value; return this; }
        public Date getCreatedDate() { return CreatedDate; }
        public ArticleResponse setCreatedDate(Date value) { this.CreatedDate = value; return this; }
        public ArrayList<ArticleServiceRelation> getServices() { return Services; }
        public ArticleResponse setServices(ArrayList<ArticleServiceRelation> value) { this.Services = value; return this; }
        public ArrayList<Integer> getServiceIds() { return ServiceIds; }
        public ArticleResponse setServiceIds(ArrayList<Integer> value) { this.ServiceIds = value; return this; }
        public String getPriceSign() { return PriceSign; }
        public ArticleResponse setPriceSign(String value) { this.PriceSign = value; return this; }
    }

    public static class ArticleServiceRelation extends BaseModel
    {
        @Required()
        public UUID CompanyId = null;

        public Integer Id = null;
        @Required()
        public Integer ServiceId = null;

        @Required()
        public Integer ArticleId = null;
        
        public UUID getCompanyId() { return CompanyId; }
        public ArticleServiceRelation setCompanyId(UUID value) { this.CompanyId = value; return this; }
        public Integer getId() { return Id; }
        public ArticleServiceRelation setId(Integer value) { this.Id = value; return this; }
        public Integer getServiceId() { return ServiceId; }
        public ArticleServiceRelation setServiceId(Integer value) { this.ServiceId = value; return this; }
        public Integer getArticleId() { return ArticleId; }
        public ArticleServiceRelation setArticleId(Integer value) { this.ArticleId = value; return this; }
    }

    public static class BaseModel
    {
        
    }

}

Java CreateArticle 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.

POST /articles HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	CompanyId: 00000000-0000-0000-0000-000000000000,
	Name: String,
	ArticleTypeId: 0,
	Description: String,
	Active: False,
	Amount: 0,
	Price: 0,
	CurrencyId: String,
	ServiceIds: 
	[
		0
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Id: 0,
	Name: String,
	ArticleTypeId: 0,
	Description: String,
	ImageUrl: String,
	Active: False,
	Amount: 0,
	Price: 0,
	CurrencyId: String,
	Services: 
	[
		{
			Id: 0,
			ServiceId: 0,
			ArticleId: 0
		}
	],
	ServiceIds: 
	[
		0
	],
	PriceSign: String
}