Server

<back to all web services

CreateCustomers

Requires Authentication
The following routes are available for this service:
POST/Customers/Create
"use strict";
export class CreateCustomersResponse {
    /** @param {{customersCreated?:number,responseStatus?:ResponseStatus}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    customersCreated;
    /** @type {ResponseStatus} */
    responseStatus;
}
export class CustomerAddress {
    /** @param {{AdresseGuid?:string,IstPrimaer?:boolean,AdressTypBezeichnung?:string,AdressTyp?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    AdresseGuid;
    /** @type {boolean} */
    IstPrimaer;
    /** @type {string} */
    AdressTypBezeichnung;
    /** @type {string} */
    AdressTyp;
}
export class CustomerObjekt {
    /** @param {{Guid?:string,ZeitraumVon?:string,ZeitraumBis?:string,IstKunde?:boolean,IstEigent_mer?:boolean,IstEigent_merPseudo?:boolean,ObjektGuid?:string,KundeGuid?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Guid;
    /** @type {string} */
    ZeitraumVon;
    /** @type {?string} */
    ZeitraumBis;
    /** @type {boolean} */
    IstKunde;
    /** @type {boolean} */
    IstEigent_mer;
    /** @type {boolean} */
    IstEigent_merPseudo;
    /** @type {string} */
    ObjektGuid;
    /** @type {string} */
    KundeGuid;
}
export class Customer {
    /** @param {{Guid?:string,Name1?:string,Name2?:string,Name3?:string,Kundennummer?:string,Anrede?:string,KundenAdressen?:CustomerAddress[],KundenObjekte?:CustomerObjekt[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Guid;
    /** @type {string} */
    Name1;
    /** @type {string} */
    Name2;
    /** @type {string} */
    Name3;
    /** @type {string} */
    Kundennummer;
    /** @type {string} */
    Anrede;
    /** @type {CustomerAddress[]} */
    KundenAdressen;
    /** @type {CustomerObjekt[]} */
    KundenObjekte;
}
export class Objekt {
    /** @param {{Guid?:string,Objektnummer?:string,IstAbgeschlossen?:string,Uvi?:string,IsUviDisabled?:string,AbgeschlossenDatum?:string,AdressGuid?:string,AnmerkungKundenportal?:string,KundenportalMarkedDone?:boolean,MarkedDoneAt?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Guid;
    /** @type {string} */
    Objektnummer;
    /** @type {string} */
    IstAbgeschlossen;
    /** @type {string} */
    Uvi;
    /** @type {string} */
    IsUviDisabled;
    /** @type {?string} */
    AbgeschlossenDatum;
    /** @type {string} */
    AdressGuid;
    /** @type {string} */
    AnmerkungKundenportal;
    /** @type {boolean} */
    KundenportalMarkedDone;
    /** @type {?string} */
    MarkedDoneAt;
}
export class Address {
    /** @param {{Guid?:string,Stra_e?:string,Stra_e2?:string,Hausnummer?:string,Postleitzahl?:string,Ort?:string,Postfach?:string,Adresszusatz?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Guid;
    /** @type {string} */
    Stra_e;
    /** @type {string} */
    Stra_e2;
    /** @type {string} */
    Hausnummer;
    /** @type {string} */
    Postleitzahl;
    /** @type {string} */
    Ort;
    /** @type {string} */
    Postfach;
    /** @type {string} */
    Adresszusatz;
}
/** @typedef {'Leerstand'|'Gewerblich'|'Privat'|'AllgemeineNutzung'} */
export var NutzerType;
(function (NutzerType) {
    NutzerType["Leerstand"] = "Leerstand"
    NutzerType["Gewerblich"] = "Gewerblich"
    NutzerType["Privat"] = "Privat"
    NutzerType["AllgemeineNutzung"] = "AllgemeineNutzung"
})(NutzerType || (NutzerType = {}));
export class Nutzer {
    /** @param {{guid?:string,name1?:string,name2?:string,name3?:string,name4?:string,nutzerType?:NutzerType,nutzeinheitNumberExternal?:string,nutzerInNutzeinheitSequence?:number,rangeFrom?:string,rangeTo?:string,isDeleted?:boolean,isCreatedByApp?:boolean,IstUvi?:string,EigentuemerBewohnt?:string,Email?:string,Mobil?:string,title?:string,salutation?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    guid;
    /** @type {string} */
    name1;
    /** @type {string} */
    name2;
    /** @type {string} */
    name3;
    /** @type {string} */
    name4;
    /** @type {NutzerType} */
    nutzerType;
    /** @type {string} */
    nutzeinheitNumberExternal;
    /** @type {number} */
    nutzerInNutzeinheitSequence;
    /** @type {string} */
    rangeFrom;
    /** @type {?string} */
    rangeTo;
    /** @type {boolean} */
    isDeleted;
    /** @type {boolean} */
    isCreatedByApp;
    /** @type {string} */
    IstUvi;
    /** @type {string} */
    EigentuemerBewohnt;
    /** @type {string} */
    Email;
    /** @type {string} */
    Mobil;
    /** @type {string} */
    title;
    /** @type {string} */
    salutation;
}
export class NutzerCoOwnership {
    /** @param {{Guid?:string,ShareValue?:number,Von?:string,Bis?:string,NutzerGuid?:string,IsCreatedByApp?:boolean,IsDeleted?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Guid;
    /** @type {?number} */
    ShareValue;
    /** @type {string} */
    Von;
    /** @type {?string} */
    Bis;
    /** @type {string} */
    NutzerGuid;
    /** @type {boolean} */
    IsCreatedByApp;
    /** @type {boolean} */
    IsDeleted;
}
export class NutzerPersonen {
    /** @param {{Guid?:string,Personen?:number,Von?:string,Bis?:string,NutzerGuid?:string,IsCreatedByApp?:boolean,IsDeleted?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Guid;
    /** @type {?number} */
    Personen;
    /** @type {string} */
    Von;
    /** @type {?string} */
    Bis;
    /** @type {string} */
    NutzerGuid;
    /** @type {boolean} */
    IsCreatedByApp;
    /** @type {boolean} */
    IsDeleted;
}
export class NutzerQuadratmeter {
    /** @param {{Guid?:string,Quadratmeter_Hzg?:number,Quadratmeter_Ww?:number,Quadratmeter_Nk?:number,Von?:string,Bis?:string,NutzerGuid?:string,IsCreatedByApp?:boolean,IsDeleted?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Guid;
    /** @type {?number} */
    Quadratmeter_Hzg;
    /** @type {?number} */
    Quadratmeter_Ww;
    /** @type {?number} */
    Quadratmeter_Nk;
    /** @type {string} */
    Von;
    /** @type {?string} */
    Bis;
    /** @type {string} */
    NutzerGuid;
    /** @type {boolean} */
    IsCreatedByApp;
    /** @type {boolean} */
    IsDeleted;
}
export class OwnerNutzeinheit {
    /** @param {{Guid?:string,Name1?:string,Name2?:string,Name3?:string,Name4?:string,ZeitraumVon?:string,ZeitraumBis?:string,Titel?:string,Anrede?:string,AdressGuid?:string,NutzeinheitGuid?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Guid;
    /** @type {string} */
    Name1;
    /** @type {string} */
    Name2;
    /** @type {string} */
    Name3;
    /** @type {string} */
    Name4;
    /** @type {string} */
    ZeitraumVon;
    /** @type {?string} */
    ZeitraumBis;
    /** @type {string} */
    Titel;
    /** @type {string} */
    Anrede;
    /** @type {string} */
    AdressGuid;
    /** @type {string} */
    NutzeinheitGuid;
}
export class Nutzeinheit {
    /** @param {{Guid?:string,Nummer?:string,Lage?:string,ObjektGuid?:string,AdressGuid?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Guid;
    /** @type {string} */
    Nummer;
    /** @type {string} */
    Lage;
    /** @type {string} */
    ObjektGuid;
    /** @type {string} */
    AdressGuid;
}
export class BillingInformation {
    /** @param {{Guid?:string,Von?:string,Bis?:string,IstAbgeschlossen?:boolean,HatNebenkosten?:boolean,ObjektGuid?:string,AnmerkungKundenportal?:string,KundenportalMarkedDone?:boolean,MarkedDoneAt?:string,KundenportalMarkedClosed?:boolean,MarkedClosedAt?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Guid;
    /** @type {string} */
    Von;
    /** @type {string} */
    Bis;
    /** @type {boolean} */
    IstAbgeschlossen;
    /** @type {boolean} */
    HatNebenkosten;
    /** @type {string} */
    ObjektGuid;
    /** @type {string} */
    AnmerkungKundenportal;
    /** @type {boolean} */
    KundenportalMarkedDone;
    /** @type {?string} */
    MarkedDoneAt;
    /** @type {boolean} */
    KundenportalMarkedClosed;
    /** @type {?string} */
    MarkedClosedAt;
}
export class Direktkosten {
    /** @param {{guid?:string,label?:string,date?:string,brutto?:number,salesTax?:number,quantity?:number,type?:string,isDeleted?:boolean,isCreatedByApp?:boolean,nutzerGuid?:string,billingInformation?:BillingInformation}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    guid;
    /** @type {string} */
    label;
    /** @type {string} */
    date;
    /** @type {number} */
    brutto;
    /** @type {number} */
    salesTax;
    /** @type {number} */
    quantity;
    /** @type {string} */
    type;
    /** @type {boolean} */
    isDeleted;
    /** @type {boolean} */
    isCreatedByApp;
    /** @type {string} */
    nutzerGuid;
    /** @type {BillingInformation} */
    billingInformation;
}
export class Prepayment {
    /** @param {{Guid?:string,Von?:string,Bis?:string,VZ_Nebenkosten?:number,VZ_Heizkosten?:number,VZ_Warmwasser?:number,IstGeloescht?:boolean,IstErzeugtVonApp?:boolean,ObjektGuid?:string,NutzerGuid?:string,BillingInformationGuid?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Guid;
    /** @type {string} */
    Von;
    /** @type {string} */
    Bis;
    /** @type {?number} */
    VZ_Nebenkosten;
    /** @type {?number} */
    VZ_Heizkosten;
    /** @type {?number} */
    VZ_Warmwasser;
    /** @type {boolean} */
    IstGeloescht;
    /** @type {boolean} */
    IstErzeugtVonApp;
    /** @type {string} */
    ObjektGuid;
    /** @type {string} */
    NutzerGuid;
    /** @type {string} */
    BillingInformationGuid;
}
export class EnergieVerwerter {
    /** @param {{Guid?:string,Bezeichnung?:string,Wirkungsgrad?:number,Einbau?:string,Ausbau?:string,Baujahr?:number,Temperatur?:number,EigenstGewerbLieferung?:boolean,Brennwert?:boolean,ObjektGuid?:string,BrennstoffMediumGuid?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Guid;
    /** @type {string} */
    Bezeichnung;
    /** @type {?number} */
    Wirkungsgrad;
    /** @type {string} */
    Einbau;
    /** @type {?string} */
    Ausbau;
    /** @type {?number} */
    Baujahr;
    /** @type {?number} */
    Temperatur;
    /** @type {boolean} */
    EigenstGewerbLieferung;
    /** @type {boolean} */
    Brennwert;
    /** @type {string} */
    ObjektGuid;
    /** @type {string} */
    BrennstoffMediumGuid;
}
export class Brennstofflieferung {
    /** @param {{guid?:string,deliveryDate?:string,salexTax?:number,emisionsTax?:number,c02Taxes?:number,customsTax?:number,otherCharges?:number,c02Price?:number,c02Tons?:number,quantity?:number,amount?:number,startMeterReadingValue?:number,endMeterReadingValue?:number,heizwert?:number,brennwert?:boolean,energyReliefAmountDescription?:string,energyReliefAmount?:number,electricityReliefAmountDescription?:string,electricityReliefAmount?:number,cO2EmissionsFactor?:number,cO2Text?:string,cO2Active?:boolean,cO2PriceKnd?:boolean,cO2PriceLandlord?:number,cO2PriceRenter?:number,cO2Area?:number,isForCommercialUse?:boolean,isRenovationRequired?:boolean,isHeatingPadsImproved?:boolean,cO2KWh?:number,includedCO2SalesTax?:number,cO2Costs?:number,totalC02Weight?:number,noTotalDeductionC02Costs?:boolean,isDeleted?:boolean,isCreatedByApp?:boolean,brennstoffMediumGuid?:string,billingInformation?:BillingInformation}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    guid;
    /** @type {string} */
    deliveryDate;
    /** @type {?number} */
    salexTax;
    /** @type {?number} */
    emisionsTax;
    /** @type {?number} */
    c02Taxes;
    /** @type {?number} */
    customsTax;
    /** @type {?number} */
    otherCharges;
    /** @type {?number} */
    c02Price;
    /** @type {?number} */
    c02Tons;
    /** @type {?number} */
    quantity;
    /** @type {?number} */
    amount;
    /** @type {?number} */
    startMeterReadingValue;
    /** @type {?number} */
    endMeterReadingValue;
    /** @type {number} */
    heizwert;
    /** @type {boolean} */
    brennwert;
    /** @type {string} */
    energyReliefAmountDescription;
    /** @type {?number} */
    energyReliefAmount;
    /** @type {string} */
    electricityReliefAmountDescription;
    /** @type {?number} */
    electricityReliefAmount;
    /** @type {?number} */
    cO2EmissionsFactor;
    /** @type {string} */
    cO2Text;
    /** @type {?boolean} */
    cO2Active;
    /** @type {?boolean} */
    cO2PriceKnd;
    /** @type {?number} */
    cO2PriceLandlord;
    /** @type {?number} */
    cO2PriceRenter;
    /** @type {?number} */
    cO2Area;
    /** @type {?boolean} */
    isForCommercialUse;
    /** @type {?boolean} */
    isRenovationRequired;
    /** @type {?boolean} */
    isHeatingPadsImproved;
    /** @type {?number} */
    cO2KWh;
    /** @type {?number} */
    includedCO2SalesTax;
    /** @type {?number} */
    cO2Costs;
    /** @type {?number} */
    totalC02Weight;
    /** @type {?boolean} */
    noTotalDeductionC02Costs;
    /** @type {boolean} */
    isDeleted;
    /** @type {boolean} */
    isCreatedByApp;
    /** @type {string} */
    brennstoffMediumGuid;
    /** @type {BillingInformation} */
    billingInformation;
}
/** @typedef {'Null'|'AlleNutzer'|'ZugeordneteNutzer'|'ZugeordneteNutzeinheiten'|'ZugeordneteNutzerDiff'|'ZugeordneteNutzeinheitenDiff'} */
export var NebenkostenTargetAllocation;
(function (NebenkostenTargetAllocation) {
    NebenkostenTargetAllocation["Null"] = "Null"
    NebenkostenTargetAllocation["AlleNutzer"] = "AlleNutzer"
    NebenkostenTargetAllocation["ZugeordneteNutzer"] = "ZugeordneteNutzer"
    NebenkostenTargetAllocation["ZugeordneteNutzeinheiten"] = "ZugeordneteNutzeinheiten"
    NebenkostenTargetAllocation["ZugeordneteNutzerDiff"] = "ZugeordneteNutzerDiff"
    NebenkostenTargetAllocation["ZugeordneteNutzeinheitenDiff"] = "ZugeordneteNutzeinheitenDiff"
})(NebenkostenTargetAllocation || (NebenkostenTargetAllocation = {}));
/** @typedef {'Nebenkosten'|'Heizkosten'|'Warmwasserkosten'} */
export var NebenkostenTargetAllocationIn;
(function (NebenkostenTargetAllocationIn) {
    NebenkostenTargetAllocationIn["Nebenkosten"] = "Nebenkosten"
    NebenkostenTargetAllocationIn["Heizkosten"] = "Heizkosten"
    NebenkostenTargetAllocationIn["Warmwasserkosten"] = "Warmwasserkosten"
})(NebenkostenTargetAllocationIn || (NebenkostenTargetAllocationIn = {}));
export class NebenkostenNutzeinheit {
    /** @param {{relativeAmount?:number,isDeleted?:boolean,isCreatedByApp?:boolean,nutzeinheitGuid?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?number} */
    relativeAmount;
    /** @type {boolean} */
    isDeleted;
    /** @type {boolean} */
    isCreatedByApp;
    /** @type {string} */
    nutzeinheitGuid;
}
export class NebenkostenNutzer {
    /** @param {{relativeAmount?:number,isDeleted?:boolean,isCreatedByApp?:boolean,nutzerGuid?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?number} */
    relativeAmount;
    /** @type {boolean} */
    isDeleted;
    /** @type {boolean} */
    isCreatedByApp;
    /** @type {string} */
    nutzerGuid;
}
export class Nebenkosten {
    /** @param {{guid?:string,number?:number,from?:string,to?:string,targetAllocation?:NebenkostenTargetAllocation,targetAllocationIn?:NebenkostenTargetAllocationIn,nebenkostenKind?:string,kostenart?:string,brutto?:number,bruttoLastYear?:number,salesTax?:number,haushaltsnahediensteLabel?:string,haushaltsnahediensteBrutto?:number,kostenartUnit?:string,reduzierungsartType?:string,comment?:string,isDeleted?:boolean,isCreatedByApp?:boolean,nebenkostenNutzeinheiten?:NebenkostenNutzeinheit[],nebenkostenNutzer?:NebenkostenNutzer[],billingInformation?:BillingInformation}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    guid;
    /** @type {number} */
    number;
    /** @type {string} */
    from;
    /** @type {string} */
    to;
    /** @type {?NebenkostenTargetAllocation} */
    targetAllocation;
    /** @type {?NebenkostenTargetAllocationIn} */
    targetAllocationIn;
    /** @type {string} */
    nebenkostenKind;
    /**
     * @type {string}
     * @description Freitext */
    kostenart;
    /** @type {?number} */
    brutto;
    /** @type {?number} */
    bruttoLastYear;
    /** @type {?number} */
    salesTax;
    /** @type {string} */
    haushaltsnahediensteLabel;
    /** @type {?number} */
    haushaltsnahediensteBrutto;
    /**
     * @type {string}
     * @description Freitext */
    kostenartUnit;
    /** @type {string} */
    reduzierungsartType;
    /** @type {string} */
    comment;
    /** @type {boolean} */
    isDeleted;
    /** @type {boolean} */
    isCreatedByApp;
    /** @type {NebenkostenNutzeinheit[]} */
    nebenkostenNutzeinheiten;
    /** @type {NebenkostenNutzer[]} */
    nebenkostenNutzer;
    /** @type {BillingInformation} */
    billingInformation;
}
export class Heizbetriebskosten {
    /** @param {{guid?:string,from?:string,to?:string,salesTax?:number,haushatlsnahediensteBrutto?:number,brutto?:number,haushatlsnahediensteLabel?:string,description?:string,isDeleted?:boolean,isCreatedByApp?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    guid;
    /** @type {string} */
    from;
    /** @type {string} */
    to;
    /** @type {number} */
    salesTax;
    /** @type {?number} */
    haushatlsnahediensteBrutto;
    /** @type {?number} */
    brutto;
    /** @type {string} */
    haushatlsnahediensteLabel;
    /** @type {string} */
    description;
    /** @type {boolean} */
    isDeleted;
    /** @type {boolean} */
    isCreatedByApp;
}
export class NutzeinheitDevice {
    /** @param {{Guid?:string,ZuordnungVon?:string,ZuordnungBis?:string,Raum?:string,LaufendeNummer?:string,gemietet?:boolean,gewartet?:boolean,DeviceGuid?:string,NutzeinheitGuid?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Guid;
    /** @type {string} */
    ZuordnungVon;
    /** @type {?string} */
    ZuordnungBis;
    /** @type {string} */
    Raum;
    /** @type {string} */
    LaufendeNummer;
    /** @type {boolean} */
    gemietet;
    /** @type {boolean} */
    gewartet;
    /** @type {string} */
    DeviceGuid;
    /** @type {string} */
    NutzeinheitGuid;
}
export class Device {
    /** @param {{Guid?:string,Geraetenummer?:string,Bezeichnung?:string,Beschreibung?:string,Einbaudatum?:string,Ausbaudatum?:string,Eichdatum?:string,Einheit?:string,Memo?:string,DeviceCatalogGuid?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Guid;
    /** @type {string} */
    Geraetenummer;
    /** @type {string} */
    Bezeichnung;
    /** @type {string} */
    Beschreibung;
    /** @type {string} */
    Einbaudatum;
    /** @type {?string} */
    Ausbaudatum;
    /** @type {?string} */
    Eichdatum;
    /** @type {string} */
    Einheit;
    /** @type {string} */
    Memo;
    /** @type {string} */
    DeviceCatalogGuid;
}
/** @typedef {'ZA'|'HA'|'MO'|'EB'|'AB'} */
export var DeviceReadingKind;
(function (DeviceReadingKind) {
    DeviceReadingKind["ZA"] = "ZA"
    DeviceReadingKind["HA"] = "HA"
    DeviceReadingKind["MO"] = "MO"
    DeviceReadingKind["EB"] = "EB"
    DeviceReadingKind["AB"] = "AB"
})(DeviceReadingKind || (DeviceReadingKind = {}));
export class DeviceConsumption {
    /** @param {{guid?:string,deviceReading?:number,deviceReadingDate?:string,deviceReadingKind?:DeviceReadingKind,changeDate?:string,note?:string,ampouleColour?:string,deviceGuid?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    guid;
    /** @type {?number} */
    deviceReading;
    /** @type {?string} */
    deviceReadingDate;
    /** @type {DeviceReadingKind} */
    deviceReadingKind;
    /** @type {?string} */
    changeDate;
    /** @type {string} */
    note;
    /** @type {string} */
    ampouleColour;
    /** @type {string} */
    deviceGuid;
}
export class CreateCustomers {
    /** @param {{Kunden?:Customer[],Objekte?:Objekt[],Adressen?:Address[],Nutzer?:Nutzer[],NutzerCoOwnership?:NutzerCoOwnership[],NutzerPersonen?:NutzerPersonen[],NutzerQuadratmeter?:NutzerQuadratmeter[],EigentuemerNutzeinheit?:OwnerNutzeinheit[],Nutzeinheiten?:Nutzeinheit[],Direktkosten?:Direktkosten[],Prepayments?:Prepayment[],EnergieVerwerter?:EnergieVerwerter[],Brennstofflieferungen?:Brennstofflieferung[],Nebenkosten?:Nebenkosten[],Heizbetriebskosten?:Heizbetriebskosten[],NutzeinheitGeraete?:NutzeinheitDevice[],Geraete?:Device[],Geraeteverbraeuche?:DeviceConsumption[],BillingInformations?:BillingInformation[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {Customer[]} */
    Kunden;
    /** @type {Objekt[]} */
    Objekte;
    /** @type {Address[]} */
    Adressen;
    /** @type {Nutzer[]} */
    Nutzer;
    /** @type {NutzerCoOwnership[]} */
    NutzerCoOwnership;
    /** @type {NutzerPersonen[]} */
    NutzerPersonen;
    /** @type {NutzerQuadratmeter[]} */
    NutzerQuadratmeter;
    /** @type {OwnerNutzeinheit[]} */
    EigentuemerNutzeinheit;
    /** @type {Nutzeinheit[]} */
    Nutzeinheiten;
    /** @type {Direktkosten[]} */
    Direktkosten;
    /** @type {Prepayment[]} */
    Prepayments;
    /** @type {EnergieVerwerter[]} */
    EnergieVerwerter;
    /** @type {Brennstofflieferung[]} */
    Brennstofflieferungen;
    /** @type {Nebenkosten[]} */
    Nebenkosten;
    /** @type {Heizbetriebskosten[]} */
    Heizbetriebskosten;
    /** @type {NutzeinheitDevice[]} */
    NutzeinheitGeraete;
    /** @type {Device[]} */
    Geraete;
    /** @type {DeviceConsumption[]} */
    Geraeteverbraeuche;
    /** @type {BillingInformation[]} */
    BillingInformations;
}
export class BillingInformation {
    /** @param {{guid?:string,from?:string,to?:string,isCompleted?:boolean,hasNebenkosten?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    guid;
    /** @type {string} */
    from;
    /** @type {string} */
    to;
    /** @type {boolean} */
    isCompleted;
    /** @type {boolean} */
    hasNebenkosten;
}

