Inhaltsübersicht
Climkit-API
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>
},
...
]