Server

<back to all web services

PostNebenkosten

Nebenkosten
Requires Authentication
The following routes are available for this service:
POST/api/v1/nebenkosten

export class PostNebenkostenResponse
{
    public responseStatus: ResponseStatus;
    public checksumMD5: string;

    public constructor(init?: Partial<PostNebenkostenResponse>) { (Object as any).assign(this, init); }
}

export enum NebenkostenTargetAllocation
{
    Null = 'Null',
    AlleNutzer = 'AlleNutzer',
    ZugeordneteNutzer = 'ZugeordneteNutzer',
    ZugeordneteNutzeinheiten = 'ZugeordneteNutzeinheiten',
    ZugeordneteNutzerDiff = 'ZugeordneteNutzerDiff',
    ZugeordneteNutzeinheitenDiff = 'ZugeordneteNutzeinheitenDiff',
}

export enum NebenkostenTargetAllocationIn
{
    Nebenkosten = 'Nebenkosten',
    Heizkosten = 'Heizkosten',
    Warmwasserkosten = 'Warmwasserkosten',
}

// @DataContract
export class NebenkostenNutzeinheit
{
    // @DataMember
    public relativeAmount?: number;

    // @DataMember
    public isDeleted: boolean;

    // @DataMember
    public isCreatedByApp: boolean;

    // @DataMember
    public nutzeinheitGuid: string;

    public constructor(init?: Partial<NebenkostenNutzeinheit>) { (Object as any).assign(this, init); }
}

// @DataContract
export class NebenkostenNutzer
{
    // @DataMember
    public relativeAmount?: number;

    // @DataMember
    public isDeleted: boolean;

    // @DataMember
    public isCreatedByApp: boolean;

    // @DataMember
    public nutzerGuid: string;

    public constructor(init?: Partial<NebenkostenNutzer>) { (Object as any).assign(this, init); }
}

// @DataContract
export class BillingInformation
{
    // @DataMember
    public guid: string;

    // @DataMember
    public from: string;

    // @DataMember
    public to: string;

    // @DataMember
    public isCompleted: boolean;

    // @DataMember
    public hasNebenkosten: boolean;

    public constructor(init?: Partial<BillingInformation>) { (Object as any).assign(this, init); }
}

// @DataContract
export class Nebenkosten
{
    // @DataMember
    public guid: string;

    // @DataMember
    public number: number;

    // @DataMember
    public from: string;

    // @DataMember
    public to: string;

    // @DataMember
    public targetAllocation?: NebenkostenTargetAllocation;

    // @DataMember
    public targetAllocationIn?: NebenkostenTargetAllocationIn;

    // @DataMember
    public nebenkostenKind: string;

    /** @description Freitext */
    // @DataMember
    // @ApiMember(Description="Freitext")
    public kostenart: string;

    // @DataMember
    public brutto?: number;

    // @DataMember
    public bruttoLastYear?: number;

    // @DataMember
    public salesTax?: number;

    // @DataMember
    public haushaltsnahediensteLabel: string;

    // @DataMember
    public haushaltsnahediensteBrutto?: number;

    /** @description Freitext */
    // @DataMember
    // @ApiMember(Description="Freitext")
    public kostenartUnit: string;

    // @DataMember
    public reduzierungsartType: string;

    // @DataMember
    public comment: string;

    // @DataMember
    public isDeleted: boolean;

    // @DataMember
    public isCreatedByApp: boolean;

    // @DataMember
    public nebenkostenNutzeinheiten: NebenkostenNutzeinheit[];

    // @DataMember
    public nebenkostenNutzer: NebenkostenNutzer[];

    // @DataMember
    public billingInformation: BillingInformation;

    public constructor(init?: Partial<Nebenkosten>) { (Object as any).assign(this, init); }
}

// @DataContract
export class RelatedTo
{
    // @DataMember
    public guid: string;

    public constructor(init?: Partial<RelatedTo>) { (Object as any).assign(this, init); }
}

export class PostNebenkosten implements IHasBearerToken
{
    // @ApiMember(IsRequired=true, ParameterType="body")
    public nebenkosten: Nebenkosten;

    // @ApiMember(IsRequired=true, ParameterType="body")
    public relatedToObjekt: RelatedTo;

    // @ApiMember(IsRequired=true, ParameterType="body")
    public relatedToBillingInformation: RelatedTo;

    // @ApiMember(IsRequired=true, ParameterType="body")
    public bearerToken: string;

    public constructor(init?: Partial<PostNebenkosten>) { (Object as any).assign(this, init); }
}

TypeScript PostNebenkosten 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 /api/v1/nebenkosten HTTP/1.1 
Host: brendle-schneider-servdesk.eras-online.de 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	nebenkosten: 
	{
		guid: 00000000000000000000000000000000,
		number: 0,
		from: 0001-01-01T00:00:00Z,
		to: 0001-01-01T00:00:00Z,
		targetAllocation: Null,
		targetAllocationIn: Nebenkosten,
		nebenkostenKind: String,
		kostenart: String,
		brutto: 0,
		bruttoLastYear: 0,
		salesTax: 0,
		haushaltsnahediensteLabel: String,
		haushaltsnahediensteBrutto: 0,
		kostenartUnit: String,
		reduzierungsartType: String,
		comment: String,
		isDeleted: False,
		isCreatedByApp: False,
		nebenkostenNutzeinheiten: 
		[
			{
				relativeAmount: 0,
				isDeleted: False,
				isCreatedByApp: False,
				nutzeinheitGuid: 00000000000000000000000000000000
			}
		],
		nebenkostenNutzer: 
		[
			{
				relativeAmount: 0,
				isDeleted: False,
				isCreatedByApp: False,
				nutzerGuid: 00000000000000000000000000000000
			}
		],
		billingInformation: 
		{
			guid: String,
			from: 0001-01-01T00:00:00Z,
			to: 0001-01-01T00:00:00Z,
			isCompleted: False,
			hasNebenkosten: False
		}
	},
	relatedToObjekt: 
	{
		guid: 00000000000000000000000000000000
	},
	relatedToBillingInformation: 
	{
		guid: 00000000000000000000000000000000
	},
	bearerToken: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

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