| Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
| PUT | /articles/mappings | Update external article mappings for the company articles | Create or update mappings between BokaMera articles and articles in an external system, for example e-accounting |
|---|
namespace BokaMera.API.ServiceModel.Dtos
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type ArticleMappingToHandle() =
///<summary>
///The id of an existing mapping to update; leave empty to create a new one
///</summary>
[<ApiMember(Description="The id of an existing mapping to update; leave empty to create a new one")>]
member val Id:Nullable<Guid> = new Nullable<Guid>() with get,set
///<summary>
///The BokaMera article id
///</summary>
[<ApiMember(Description="The BokaMera article id")>]
member val ArticleId:Int32 = new Int32() with get,set
///<summary>
///The Reference Type: StripeArticle = 1, EAccountingArticle = 2
///</summary>
[<ApiMember(Description="The Reference Type: StripeArticle = 1, EAccountingArticle = 2")>]
member val ReferenceType:String = null with get,set
///<summary>
///The external reference; Values for EAccountingArticle, StripeArticle
///</summary>
[<ApiMember(Description="The external reference; Values for EAccountingArticle, StripeArticle")>]
member val ExternalReference:String = null with get,set
[<ValidateRequest(Validator="IsAuthenticated")>]
[<AllowNullLiteral>]
type UpdateArticleMappings() =
///<summary>
///Company to update article mappings for
///</summary>
[<ApiMember(Description="Company to update article mappings for")>]
member val CompanyId:Nullable<Guid> = new Nullable<Guid>() with get,set
///<summary>
///The article mappings to create or update
///</summary>
[<ApiMember(Description="The article mappings to create or update", IsRequired=true)>]
member val ArticleMappings:ResizeArray<ArticleMappingToHandle> = null with 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.
PUT /articles/mappings HTTP/1.1
Host: testapi.bokamera.se
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"CompanyId":"00000000-0000-0000-0000-000000000000","ArticleMappings":[{"Id":"00000000-0000-0000-0000-000000000000","ArticleId":0,"ReferenceType":"String","ExternalReference":"String"}]}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
[{"ArticleId":0,"ExternalReference":"String","ReferenceType":"String"}]