JavaScript CreateCustomers 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.

POST /Customers/Create HTTP/1.1 
Host: emg-servdesk.eras-online.de 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Kunden: 
	[
		{
			Guid: String,
			Name1: String,
			Name2: String,
			Name3: String,
			Kundennummer: String,
			Anrede: String,
			KundenAdressen: 
			[
				{
					AdresseGuid: String,
					IstPrimaer: False,
					AdressTypBezeichnung: String,
					AdressTyp: String
				}
			],
			KundenObjekte: 
			[
				{
					Guid: String,
					ZeitraumVon: 0001-01-01T00:00:00Z,
					ZeitraumBis: 0001-01-01T00:00:00Z,
					IstKunde: False,
					IstEigentümer: False,
					IstEigentümerPseudo: False,
					ObjektGuid: String,
					KundeGuid: String
				}
			]
		}
	],
	Objekte: 
	[
		{
			Guid: String,
			Objektnummer: String,
			IstAbgeschlossen: String,
			Uvi: String,
			IsUviDisabled: String,
			AbgeschlossenDatum: 0001-01-01T00:00:00Z,
			AdressGuid: String,
			AnmerkungKundenportal: String,
			KundenportalMarkedDone: False,
			MarkedDoneAt: 0001-01-01T00:00:00Z
		}
	],
	Adressen: 
	[
		{
			Guid: String,
			Straße: String,
			Straße2: String,
			Hausnummer: String,
			Postleitzahl: String,
			Ort: String,
			Postfach: String,
			Adresszusatz: String
		}
	],
	Nutzer: 
	[
		{
			Guid: String,
			Name1: String,
			Name2: String,
			Name3: String,
			Name4: String,
			NutzerType: String,
			NutzeinheitNummerExtern: String,
			NutzerInNutzeinheitReihenfolge: 0,
			ZeitraumVon: 0001-01-01T00:00:00Z,
			ZeitraumBis: 0001-01-01T00:00:00Z,
			IstGeloescht: False,
			IstErzeugtVonApp: False,
			Uvi: String,
			EigentuemerBewohnt: String,
			Email: String,
			Mobil: String,
			Titel: String,
			Anrede: String,
			NutzeinheitGuid: String
		}
	],
	NutzerCoOwnership: 
	[
		{
			Guid: String,
			ShareValue: 0,
			Von: 0001-01-01T00:00:00Z,
			Bis: 0001-01-01T00:00:00Z,
			NutzerGuid: String,
			IsCreatedByApp: False,
			IsDeleted: False
		}
	],
	NutzerPersonen: 
	[
		{
			Guid: String,
			Personen: 0,
			Von: 0001-01-01T00:00:00Z,
			Bis: 0001-01-01T00:00:00Z,
			NutzerGuid: String,
			IsCreatedByApp: False,
			IsDeleted: False
		}
	],
	NutzerQuadratmeter: 
	[
		{
			Guid: String,
			Quadratmeter_Hzg: 0,
			Quadratmeter_Ww: 0,
			Quadratmeter_Nk: 0,
			Von: 0001-01-01T00:00:00Z,
			Bis: 0001-01-01T00:00:00Z,
			NutzerGuid: String,
			IsCreatedByApp: False,
			IsDeleted: False
		}
	],
	EigentuemerNutzeinheit: 
	[
		{
			Guid: String,
			Name1: String,
			Name2: String,
			Name3: String,
			Name4: String,
			ZeitraumVon: 0001-01-01T00:00:00Z,
			ZeitraumBis: 0001-01-01T00:00:00Z,
			Titel: String,
			Anrede: String,
			AdressGuid: String,
			NutzeinheitGuid: String
		}
	],
	Nutzeinheiten: 
	[
		{
			Guid: String,
			Nummer: String,
			Lage: String,
			ObjektGuid: String,
			AdressGuid: String
		}
	],
	Direktkosten: 
	[
		{
			Guid: String,
			Bezeichnung: String,
			Datum: 0001-01-01T00:00:00Z,
			Brutto: 0,
			Mwst: 0,
			Menge: 0,
			Typ: String,
			IstGeloescht: False,
			IstErzeugtVonApp: False,
			ObjektGuid: String,
			NutzerGuid: String,
			BillingInformationGuid: String
		}
	],
	Prepayments: 
	[
		{
			Guid: String,
			Von: 0001-01-01T00:00:00Z,
			Bis: 0001-01-01T00:00:00Z,
			VZ Nebenkosten: 0,
			VZ Heizkosten: 0,
			VZ Warmwasser: 0,
			IstGeloescht: False,
			IstErzeugtVonApp: False,
			ObjektGuid: String,
			NutzerGuid: String,
			BillingInformationGuid: String
		}
	],
	EnergieVerwerter: 
	[
		{
			Guid: String,
			Bezeichnung: String,
			Wirkungsgrad: 0,
			Einbau: 0001-01-01T00:00:00Z,
			Ausbau: 0001-01-01T00:00:00Z,
			Baujahr: 0,
			Temperatur: 0,
			EigenstGewerbLieferung: False,
			Brennwert: False,
			ObjektGuid: String,
			BrennstoffMediumGuid: String
		}
	],
	Brennstofflieferungen: 
	[
		{
			Guid: String,
			Lieferdatum: 0001-01-01T00:00:00Z,
			Mwst: 0,
			Emissionsangabe: 0,
			Steuern: 0,
			Zolle: 0,
			SonstigeAngaben: 0,
			C02Preis: 0,
			C02Tonnen: 0,
			Menge: 0,
			Betrag: 0,
			Anfangsstand: 0,
			Endstand: 0,
			Heizwert: 0,
			Brennwert: False,
			IstGeloescht: False,
			IstErzeugtVonApp: False,
			EnergieEntlastungsbetragBezeichnung: String,
			EnergieEntlastungsbetrag: 0,
			StromEntlastungsbetragBezeichnung: String,
			StromEntlastungsbetrag: 0,
			CO2Emissionsfaktor: 0,
			CO2Text: String,
			CO2Aktiv: False,
			CO2PreisKnd: False,
			CO2PreisVermieter: 0,
			CO2PreisMieter: 0,
			CO2Flaeche: 0,
			GewerblicheNutzung: False,
			Sanierungsauflagen: False,
			AuflagenHeizungsverbesserung: False,
			CO2KWH: 0,
			EnthalteneMwst: 0,
			CO2KostenBrutto: 0,
			CO2GesamtKg: 0,
			KeinGesamtabzugC02Kosten: False,
			EnergieVerwerterGuid: String,
			BrennstoffMediumGuid: String,
			BillingInformationGuid: String
		}
	],
	Nebenkosten: 
	[
		{
			Guid: String,
			Kostennummer: 0,
			Von: 0001-01-01T00:00:00Z,
			Bis: 0001-01-01T00:00:00Z,
			UmlageZiel: String,
			UmlageZielIn: String,
			NebenkostenArt: String,
			Kostenart: String,
			Brutto: 0,
			BruttoLetztesJahr: 0,
			Mwst: 0,
			HaushaltsnahediensteLabel: String,
			HaushaltsnahediensteBrutto: 0,
			EinheitDerKostenart: String,
			Reduzierungsart: String,
			Kommentar: String,
			IstGeloescht: False,
			IstErzeugtVonApp: False,
			ObjektGuid: String,
			BillingInformationGuid: String,
			NebenkostenNutzeinheiten: 
			[
				{
					Anteil: 0,
					IstGeloescht: False,
					IstErzeugtVonApp: False,
					NutzeinheitGuid: String
				}
			],
			NebenkostenNutzer: 
			[
				{
					Anteil: 0,
					IstGeloescht: False,
					IstErzeugtVonApp: False,
					NutzerGuid: String
				}
			]
		}
	],
	Heizbetriebskosten: 
	[
		{
			Guid: String,
			Von: 0001-01-01T00:00:00Z,
			Bis: 0001-01-01T00:00:00Z,
			Mwst: 0,
			HaushatlsnahediensteBrutto: 0,
			Brutto: 0,
			HaushatlsnahediensteLabel: String,
			Anmerkung: String,
			IstGeloescht: False,
			IstErzeugtVonApp: False,
			ObjektGuid: String,
			BillingInformationGuid: String
		}
	],
	NutzeinheitGeraete: 
	[
		{
			Guid: String,
			ZuordnungVon: 0001-01-01T00:00:00Z,
			ZuordnungBis: 0001-01-01T00:00:00Z,
			Raum: String,
			LaufendeNummer: String,
			gemietet: False,
			gewartet: False,
			DeviceGuid: String,
			NutzeinheitGuid: String
		}
	],
	Geraete: 
	[
		{
			Guid: String,
			Geraetenummer: String,
			Bezeichnung: String,
			Beschreibung: String,
			Einbaudatum: 0001-01-01T00:00:00Z,
			Ausbaudatum: 0001-01-01T00:00:00Z,
			Eichdatum: 0001-01-01T00:00:00Z,
			Einheit: String,
			Memo: String,
			DeviceCatalogGuid: String
		}
	],
	Geraeteverbraeuche: 
	[
		{
			Guid: String,
			Ablesung: 0,
			Ablesedatum: 0001-01-01T00:00:00Z,
			Ableseart: String,
			Aenderungsdatum: 0001-01-01T00:00:00Z,
			Anmerkung: String,
			Ampullenfarbe: String,
			DeviceGuid: String
		}
	],
	BillingInformations: 
	[
		{
			Guid: String,
			Von: 0001-01-01T00:00:00Z,
			Bis: 0001-01-01T00:00:00Z,
			IstAbgeschlossen: False,
			HatNebenkosten: False,
			ObjektGuid: String,
			AnmerkungKundenportal: String,
			KundenportalMarkedDone: False,
			MarkedDoneAt: 0001-01-01T00:00:00Z,
			KundenportalMarkedClosed: False,
			MarkedClosedAt: 0001-01-01T00:00:00Z
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	customersCreated: 0,
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}