Inhaltsübersicht

Climkit-API

Nicolas Aktualisiert von Nicolas

Die Climkit-Entwickler-API ermöglicht registrierten und autorisierten Entwicklern, Mess- und Energiedaten von autorisierten Climkit-Installationen zu erhalten.

Um sich zu registrieren, müssen Entwickler Datenzugriffsrechte vom Eigentümer der Installation und von Climkit SA erhalten.

Anfragen für API-Zugriff sollten an info@climkit.io gerichtet werden.

Die API-Zugriffsinformationen unterscheiden sich von den persönlichen Konto-Anmeldeinformationen des Climkit-Portals.

Zugangsinformationen können nur vom registrierten Entwickler verwendet werden. Kollegen und Mitarbeiter müssen eine individuelle Anfrage stellen, um ihre eigenen Zugriffsrechte zu erhalten.

API-Endpunkt: https://api.climkit.io/api/v1

1. Authentifizierung

URL : /auth

Methode : POST

Authentifizierung erforderlich : NEIN

 Authentication through username-password to get an access token

Parameters (POST)
----------
username: str
The API username
password: str
The API password

Returns
-------
{
'access_token': <str: your-access-token>,
'valid_until': {'$date': <int: epoch-time-in-milliseconds>},
}

Die API von Climkit verwendet JSON-Web-Token ( https://jwt.io/introduction/ ), um die Übertragung von Informationen zu sichern.

Sobald sich der Benutzer mit seinen Anmeldeinformationen (Benutzername und Passwort) anmeldet, erhält er ein 15 Minuten gültiges Token, das ihm den Zugriff auf autorisierte Ressourcen ermöglicht.

2. Standorte

Holen Sie sich alle Websites

Rufen Sie Anmeldeinformationen für alle Installationsstandorte ab.

URL : /all_installations

Methode : GET

Authentifizierung erforderlich : JA mit einem gültigen Token

Anforderungslimit : 1/Sekunde

 Parameters (GET)
----------
No parameter

Headers
----------
Content-Type: 'application/json'
Authorization: 'Bearer {your-access-token}'

Returns
-------
array_like

Informieren Sie sich über die Website

URL : /installation_infos/<site_id>

Methode : GET

Authentifizierung erforderlich : JA mit einem gültigen Token

Anforderungslimit : 1/Sekunde

 Parameters (GET)
----------
site_id: str
The object ID of the installation site

Headers
----------
Content-Type: 'application/json'
Authorization: 'Bearer {your-access-token}'

Returns
-------
obj
An object formatted as follow:
{
'site_ref': <str>,
'name': <str>,
'address': {
'street_name': <str>,
'street_number': <str>,
'city': <str>,
'postal_code': <int>
},
'creation_date': <datetime isoformat str>,
'latitude': <float>,
'longitude': <float>,
'timezone': <str>,
}

3. Zähler

Holen Sie sich alle Zähler für eine Website

URL : /meter_info/<site_id>

Methode : GET

Authentifizierung erforderlich : JA mit einem gültigen Token

Anforderungslimit : 1/Sekunde

 Parameters (GET)
----------
site_id: str
The object ID of the site

Headers
----------
Content-Type: 'application/json'
Authorization: 'Bearer {your-access-token}'

Returns
----------
array_like

{
'id': <str representing an ObjectID>
'type': {'electricity', 'heating', 'cold_water', 'hot_water'},
'name': <str>,
'prim_ad': <int>,
'virtual': <boolean>
}

Rufen Sie Zeitreihendaten für einen bestimmten Zählertyp ab

Rufen Sie die verarbeiteten Daten in Zeitreihen vom Typ <meter_type> für die gesamte Website <site_id> ab.

URL : /site_data/<site_id>/<meter_type>

Methode : POST

Authentifizierung erforderlich : JA mit einem gültigen Token

Anforderungslimit : 1/Sekunde

 Parameters (GET)
----------
site_id: str
The object ID of the site
meter_type: str
The type of meter data:
'electricity', 'heating', 'cooling', 'cold_water', 'hot_water' or 'charge_point'

Parameters (POST)
----------
t_s: str, optional
The isoformatted datetime, representing the start instant of timeseries, tz-naive in UTC
t_e: str, optional
The isoformatted datetime, representing the stop instant of timeseries, tz-naive in UTC

Headers
----------
Content-Type: 'application/json'
Authorization: 'Bearer {your-access-token}'

Returns
-------
array_like

Rufen Sie die verarbeiteten Zeitreihendaten eines bestimmten Zählers ab

Erhalten Sie "validierte" oder "verarbeitete" Zeitreihendaten von Zähler <meter_id>.

URL : /meter_data/<site_id>/<meter_id>

Methode : POST

Authentifizierung erforderlich : JA mit einem gültigen Token

Anforderungslimit : 1/Sekunde

 Parameters (GET)
----------
site_id: str
The ID of the site
meter_id: str
The ID of the meter

Parameters (POST)
----------
t_s: str, optional
The isoformatted datetime, representing the start instant of timeseries, tz-naive in UTC
t_e: str, optional
The isoformatted datetime, representing the stop instant of timeseries, tz-naive in UTC
sampling_frequency: {'15T', 'D', 'M', 'Y'}, optional
The sampling frequency of the returned data list

Headers
----------
Content-Type: 'application/json'
Authorization: 'Bearer {your-access-token}'

Returns
-------
array_like

Erhalten Sie Rohdatenserien von einem bestimmten Zähler

Rufen Sie rohe Zeitreihendaten von Messgerät <meter_id> ab

URL : /meter_data_raw/<site_id>/<meter_id>

Methode : POST

Authentifizierung erforderlich : JA mit einem gültigen Token

Anforderungslimit : 1/Sekunde

 Parameters (GET)
----------
site_id: str
The ID of the site
meter_id: str
The ID of the meter

Parameters (POST)
----------
t_s: str, optional
The isoformatted datetime, representing the start instant of timeseries, tz-naive in UTC
t_e: str, optional
The isoformatted datetime, representing the stop instant of timeseries, tz-naive in UTC

Headers
----------
Content-Type: 'application/json'
Authorization: 'Bearer {your-access-token}'

Returns
-------
array_like

4. Sensoren

Holen Sie sich alle Sensoren an einem Standort

URL : /<site_id>/sensors_list

Methode : GET

Authentifizierung erforderlich : JA mit einem gültigen Token

 Parameters (URL)
----------
site_id: str
The ID of the installation site

Headers
----------
Content-Type: 'application/json'
Authorization: 'Bearer {your-access-token}'

Returns
-------
array_like
The list of sensors info formatted as follow:

{
'id': <str representing an ObjectID>
'name': <str>,
'type': <str describing the type of measured quantity>,
'unit': <str describing the unit of the measured quantity>,
'model': <str describing the model of the sensor>
}

Rufen Sie Zeitreihendaten für einen bestimmten Sensor ab

Ruft die Zeitreihe eines Sensors für einen bestimmten Zeitraum ab. Wenn kein Punkt angegeben wird, werden die neuesten Daten zurückgegeben. t_s ist je nach Benutzer/Site begrenzt.

URL : /<site_id>/sensor_data/<sensor_id>

Methode : GET

Authentifizierung erforderlich : JA mit einem gültigen Token

Anforderungslimit : 1/Sekunde

 Parameters (URL)
----------
site_id: str
The ID of the installation site
sensor_id: str
The ID of the sensor object

Parameters (GET)
----------
t_s: str, optional
The isoformatted datetime, representing the start instant of the requested timeseries, tz-naive in UTC
t_e: str, optional
The isoformatted datetime, representing the end instant of the requested timeseries, tz-naive in UTC

Headers
----------
Content-Type: 'application/json'
Authorization: 'Bearer {your-access-token}'

Returns
-------
array_like
The timeseries sensor data of the selected period as a list of objects.
[
{
'timestamp': <int timestamp>,
'value': <float, int>
},
...
]

Wie haben wir abgeschnitten?

Lokale API des Gateways

Kontakt