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 |
---|
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
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"}