Server

<back to all web services

GetCustomer

Requires Authentication
The following routes are available for this service:
GET/Customer/{Guid}
import java.math.*;
import java.util.*;
import net.servicestack.client.*;
import com.google.gson.annotations.*;
import com.google.gson.reflect.*;

public class dtos
{

    public static class GetCustomer implements IHasBearerToken
    {
        @ApiMember(IsRequired=true, ParameterType="query")
        public String bearerToken = null;

        @ApiMember(IsRequired=true, ParameterType="path")
        public UUID guid = null;

        @ApiMember(ParameterType="query")
        public String include = null;
        
        public String getBearerToken() { return bearerToken; }
        public GetCustomer setBearerToken(String value) { this.bearerToken = value; return this; }
        public UUID getGuid() { return guid; }
        public GetCustomer setGuid(UUID value) { this.guid = value; return this; }
        public String getInclude() { return include; }
        public GetCustomer setInclude(String value) { this.include = value; return this; }
    }

    public static class GetCustomerResponse
    {
        public Customer customer = null;
        public ResponseStatus responseStatus = null;
        
        public Customer getCustomer() { return customer; }
        public GetCustomerResponse setCustomer(Customer value) { this.customer = value; return this; }
        public ResponseStatus getResponseStatus() { return responseStatus; }
        public GetCustomerResponse setResponseStatus(ResponseStatus value) { this.responseStatus = value; return this; }
    }

    @DataContract
    public static class Customer
    {
        @DataMember
        public UUID guid = null;

        @DataMember
        public String name1 = null;

        @DataMember
        public String name2 = null;

        @DataMember
        public String name3 = null;

        @DataMember
        public String number = null;

        @DataMember
        public String salutation = null;

        @DataMember
        public ArrayList<CustomerAddress> customerAddresses = null;

        @DataMember
        public ArrayList<CustomerObjekt> customerObjekte = null;
        
        public UUID getGuid() { return guid; }
        public Customer setGuid(UUID value) { this.guid = value; return this; }
        public String getName1() { return name1; }
        public Customer setName1(String value) { this.name1 = value; return this; }
        public String getName2() { return name2; }
        public Customer setName2(String value) { this.name2 = value; return this; }
        public String getName3() { return name3; }
        public Customer setName3(String value) { this.name3 = value; return this; }
        public String getNumber() { return number; }
        public Customer setNumber(String value) { this.number = value; return this; }
        public String getSalutation() { return salutation; }
        public Customer setSalutation(String value) { this.salutation = value; return this; }
        public ArrayList<CustomerAddress> getCustomerAddresses() { return customerAddresses; }
        public Customer setCustomerAddresses(ArrayList<CustomerAddress> value) { this.customerAddresses = value; return this; }
        public ArrayList<CustomerObjekt> getCustomerObjekte() { return customerObjekte; }
        public Customer setCustomerObjekte(ArrayList<CustomerObjekt> value) { this.customerObjekte = value; return this; }
    }

    @DataContract
    public static class CustomerAddress
    {
        @DataMember(Name="AdresseGuid")
        @SerializedName("AdresseGuid")
        public String addressGuid = null;

        @DataMember(Name="IstPrimaer")
        @SerializedName("IstPrimaer")
        public Boolean isPrimary = null;

        @DataMember(Name="AdressTypBezeichnung")
        @SerializedName("AdressTypBezeichnung")
        public String addressKindLabel = null;

        @DataMember(Name="AdressTyp")
        @SerializedName("AdressTyp")
        public String addressKindTyp = null;
        
        public String getAddressGuid() { return addressGuid; }
        public CustomerAddress setAddressGuid(String value) { this.addressGuid = value; return this; }
        public Boolean getIsPrimary() { return isPrimary; }
        public CustomerAddress setIsPrimary(Boolean value) { this.isPrimary = value; return this; }
        public String getAddressKindLabel() { return addressKindLabel; }
        public CustomerAddress setAddressKindLabel(String value) { this.addressKindLabel = value; return this; }
        public String getAddressKindTyp() { return addressKindTyp; }
        public CustomerAddress setAddressKindTyp(String value) { this.addressKindTyp = value; return this; }
    }

    @DataContract
    public static class CustomerObjekt
    {
        @DataMember(Name="Guid")
        @SerializedName("Guid")
        public String guid = null;

        @DataMember(Name="ZeitraumVon")
        @SerializedName("ZeitraumVon")
        public Date rangeFrom = null;

        @DataMember(Name="ZeitraumBis")
        @SerializedName("ZeitraumBis")
        public Date rangeTo = null;

        @DataMember(Name="IstKunde")
        @SerializedName("IstKunde")
        public Boolean isCustomer = null;

        @DataMember(Name="IstEigentümer")
        @SerializedName("IstEigentümer")
        public Boolean isOwner = null;

        @DataMember(Name="IstEigentümerPseudo")
        @SerializedName("IstEigentümerPseudo")
        public Boolean isOwnerPseudo = null;

        @DataMember(Name="ObjektGuid")
        @SerializedName("ObjektGuid")
        public String objektGuid = null;

        @DataMember(Name="KundeGuid")
        @SerializedName("KundeGuid")
        public String customerGuid = null;
        
        public String getGuid() { return guid; }
        public CustomerObjekt setGuid(String value) { this.guid = value; return this; }
        public Date getRangeFrom() { return rangeFrom; }
        public CustomerObjekt setRangeFrom(Date value) { this.rangeFrom = value; return this; }
        public Date getRangeTo() { return rangeTo; }
        public CustomerObjekt setRangeTo(Date value) { this.rangeTo = value; return this; }
        public Boolean getIsCustomer() { return isCustomer; }
        public CustomerObjekt setIsCustomer(Boolean value) { this.isCustomer = value; return this; }
        public Boolean getIsOwner() { return isOwner; }
        public CustomerObjekt setIsOwner(Boolean value) { this.isOwner = value; return this; }
        public Boolean getIsOwnerPseudo() { return isOwnerPseudo; }
        public CustomerObjekt setIsOwnerPseudo(Boolean value) { this.isOwnerPseudo = value; return this; }
        public String getObjektGuid() { return objektGuid; }
        public CustomerObjekt setObjektGuid(String value) { this.objektGuid = value; return this; }
        public String getCustomerGuid() { return customerGuid; }
        public CustomerObjekt setCustomerGuid(String value) { this.customerGuid = value; return this; }
    }

}

Java GetCustomer 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.

GET /Customer/{Guid} HTTP/1.1 
Host: isp-plauen-servdesk.eras-online.de 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	kunde: 
	{
		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
		}
	],
	addressen: 
	[
		{
			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
		}
	],
	nutzeinheitDevices: 
	[
		{
			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
		}
	],
	devices: 
	[
		{
			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
		}
	],
	deviceConsumptions: 
	[
		{
			Guid: String,
			Ablesung: 0,
			Ablesedatum: 0001-01-01T00:00:00Z,
			Ableseart: String,
			Aenderungsdatum: 0001-01-01T00:00:00Z,
			Anmerkung: String,
			Ampullenfarbe: String,
			DeviceGuid: String
		}
	],
	billingInformation: 
	[
		{
			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
		}
	],
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}