Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
POST | /articles | Add new article | Add article to the company for the currently logged in user |
---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using BokaMera.API.ServiceModel.Dtos;
using BokaMera.API.ServiceModel.Db;
namespace BokaMera.API.ServiceModel.Db
{
public partial class ArticleServiceRelation
: BaseModel
{
[Required]
public virtual Guid CompanyId { get; set; }
public virtual int Id { get; set; }
[Required]
public virtual int ServiceId { get; set; }
[Required]
public virtual int ArticleId { get; set; }
}
public partial class BaseModel
{
}
}
namespace BokaMera.API.ServiceModel.Dtos
{
public partial class ArticleResponse
{
public ArticleResponse()
{
Services = new List<ArticleServiceRelation>{};
ServiceIds = new List<int>{};
}
public virtual Guid CompanyId { get; set; }
public virtual int Id { get; set; }
public virtual string Name { get; set; }
public virtual int ArticleTypeId { get; set; }
public virtual string Description { get; set; }
public virtual string ImageUrl { get; set; }
public virtual bool Active { get; set; }
public virtual int Amount { get; set; }
public virtual double Price { get; set; }
public virtual string CurrencyId { get; set; }
public virtual DateTime UpdatedDate { get; set; }
public virtual DateTime CreatedDate { get; set; }
public virtual List<ArticleServiceRelation> Services { get; set; }
public virtual List<int> ServiceIds { get; set; }
public virtual string PriceSign { get; set; }
}
public partial class CreateArticle
{
public CreateArticle()
{
ServiceIds = new int[]{};
}
///<summary>
///
///</summary>
[ApiMember(Description="")]
public virtual Guid? CompanyId { get; set; }
///<summary>
///
///</summary>
[ApiMember(Description="", IsRequired=true)]
public virtual string Name { get; set; }
///<summary>
///
///</summary>
[ApiMember(Description="", IsRequired=true)]
public virtual int ArticleTypeId { get; set; }
///<summary>
///
///</summary>
[ApiMember(Description="", IsRequired=true)]
public virtual string Description { get; set; }
///<summary>
///
///</summary>
[ApiMember(Description="")]
public virtual Uri ImageUrl { get; set; }
///<summary>
///
///</summary>
[ApiMember(Description="", IsRequired=true)]
public virtual bool Active { get; set; }
///<summary>
///
///</summary>
[ApiMember(Description="", IsRequired=true)]
public virtual int Amount { get; set; }
///<summary>
///.
///</summary>
[ApiMember(Description=".", IsRequired=true)]
public virtual double Price { get; set; }
///<summary>
///The payment currency id
///</summary>
[ApiMember(Description="The payment currency id", IsRequired=true)]
public virtual string CurrencyId { get; set; }
///<summary>
///Query for specific services.
///</summary>
[ApiMember(Description="Query for specific services.", ParameterType="query")]
public virtual int[] ServiceIds { get; set; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
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/csv
Content-Type: text/csv
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/csv 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"}