BokaMera.API.Host

<back to all web services

UpdateArticleMappings

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
PUT/articles/mappingsUpdate external article mappings for the company articlesCreate or update mappings between BokaMera articles and articles in an external system, for example e-accounting
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;
import com.google.gson.annotations.*;
import com.google.gson.reflect.*;

public class dtos
{

    @ValidateRequest(Validator="IsAuthenticated")
    public static class UpdateArticleMappings implements ICompany
    {
        /**
        * Company to update article mappings for
        */
        @ApiMember(Description="Company to update article mappings for")
        public UUID CompanyId = null;

        /**
        * The article mappings to create or update
        */
        @ApiMember(Description="The article mappings to create or update", IsRequired=true)
        public ArrayList<ArticleMappingToHandle> ArticleMappings = new ArrayList<ArticleMappingToHandle>();
        
        public UUID getCompanyId() { return CompanyId; }
        public UpdateArticleMappings setCompanyId(UUID value) { this.CompanyId = value; return this; }
        public ArrayList<ArticleMappingToHandle> getArticleMappings() { return ArticleMappings; }
        public UpdateArticleMappings setArticleMappings(ArrayList<ArticleMappingToHandle> value) { this.ArticleMappings = value; return this; }
    }

    public static class ArticleMappingToHandle
    {
        /**
        * The id of an existing mapping to update; leave empty to create a new one
        */
        @ApiMember(Description="The id of an existing mapping to update; leave empty to create a new one")
        public UUID Id = null;

        /**
        * The BokaMera article id
        */
        @ApiMember(Description="The BokaMera article id")
        public Integer ArticleId = null;

        /**
        * The Reference Type: StripeArticle = 1, EAccountingArticle = 2
        */
        @ApiMember(Description="The Reference Type: StripeArticle = 1, EAccountingArticle = 2")
        public String ReferenceType = null;

        /**
        * The external reference; Values for EAccountingArticle, StripeArticle
        */
        @ApiMember(Description="The external reference; Values for EAccountingArticle, StripeArticle")
        public String ExternalReference = null;
        
        public UUID getId() { return Id; }
        public ArticleMappingToHandle setId(UUID value) { this.Id = value; return this; }
        public Integer getArticleId() { return ArticleId; }
        public ArticleMappingToHandle setArticleId(Integer value) { this.ArticleId = value; return this; }
        public String getReferenceType() { return ReferenceType; }
        public ArticleMappingToHandle setReferenceType(String value) { this.ReferenceType = value; return this; }
        public String getExternalReference() { return ExternalReference; }
        public ArticleMappingToHandle setExternalReference(String value) { this.ExternalReference = value; return this; }
    }

}

Java UpdateArticleMappings DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + 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"}]