SDS P4 API

<back to all web services

Graph

Get data for graph, usages and some statistical information

The following routes are available for this service:
GET/api/v6/meteringpoints/{Ean}/graph/{Aggregation}/{DateFrom}/{DateTo}Get usages based on aggregation starting from DateFrom to endDate
"use strict";
/** @typedef {'ISO8601'|'UTC'|'NL'|'NLOffset'|'IN'|'INOffset'|'Unix'|'UnixMillis'} */
export var DateTimeFormat;
(function (DateTimeFormat) {
    DateTimeFormat["ISO8601"] = "ISO8601"
    DateTimeFormat["UTC"] = "UTC"
    DateTimeFormat["NL"] = "NL"
    DateTimeFormat["NLOffset"] = "NLOffset"
    DateTimeFormat["IN"] = "IN"
    DateTimeFormat["INOffset"] = "INOffset"
    DateTimeFormat["Unix"] = "Unix"
    DateTimeFormat["UnixMillis"] = "UnixMillis"
})(DateTimeFormat || (DateTimeFormat = {}));
export class Generic {
    /** @param {{ApiKey?:string,OnlyPayload?:boolean,ShowRequest?:boolean,DateTimeFormat?:DateTimeFormat}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {string}
     * @description Api-key. Used to provide credentials to the api. Can also be provided through the request headers with key: X-API-KEY */
    ApiKey;
    /**
     * @type {boolean}
     * @description Normally the result of the request is put inside a resultobject with some status information about the request. If you want the output as csv this outer object can be irritating. Default value: FALSE  */
    OnlyPayload;
    /**
     * @type {boolean}
     * @description Show the request as interpreted by the api. Useful to see how filters / dates are parsed. If no value us provided, the default value is: FALSE  */
    ShowRequest;
    /**
     * @type {DateTimeFormat}
     * @description Format all DateTime in the response object. If used in browser, sometimes ISO8601 is not correctly transformed. Enum options: ISO8601 (DEFAULT), UTC, NL, NLOffset, Unix, UnixMillis */
    DateTimeFormat;
}
/** @typedef {'None'|'Hour'|'Day'|'Week'|'Month'|'Year'} */
export var AggregationForAPI;
(function (AggregationForAPI) {
    AggregationForAPI["None"] = "None"
    AggregationForAPI["Hour"] = "Hour"
    AggregationForAPI["Day"] = "Day"
    AggregationForAPI["Week"] = "Week"
    AggregationForAPI["Month"] = "Month"
    AggregationForAPI["Year"] = "Year"
})(AggregationForAPI || (AggregationForAPI = {}));
export class Graph extends Generic {
    /** @param {{Ean?:string,Aggregation?:AggregationForAPI,DateFrom?:string,DateTo?:string,CalculateMissingUsages?:boolean,ApiKey?:string,OnlyPayload?:boolean,ShowRequest?:boolean,DateTimeFormat?:DateTimeFormat}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /**
     * @type {string}
     * @description Request of details of specific meteringpoint with Ean */
    Ean;
    /**
     * @type {AggregationForAPI}
     * @description Aggregation level. The None-'level' will give the most detailed level available for the requested asset. If a level is requested that is not available or can be calculate, no data is returned. Enum options: None, Hour, Day, Week, Month */
    Aggregation;
    /**
     * @type {string}
     * @description Start date the usages are requested for */
    DateFrom;
    /**
     * @type {string}
     * @description End date the usages are requested for (this is included in the response). If no date is provided the DateTo will seven days from the DateFrom.  */
    DateTo;
    /**
     * @type {boolean}
     * @description calculate the usage of that period and divide it over the missing hours or 15 minute periods, but this can be calculated (Default: false) */
    CalculateMissingUsages;
}

JavaScript Graph 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 /api/v6/meteringpoints/{Ean}/graph/{Aggregation}/{DateFrom}/{DateTo} HTTP/1.1 
Host: p4v8.smartdatasolutions.nl 
Accept: text/jsv