Graas Irrigator API

Version 1.0.0
Environment: prod

API Endpoints

RESTful API for managing irrigation devices, zones, and automation tasks.

Authentication

POST /api/auth/register Register new user
POST /api/auth/login Login and get JWT token
GET /api/auth/me Get current user info

System

GET /api/version Get API version
GET /api/health Health check
GET /api/dashboard Dashboard summary (auth required)

Devices

GET /api/devices List all devices
POST /api/devices Create new device
GET /api/devices/{id} Get device details
PUT /api/devices/{id} Update device
DELETE /api/devices/{id} Delete device

Zones

GET /api/devices/{deviceId}/zones List device zones
POST /api/devices/{deviceId}/zones Create zone
GET /api/devices/{deviceId}/zones/{zoneId} Get zone details
PUT /api/devices/{deviceId}/zones/{zoneId} Update zone
DELETE /api/devices/{deviceId}/zones/{zoneId} Delete zone

Irrigation

POST /api/irrigation/start Start irrigation
POST /api/irrigation/stop Stop irrigation
GET /api/irrigation/tasks List irrigation tasks

Notifications

GET /api/notifications List notifications
GET /api/notifications/unread-count Get unread count
POST /api/notifications/{id}/mark-read Mark as read

Authentication

JWT Token Required

Most endpoints require authentication via JWT token

Include the token in the Authorization header: Authorization: Bearer {token}