BokaMera.API.Host

<back to all web services

UpdateEaccountingCustomer

Requires Authentication
Requires any of the roles:bookingsupplier-administrator-write, superadmin
The following routes are available for this service:
PUT/eaccounting/customersUpdate E-Accounting Customer
namespace BokaMera.API.ServiceModel.Dtos

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type InvoiceAddress() = 
        member val CorporateIdentityNumber:String = null with get,set
        member val InvoiceAddress1:String = null with get,set
        member val InvoiceAddress2:String = null with get,set
        member val InvoiceCity:String = null with get,set
        member val InvoicePostalCode:String = null with get,set
        member val InvoiceCountryCode:String = null with get,set

    [<AllowNullLiteral>]
    type EAccountingTermsOfPayment() = 
        member val Id:String = null with get,set
        member val Name:String = null with get,set
        member val NameEnglish:String = null with get,set
        member val NumberOfDays:Int32 = new Int32() with get,set
        member val TermsOfPaymentTypeId:Int32 = new Int32() with get,set
        member val TermsOfPaymentTypeText:String = null with get,set
        member val AvailableForSales:Boolean = new Boolean() with get,set
        member val AvailableForPurchase:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type CustomerLabel() = 
        member val Id:String = null with get,set
        member val Name:String = null with get,set
        member val Description:String = null with get,set

    [<AllowNullLiteral>]
    type DirectDebitCustomerSettings() = 
        member val MandateId:String = null with get,set
        member val MandateType:Int32 = new Int32() with get,set
        member val SequenceType:Int32 = new Int32() with get,set
        member val SigningDate:DateTime = new DateTime() with get,set
        member val EndDate:DateTime = new DateTime() with get,set
        member val LatestDirectDebit:DateTime = new DateTime() with get,set

    [<AllowNullLiteral>]
    type CreateEAccountingCustomer() = 
        inherit InvoiceAddress()
        member val CustomerNumber:String = null with get,set
        member val ContactPersonEmail:String = null with get,set
        member val ContactPersonMobile:String = null with get,set
        member val ContactPersonName:String = null with get,set
        member val ContactPersonPhone:String = null with get,set
        member val CurrencyCode:String = null with get,set
        member val GLN:String = null with get,set
        member val EmailAddress:String = null with get,set
        member val EmailAddressOrder:String = null with get,set
        member val EmailAddressQuote:String = null with get,set
        member val DeliveryCustomerName:String = null with get,set
        member val DeliveryAddress1:String = null with get,set
        member val DeliveryAddress2:String = null with get,set
        member val DeliveryCity:String = null with get,set
        member val DeliveryCountryCode:String = null with get,set
        member val DeliveryPostalCode:String = null with get,set
        member val DeliveryMethodId:String = null with get,set
        member val DeliveryTermId:String = null with get,set
        member val PayToAccountId:String = null with get,set
        member val Name:String = null with get,set
        member val Note:String = null with get,set
        member val ReverseChargeOnConstructionServices:Boolean = new Boolean() with get,set
        member val WebshopCustomerNumber:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val MobilePhone:String = null with get,set
        member val Telephone:String = null with get,set
        member val TermsOfPaymentId:String = null with get,set
        member val EAccountingTermsOfPayment:EAccountingTermsOfPayment = null with get,set
        member val VatNumber:String = null with get,set
        member val WwwAddress:String = null with get,set
        member val LastInvoiceDate:String = null with get,set
        member val IsPrivatePerson:Boolean = new Boolean() with get,set
        member val IsNorthernIreland:Boolean = new Boolean() with get,set
        member val DiscountPercentage:Decimal = new Decimal() with get,set
        member val ChangedUtc:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val IsActive:Boolean = new Boolean() with get,set
        member val ForceBookkeepVat:Boolean = new Boolean() with get,set
        member val EdiGlnNumber:String = null with get,set
        member val SalesDocumentLanguage:String = null with get,set
        member val ElectronicAddress:String = null with get,set
        member val ElectronicReference:String = null with get,set
        member val EdiServiceDelivererId:String = null with get,set
        member val AutoInvoiceActivationEmailSentDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val AutoInvoiceRegistrationRequestSentDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val EmailAddresses:ResizeArray<String> = new ResizeArray<String>() with get,set
        member val CustomerLabels:ResizeArray<CustomerLabel> = new ResizeArray<CustomerLabel>() with get,set
        member val MessageThreads:ResizeArray<String> = new ResizeArray<String>() with get,set
        member val Notes:ResizeArray<String> = new ResizeArray<String>() with get,set
        member val IsFutureInvoiceDateAllowed:Boolean = new Boolean() with get,set
        member val DeliveryBasedVat:Boolean = new Boolean() with get,set
        member val SalesPriceListId:String = null with get,set
        member val Iban:String = null with get,set
        member val DirectDebitCustomerSettings:DirectDebitCustomerSettings = null with get,set
        member val DiscountAgreementId:String = null with get,set
        member val UnpaidInvoicesAmount:Decimal = new Decimal() with get,set

    [<AllowNullLiteral>]
    type EAccountingCustomerResponse() = 
        inherit CreateEAccountingCustomer()
        member val Id:String = null with get,set

    [<ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)>]
    [<ValidateRequest(Validator="IsAuthenticated")>]
    [<AllowNullLiteral>]
    type UpdateEaccountingCustomer() = 
        ///<summary>
        ///Customer Id in e-accounting.
        ///</summary>
        [<ApiMember(Description="Customer Id in e-accounting.", IsRequired=true)>]
        member val Id:String = null with get,set

        ///<summary>
        ///
        ///</summary>
        [<ApiMember(Description="")>]
        member val InvoiceCity:String = null with get,set

        ///<summary>
        ///Max length: 10 characters
        ///</summary>
        [<ApiMember(Description="Max length: 10 characters")>]
        member val InvoicePostalCode:String = null with get,set

        ///<summary>
        ///Max length: 50 characters
        ///</summary>
        [<ApiMember(Description="Max length: 50 characters")>]
        member val Name:String = null with get,set

        ///<summary>
        ///
        ///</summary>
        [<ApiMember(Description="")>]
        member val TermsOfPaymentId:String = null with get,set

        ///<summary>
        ///
        ///</summary>
        [<ApiMember(Description="")>]
        member val IsPrivatePerson:Boolean = new Boolean() with get,set

        ///<summary>
        ///
        ///</summary>
        [<ApiMember(Description="")>]
        member val IsActive:Boolean = new Boolean() with get,set

        ///<summary>
        ///
        ///</summary>
        [<ApiMember(Description="")>]
        member val Telephone:String = null with get,set

        ///<summary>
        ///
        ///</summary>
        [<ApiMember(Description="")>]
        member val EmailAddress:String = null with get,set

        ///<summary>
        ///
        ///</summary>
        [<ApiMember(Description="")>]
        member val MobilePhone:String = null with get,set

        ///<summary>
        ///The company id, if empty will use the company id for the user you are logged in with.
        ///</summary>
        [<ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.")>]
        member val CompanyId:Nullable<Guid> = new Nullable<Guid>() with get,set

F# UpdateEaccountingCustomer 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.

PUT /eaccounting/customers HTTP/1.1 
Host: testapi.bokamera.se 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Id: String,
	InvoiceCity: String,
	InvoicePostalCode: String,
	Name: String,
	TermsOfPaymentId: String,
	IsPrivatePerson: False,
	IsActive: False,
	Telephone: String,
	EmailAddress: String,
	MobilePhone: String,
	CompanyId: 00000000-0000-0000-0000-000000000000
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Id: String,
	CustomerNumber: String,
	ContactPersonEmail: String,
	ContactPersonMobile: String,
	ContactPersonName: String,
	ContactPersonPhone: String,
	CurrencyCode: String,
	GLN: String,
	EmailAddress: String,
	EmailAddressOrder: String,
	EmailAddressQuote: String,
	DeliveryCustomerName: String,
	DeliveryAddress1: String,
	DeliveryAddress2: String,
	DeliveryCity: String,
	DeliveryCountryCode: String,
	DeliveryPostalCode: String,
	DeliveryMethodId: String,
	DeliveryTermId: String,
	PayToAccountId: String,
	Name: String,
	Note: String,
	ReverseChargeOnConstructionServices: False,
	WebshopCustomerNumber: 0,
	MobilePhone: String,
	Telephone: String,
	TermsOfPaymentId: String,
	EAccountingTermsOfPayment: 
	{
		Id: String,
		Name: String,
		NameEnglish: String,
		NumberOfDays: 0,
		TermsOfPaymentTypeId: 0,
		TermsOfPaymentTypeText: String,
		AvailableForSales: False,
		AvailableForPurchase: False
	},
	VatNumber: String,
	WwwAddress: String,
	LastInvoiceDate: String,
	IsPrivatePerson: False,
	IsNorthernIreland: False,
	DiscountPercentage: 0,
	ChangedUtc: "0001-01-01T00:00:00",
	IsActive: False,
	ForceBookkeepVat: False,
	EdiGlnNumber: String,
	SalesDocumentLanguage: String,
	ElectronicAddress: String,
	ElectronicReference: String,
	EdiServiceDelivererId: String,
	AutoInvoiceActivationEmailSentDate: "0001-01-01T00:00:00",
	AutoInvoiceRegistrationRequestSentDate: "0001-01-01T00:00:00",
	EmailAddresses: 
	[
		String
	],
	CustomerLabels: 
	[
		{
			Id: String,
			Name: String,
			Description: String
		}
	],
	MessageThreads: 
	[
		String
	],
	Notes: 
	[
		String
	],
	IsFutureInvoiceDateAllowed: False,
	DeliveryBasedVat: False,
	SalesPriceListId: String,
	Iban: String,
	DirectDebitCustomerSettings: 
	{
		MandateId: String,
		MandateType: 0,
		SequenceType: 0
	},
	DiscountAgreementId: String,
	UnpaidInvoicesAmount: 0,
	CorporateIdentityNumber: String,
	InvoiceAddress1: String,
	InvoiceAddress2: String,
	InvoiceCity: String,
	InvoicePostalCode: String,
	InvoiceCountryCode: String
}