BokaMera.API.Host

<back to all web services

CreateArticleRebateCode

The following routes are available for this service:
POST/rebatecodes/fromarticleCreate RebateCode.Create RebateCode.
import java.math.*
import java.util.*
import net.servicestack.client.*


@ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
open class CreateArticleRebateCode : ICompany
{
    /**
    * 
    */
    @ApiMember(Description="")
    var CompanyId:UUID? = null

    /**
    * Article ID for the rebate code
    */
    @ApiMember(Description="Article ID for the rebate code", IsRequired=true)
    var ArticleId:Int? = null

    /**
    * Customer information
    */
    @ApiMember(Description="Customer information")
    var Customer:CustomerToHandle? = null

    /**
    * If you want to book with customer information instead of the Customer Id send the customer information here. Note: If customer profile already exists with the same email the information will not be changed, instead the provided information will be added as BookingsComments if it differs from the ordinairy profile. 
    */
    @ApiMember(Description="If you want to book with customer information instead of the Customer Id send the customer information here. Note: If customer profile already exists with the same email the information will not be changed, instead the provided information will be added as BookingsComments if it differs from the ordinairy profile. ")
    var InvoiceAddress:InvoiceAddressToHandle? = null

    /**
    * Promo code Receiver information
    */
    @ApiMember(Description="Promo code Receiver information")
    var Receiver:PromoCodeReceiver? = null
}

open class CustomerToHandle
{
    var CustomerId:UUID? = null
    var Firstname:String? = null
    var Lastname:String? = null
    var Email:String? = null
    var Phone:String? = null
    var SubscribedToNewsletter:Boolean? = null
}

open class InvoiceAddressToHandle
{
    var CorporateIdentityNumber:String? = null
    var InvoiceAddress1:String? = null
    var InvoiceAddress2:String? = null
    var InvoiceCity:String? = null
    var InvoicePostalCode:String? = null
    var InvoiceCountryCode:String? = null
}

open class PromoCodeReceiver
{
    var CustomerId:UUID? = null
    var Firstname:String? = null
    var Lastname:String? = null
    var Email:String? = null
    var ReceiverMessage:String? = null
}

open class RebateCodeResponse
{
    var Id:Int? = null
    var CompanyId:UUID? = null
    var ValidFrom:Date? = null
    var ValidTo:Date? = null
    /**
    * If the price is only valid for specific days in week add a comma separated list of which days this day price belongs to, 1 = Monday .. 7 = Sunday. All old days connected will be removed on update.
    */
    @ApiMember(Description="If the price is only valid for specific days in week add a comma separated list of which days this day price belongs to, 1 = Monday .. 7 = Sunday. All old days connected will be removed on update.")
    var FromTime:TimeSpan? = null

    /**
    * If the price is only valid for a specific time span during a time of day enter the FromTime and ToTime parameters.
    */
    @ApiMember(Description="If the price is only valid for a specific time span during a time of day enter the FromTime and ToTime parameters.")
    var ToTime:TimeSpan? = null

    var CreatedBy:String? = null
    var Created:Date? = null
    var UpdatedBy:String? = null
    var Updated:Date? = null
    var PersonalNote:String? = null
    var RebateCodeSign:String? = null
    var RebateCodeValue:Int? = null
    var RebateCodeTypeId:Int? = null
    var Name:String? = null
    var RebateCodeStatusId:Int? = null
    var StatusName:String? = null
    var MaxNumberOfUses:Int? = null
    var MaxNumberOfUsesPerCustomer:Int? = null
    var NumberOfUsesUsed:Int? = null
    var DaysOfWeek:ArrayList<DaysOfWeekResponse> = ArrayList<DaysOfWeekResponse>()
    var Services:ArrayList<RebateCodeServiceResponse> = ArrayList<RebateCodeServiceResponse>()
    var Article:ArticleResponse? = null
    var Transactions:ArrayList<RebateCodeTransactionQueryResponse> = ArrayList<RebateCodeTransactionQueryResponse>()
    var RemainingAmount:Double? = null
    var RemainingUsage:Int? = null
    var Customers:ArrayList<RebateCodeCustomerResponse> = ArrayList<RebateCodeCustomerResponse>()
    var ResponseStatus:ResponseStatus? = null
    var PaymentReceived:Boolean? = null
    var RebateCodeCurrencySign:String? = null
    var ActiveByStatus:Boolean? = null
    var PriceSign:String? = null
    var RebateCodeTypeName:String? = null
    var Company:RebateCodeCompanyResponse? = null
}

