# Sensordaten

getSensors
getSensorData

# getSensors

**Beschreibung:**  
Ruft eine Liste aller Sensoren und deren Informationen für ein bestimmtes PowerDog-Gerät ab.  
Diese Funktion gibt detaillierte Sensordaten zurück, darunter Typ, Name und Messbereich.  

**Endpunkt:** `/api`  
**Methode:** `POST`  

#### Parameter:
- `apikey` (string) – API-Schlüssel des Benutzers, aus `getApiKey()`
- `PowerDogID` (number) – Eindeutige Kennung des PowerDog-Geräts, aus `getPowerDogs()`

#### Beispielanfrage:
```json
{
    "action": "getSensors",
    "apikey": "6641d282073d76b625987af5141d3e2a",
    "PowerDogID": "36789"
}
```

#### Beispielantwort:
```json
{
    "valid": 1,
    "sensors": {
        "onewire_1494659203": {
            "KEY": "onewire_1494659203",
            "Type": "Temperature",
            "Max": "100",
            "Name": "boilertemp",
            "id": "551929"
        },
        "adcsensor_1522075451": {
            "KEY": "adcsensor_1522075451",
            "Type": "Global_Radiation",
            "Max": "1200",
            "Name": "radiation",
            "id": "551931"
        }
    },
    "id": 36789
}
```

#### Beschreibung der Antwortparameter:
- **valid** (number):  
  Gibt an, ob die Anfrage erfolgreich war (`1` = Erfolg, `0` = Fehler).
  
- **sensors** (object):  
  Ein Objekt, das eine Liste aller Sensoren enthält. Jeder Sensor hat eine eindeutige **KEY**-ID.

  - **KEY** (string):  
    Eindeutige Kennung des Sensors.
  
  - **Type** (string):  
    Typ des Sensors, z. B. `Temperature`, `Voltage`, `Energy`.
  
  - **Max** (string):  
    Maximale Messkapazität des Sensors.
  
  - **Name** (string):  
    Name des Sensors.
  
  - **id** (string):  
    Interne ID des Sensors.

- **id** (number):  
  Eindeutige Kennung des PowerDog-Geräts, zu dem die Sensoren gehören.

#### Nähere Informationen zu Antwortformat und Fehlermeldungen:
[Antwortformat und Fehler](https://anleitung.smart-dog.eu/books/api-dokumentation/chapter/antwortformat-und-fehler)

# getSensorData

**Beschreibung:**  
Ruft Sensordaten oder Zählerdaten für einen bestimmten Zeitraum ab.  
Die Werte werden in 5-Minuten-Intervallen geliefert.  

**Endpunkt:** `/api`  
**Methode:** `POST`  

#### Parameter:
- `apikey` (string) – API-Schlüssel des Benutzers, aus `getApiKey()`
- `SensorID` (number) – Eindeutige Kennung des Sensors/Zählers, aus `getSensors()` oder `getCounters()`
- `UTC_TIMESTAMP_FROM` (number) – Startzeitpunkt im UTC-Timestamp-Format
- `UTC_TIMESTAMP_TO` (number) – Endzeitpunkt im UTC-Timestamp-Format

#### Beispielanfrage:
```json
{
    "action": "getSensorData",
    "apikey": "6641d282073d76b625987af5141d3e2a",
    "SensorID": "551941",
    "UTC_TIMESTAMP_FROM": "1739867939",
    "UTC_TIMESTAMP_TO": "1739877939"
}
```

#### Beispielantwort:
```json
{
    "sensor_id": 551941,
    "valid": 1,
    "datasets": {
        "1739868002": {
            "DATA": "251",
            "TIMESTAMP_UTC": 1739868002,
            "TIMESTAMP_LOCAL": 1739871602
        },
        "1739868302": {
            "DATA": "257",
            "TIMESTAMP_UTC": 1739868302,
            "TIMESTAMP_LOCAL": 1739871902
        }
}
```

#### Beschreibung der Antwortparameter:
- **sensor_id** (number):  
  Eindeutige Kennung des Sensors oder Zählers, für den die Daten abgefragt wurden.

- **valid** (number):  
  Gibt an, ob die Anfrage erfolgreich war (`1` = Erfolg, `0` = Fehler).

- **datasets** (object):  
  Enthält die aufgezeichneten Messwerte im 5-Minuten-Intervall.  
  Jeder Schlüssel stellt einen UTC-Timestamp dar.

  - **DATA** (string):  
    Messwert des Sensors oder Zählers.

  - **TIMESTAMP_UTC** (int):  
    Zeitstempel der Messung im UTC-Format.

  - **TIMESTAMP_LOCAL** (int):  
    Zeitstempel der Messung in der lokalen Zeitzone.

---


#### Nähere Informationen zu Antwortformat und Fehlermeldungen:
[Antwortformat und Fehler](https://anleitung.smart-dog.eu/books/api-dokumentation/chapter/antwortformat-und-fehler)