<!-- order: 8 -->
API Reference — SScloud v1
SScloud poskytuje REST API pre integráciu s mobilnými aplikáciami a externými systémami.
Autentifikácia
API vyžaduje Bearer token (Laravel Sanctum). Token získate od administrátora.
Authorization: Bearer {your-api-token}
Endpointy
Zoznam elektrární
GET /api/v1/plants
Vráti zoznam všetkých elektrární prístupných pre autentifikovaného používateľa.
Každá elektráreň obsahuje:
- Aktuálny výkon (kW)
- Dennú výrobu (kWh)
- Celkovú výrobu (kWh)
- Stav licencie
- Typ meniča (Huawei, Deye, SolarEdge, GoodWe, Growatt, Sungrow)
Detail elektrárne
GET /api/v1/plants/{id}
Podrobné informácie o elektrárni vrátane zoznamu zariadení (meniče, batérie, smart metre).
Historické dáta
GET /api/v1/plants/{id}/history
Historické snapshoty v 5-minútovom intervale.
Parametre:
days— počet dní (1-90, predvolené: 7)limit— max počet záznamov (1-500, predvolené: 288)
Energetická bilancia
GET /api/v1/plants/{id}/energy
Denná agregácia energetických dát.
Parametre:
days— počet dní (1-365, predvolené: 30)
Portfólio prehľad
GET /api/v1/portfolio
Súhrnné štatistiky naprieč všetkými vašimi elektrárňami.
Odpoveď obsahuje:
- Celkový počet elektrární, kapacita (kWp)
- Aktuálny celkový výkon (kW) a denná výroba (kWh)
- Špecifický výnos (kWh/kWp)
- Stav elektrární (vyrába / online / neaktuálne / offline)
- Rozdelenie podľa značky meniča
- Počet licencovaných / nelicencovaných elektrární
Počasie a predikcia výroby
GET /api/v1/plants/{id}/weather
Aktuálne počasie a odhad dennej výroby pre elektráreň.
Vyžaduje: GPS súradnice v nastaveniach elektrárne.
Odpoveď obsahuje:
- Teplota, oblačnosť, slnečné žiarenie
- Podmienky (výborné / dobré / stredné / slabé)
- Odhad dennej výroby na základe žiarenia a kapacity
Health Check
GET /api/health (verejný, bez autentifikácie)
Kontrola stavu API. Vráti:
{
"status": "ok",
"timestamp": "2026-03-19T18:00:00Z",
"version": "2.0.0"
}
Webhooky
SScloud môže posielať webhookové udalosti na váš endpoint. Konfigurácia v časti Webhooky v administrácii.
Typy udalostí
| Udalosť | Popis |
|---------|-------|
| plant.offline | Elektráreň je offline (žiadne dáta >60 min) |
| plant.low_production | Nízka výroba oproti očakávaniu |
| plant.fuse_alert | Prúdový nadprúd na poistke |
| plant.snapshot | Nový snapshot bol zaznamenaný |
| report.monthly | Mesačný report bol vygenerovaný |
| license.expiring | Licencia expiruje do 30 dní |
Bezpečnosť
Každý webhook je podpísaný pomocou HMAC-SHA256. Overujte podpis v headeri X-SScloud-Signature.
$isValid = hash_equals(
hash_hmac('sha256', $payload, $webhookSecret),
$request->header('X-SScloud-Signature')
);
Status badge (verejný)
GET /api/badge/{plant_id}?token={badge_token}
Vráti SVG obrázok (shields.io štýl) s aktuálnym stavom elektrárne. Nevyžaduje Sanctum token — autentifikácia prebieha cez badge_token v query parametri.
Farby podľa stavu:
- 🟢 Zelená — vyrába (zobrazuje aktuálny výkon v kW)
- 🔵 Modrá — online (0 kW)
- 🟡 Žltá — neaktuálne dáta
- 🔴 Červená — offline
Použitie na webstránke:
<img src="https://cloud.supersolar.sk/api/badge/1?token=VÁŠ_TOKEN" alt="Stav elektrárne">
Badge token nájdete v nastaveniach elektrárne (/plants/{id}/settings).
Rate limit: 120 požiadaviek za minútu.
GET /api/v1/plants/{id}/maintenance
Servisný denník elektrárne — história údržby.
Parametre:
limit— max záznamov (predvolené 50, max 100)
Odpoveď:
{
"plant_id": 1,
"plant_name": "FVE Rodinný dom",
"total_entries": 5,
"total_cost_eur": 450.00,
"entries": [
{
"id": 1,
"type": "cleaning",
"type_label": "Čistenie",
"title": "Ročné čistenie panelov",
"description": "Vyčistené všetky panely...",
"performed_at": "2026-03-15",
"cost_eur": 150.00,
"technician": "Ján Novák",
"logged_by": "admin",
"created_at": "2026-03-15T14:00:00+01:00"
}
]
}
Chybové kódy
| Kód | Popis |
|-----|-------|
| 401 | Neautentifikovaný |
| 403 | Nemáte prístup |
| 404 | Elektráreň nenájdená |
| 500 | Interná chyba |
Rate Limiting
60 požiadaviek za minútu per token.