open class DaysOfWeekResponse
{
    var Id:Int? = null
    var DayOfWeek:String? = null
    var DayOfWeekTranslation:String? = null
    var DayOfWeekActive:Boolean? = null
    var DayOfWeekSortOrder:Short? = null
}

open class RebateCodeServiceResponse
{
    var Id:Int? = null
    var Name:String? = null
    var Description:String? = null
    var Active:Boolean? = null
}

open class ArticleResponse
{
    var CompanyId:UUID? = null
    var Id:Int? = null
    var Name:String? = null
    var ArticleTypeId:Int? = null
    var Description:String? = null
    var ImageUrl:String? = null
    var Active:Boolean? = null
    var Amount:Int? = null
    var Price:Double? = null
    var CurrencyId:String? = null
    var UpdatedDate:Date? = null
    var CreatedDate:Date? = null
    var Services:ArrayList<ArticleServiceRelation> = ArrayList<ArticleServiceRelation>()
    var ServiceIds:ArrayList<Int> = ArrayList<Int>()
    var PriceSign:String? = null
    var VAT:BigDecimal? = null
}

open class ArticleServiceRelation : BaseModel()
{
    @Required()
    var CompanyId:UUID? = null

    var Id:Int? = null
    @Required()
    var ServiceId:Int? = null

    @Required()
    var ArticleId:Int? = null
}

open class BaseModel
{
}

open class RebateCodeTransactionQueryResponse
{
    var Id:Int? = null
    var CompanyId:UUID? = null
    var Note:String? = null
    var RebateCodeId:Int? = null
    var RebateCodeSign:String? = null
    var RebateCodeTypeId:Int? = null
    var RebateCodeTypeName:String? = null
    var Amount:Double? = null
    var Usage:String? = null
    var BookingId:Int? = null
    var UpdatedDate:Date? = null
    var CreatedDate:Date? = null
    var Service:RebateCodeServiceResponse? = null
    var Customer:RebateCodeCustomerResponse? = null
    var PriceSign:String? = null
}

open class RebateCodeCustomerResponse
{
    var Id:UUID? = null
    var Firstname:String? = null
    var Lastname:String? = null
    var Email:String? = null
    var Phone:String? = null
    var ImageUrl:String? = null
}

open class RebateCodeCompanyResponse
{
    var SitePath:String? = null
    var PaymentProviderId:Int? = null
}

Kotlin CreateArticleRebateCode DTOs

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

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /rebatecodes/fromarticle HTTP/1.1 
Host: api.bokamera.se 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<CreateArticleRebateCode xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
  <ArticleId>0</ArticleId>
  <CompanyId>00000000-0000-0000-0000-000000000000</CompanyId>
  <Customer>
    <CustomerId>00000000-0000-0000-0000-000000000000</CustomerId>
    <Email>String</Email>
    <Firstname>String</Firstname>
    <Lastname>String</Lastname>
    <Phone>String</Phone>
    <SubscribedToNewsletter>false</SubscribedToNewsletter>
  </Customer>
  <InvoiceAddress>
    <CorporateIdentityNumber>String</CorporateIdentityNumber>
    <InvoiceAddress1>String</InvoiceAddress1>
    <InvoiceAddress2>String</InvoiceAddress2>
    <InvoiceCity>String</InvoiceCity>
    <InvoiceCountryCode>String</InvoiceCountryCode>
    <InvoicePostalCode>String</InvoicePostalCode>
  </InvoiceAddress>
  <Receiver>
    <CustomerId>00000000-0000-0000-0000-000000000000</CustomerId>
    <Email>String</Email>
    <Firstname>String</Firstname>
    <Lastname>String</Lastname>
    <ReceiverMessage>String</ReceiverMessage>
  </Receiver>
