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
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports BokaMera.API.ServiceModel.Dtos
Imports BokaMera.API.ServiceModel.Db

Namespace Global

    Namespace BokaMera.API.ServiceModel.Db

        Public Partial Class ArticleServiceRelation
            Inherits BaseModel
            <Required>
            Public Overridable Property CompanyId As Guid

            Public Overridable Property Id As Integer
            <Required>
            Public Overridable Property ServiceId As Integer

            <Required>
            Public Overridable Property ArticleId As Integer
        End Class

        Public Partial Class BaseModel
        End Class
    End Namespace

    Namespace BokaMera.API.ServiceModel.Dtos

        Public Partial Class ArticleResponse
            Public Sub New()
                Services = New List(Of ArticleServiceRelation)
                ServiceIds = New List(Of Integer)
            End Sub

            Public Overridable Property CompanyId As Guid
            Public Overridable Property Id As Integer
            Public Overridable Property Name As String
            Public Overridable Property ArticleTypeId As Integer
            Public Overridable Property Description As String
            Public Overridable Property ImageUrl As String
            Public Overridable Property Active As Boolean
            Public Overridable Property Amount As Integer
            Public Overridable Property Price As Double
            Public Overridable Property CurrencyId As String
            Public Overridable Property UpdatedDate As Date
            Public Overridable Property CreatedDate As Date
            Public Overridable Property Services As List(Of ArticleServiceRelation)
            Public Overridable Property ServiceIds As List(Of Integer)
            Public Overridable Property PriceSign As String
        End Class

        Public Partial Class CreateArticle
            Public Sub New()
                ServiceIds = New Integer(){}
            End Sub

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(Description:="")>
            Public Overridable Property CompanyId As Nullable(Of Guid)

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(Description:="", IsRequired:=true)>
            Public Overridable Property Name As String

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(Description:="", IsRequired:=true)>
            Public Overridable Property ArticleTypeId As Integer

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(Description:="", IsRequired:=true)>
            Public Overridable Property Description As String

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(Description:="")>
            Public Overridable Property ImageUrl As Uri

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(Description:="", IsRequired:=true)>
            Public Overridable Property Active As Boolean

            '''<Summary>
            '''
            '''</Summary>
            <ApiMember(Description:="", IsRequired:=true)>
            Public Overridable Property Amount As Integer

            '''<Summary>
            '''.
            '''</Summary>
            <ApiMember(Description:=".", IsRequired:=true)>
            Public Overridable Property Price As Double

            '''<Summary>
            '''The payment currency id
            '''</Summary>
            <ApiMember(Description:="The payment currency id", IsRequired:=true)>
            Public Overridable Property CurrencyId As String

            '''<Summary>
            '''Query for specific services.
            '''</Summary>
            <ApiMember(Description:="Query for specific services.", ParameterType:="query")>
            Public Overridable Property ServiceIds As Integer()
        End Class
    End Namespace
End Namespace

VB.NET 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
}