</CreateArticleRebateCode>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<RebateCodeResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
  <ActiveByStatus>false</ActiveByStatus>
  <Article>
    <Active>false</Active>
    <Amount>0</Amount>
    <ArticleTypeId>0</ArticleTypeId>
    <CompanyId>00000000-0000-0000-0000-000000000000</CompanyId>
    <CreatedDate>0001-01-01T00:00:00</CreatedDate>
    <CurrencyId>String</CurrencyId>
    <Description>String</Description>
    <Id>0</Id>
    <ImageUrl>String</ImageUrl>
    <Name>String</Name>
    <Price>0</Price>
    <PriceSign>String</PriceSign>
    <ServiceIds xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:int>0</d3p1:int>
    </ServiceIds>
    <Services xmlns:d3p1="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Db">
      <d3p1:ArticleServiceRelation>
        <d3p1:ArticleId>0</d3p1:ArticleId>
        <d3p1:CompanyId>00000000-0000-0000-0000-000000000000</d3p1:CompanyId>
        <d3p1:Id>0</d3p1:Id>
        <d3p1:ServiceId>0</d3p1:ServiceId>
      </d3p1:ArticleServiceRelation>
    </Services>
    <UpdatedDate>0001-01-01T00:00:00</UpdatedDate>
    <VAT>0</VAT>
  </Article>
  <Company>
    <PaymentProviderId>0</PaymentProviderId>
    <SitePath>String</SitePath>
  </Company>
  <CompanyId>00000000-0000-0000-0000-000000000000</CompanyId>
  <Created>0001-01-01T00:00:00</Created>
  <CreatedBy>String</CreatedBy>
  <Customers>
    <RebateCodeCustomerResponse>
      <Email>String</Email>
      <Firstname>String</Firstname>
      <Id>00000000-0000-0000-0000-000000000000</Id>
      <ImageUrl>String</ImageUrl>
      <Lastname>String</Lastname>
      <Phone>String</Phone>
    </RebateCodeCustomerResponse>
  </Customers>
  <DaysOfWeek>
    <DaysOfWeekResponse>
      <DayOfWeek>String</DayOfWeek>
      <DayOfWeekActive>false</DayOfWeekActive>
      <DayOfWeekSortOrder>0</DayOfWeekSortOrder>
      <DayOfWeekTranslation>String</DayOfWeekTranslation>
      <Id>0</Id>
    </DaysOfWeekResponse>
  </DaysOfWeek>
  <FromTime>PT0S</FromTime>
  <Id>0</Id>
  <MaxNumberOfUses>0</MaxNumberOfUses>
  <MaxNumberOfUsesPerCustomer>0</MaxNumberOfUsesPerCustomer>
  <Name>String</Name>
  <NumberOfUsesUsed>0</NumberOfUsesUsed>
  <PaymentReceived>false</PaymentReceived>
  <PersonalNote>String</PersonalNote>
  <PriceSign>String</PriceSign>
  <RebateCodeCurrencySign>String</RebateCodeCurrencySign>
  <RebateCodeSign>String</RebateCodeSign>
  <RebateCodeStatusId>0</RebateCodeStatusId>
  <RebateCodeTypeId>0</RebateCodeTypeId>
  <RebateCodeTypeName>String</RebateCodeTypeName>
  <RebateCodeValue>0</RebateCodeValue>
  <RemainingAmount>0</RemainingAmount>
  <RemainingUsage>0</RemainingUsage>
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
  <Services>
    <RebateCodeServiceResponse>
      <Active>false</Active>
      <Description>String</Description>
      <Id>0</Id>
      <Name>String</Name>
    </RebateCodeServiceResponse>
  </Services>
  <StatusName>String</StatusName>
  <ToTime>PT0S</ToTime>
  <Transactions>
    <RebateCodeTransactionQueryResponse>
      <Amount>0</Amount>
      <BookingId>0</BookingId>
      <CompanyId>00000000-0000-0000-0000-000000000000</CompanyId>
      <CreatedDate>0001-01-01T00:00:00</CreatedDate>
      <Customer>
        <Email>String</Email>
        <Firstname>String</Firstname>
        <Id>00000000-0000-0000-0000-000000000000</Id>
        <ImageUrl>String</ImageUrl>
        <Lastname>String</Lastname>
        <Phone>String</Phone>
      </Customer>
      <Id>0</Id>
      <Note>String</Note>
      <PriceSign>String</PriceSign>
      <RebateCodeId>0</RebateCodeId>
      <RebateCodeSign>String</RebateCodeSign>
      <RebateCodeTypeId>0</RebateCodeTypeId>
      <RebateCodeTypeName>String</RebateCodeTypeName>
      <Service>
        <Active>false</Active>
        <Description>String</Description>
        <Id>0</Id>
        <Name>String</Name>
      </Service>
      <UpdatedDate>0001-01-01T00:00:00</UpdatedDate>
      <Usage>String</Usage>
    </RebateCodeTransactionQueryResponse>
  </Transactions>
  <Updated>0001-01-01T00:00:00</Updated>
  <UpdatedBy>String</UpdatedBy>
  <ValidFrom>0001-01-01T00:00:00</ValidFrom>
  <ValidTo>0001-01-01T00:00:00</ValidTo>
</RebateCodeResponse>