[Vineyard & Winery Elf EN](https://help.vineyardelf.com/index.md) / [Panel Reader](https://help.vineyardelf.com/panel-reader.md)

# [Integrations and API - planned functionality](https://help.vineyardelf.com/odczyt-paneli/integrations-and-api-planned-functionality.md)

## What are integrations about?

VineyardElf doesn't work in isolation - it connects to your devices and external services:
- Weather stations send temperature data
- OpenSprinkler lets you control irrigation
- Open-Meteo provides forecasts

This section explains **how it works under the hood** and how you can extend the system with your own integrations.

## Built-in integrations

### Weather stations

| Manufacturer | How to connect |
|--------------|----------------|
| **Ecowitt** | API key from ecowitt.net |
| **Davis** | WeatherLink API |
| **Netatmo** | OAuth login |
| **Open-Meteo** | No configuration (automatic) |

Configuration: **Settings > Integrations > Weather stations**

### Irrigation

| System | How to connect |
|--------|----------------|
| **OpenSprinkler** | IP address + password |
| **Gardena** | SmartSystem account |
| **Hunter Hydrawise** | API key |

Configuration: **Settings > Integrations > Irrigation**

### Image analysis

| Service | Use case |
|---------|----------|
| **Roboflow** | Disease detection on photos |

Configuration: **Settings > Integrations > Machine Vision**

## VineyardElf API

Want to build your own app or integrate VineyardElf with another system? We have a REST API!

### How to get access?

1. Go to **Settings > API > Tokens**
2. Click "New token"
3. Give it a name and permissions
4. Copy the token (it's shown only once!)

### How to use it?

Add the token to the header of every request:
```
Authorization: Bearer YOUR_TOKEN
```

### Examples

**Get current weather:**
```
GET /api/v1/weather/current
```

**Get disease risk:**
```
GET /api/v1/diseases/risk
```

**Start an irrigation zone:**
```
POST /api/v1/zones/1/run?duration=300
```

**Get alerts:**
```
GET /api/v1/alerts
```

Full API documentation: **Settings > API > Documentation**

## Webhooks - VineyardElf calls you

Want the system to notify your service about events? Use webhooks!

### How to set it up?

1. Go to **Settings > Integrations > Webhooks**
2. Click "Add webhook"
3. Enter the URL of your service
4. Select the events that should trigger the webhook
5. Save

### Which events?

- `frost_alert` - frost warning
- `disease_risk_high` - high disease risk
- `zone_started` - irrigation turned on
- `zone_stopped` - irrigation turned off
- `sensor_offline` - a sensor stopped responding

### Payload format

```json
{
  "event": "frost_alert",
  "timestamp": "2024-04-15T03:00:00Z",
  "data": {
    "temperature": -1.5,
    "zone": "Riesling North"
  }
}
```

## Advanced integrations

### MQTT
For IoT systems we support the MQTT protocol. Configure it in **Settings > Integrations > MQTT**.

### Panel Reader
Have a device without an official API? Panel Reader pulls data from its web interface. See: Reading device panels.

## Need help?

Not sure how to integrate your device? Write to us at **support@vineyardelf.com** - we'll help!

---

## Related articles

- [Weather station](/kb/vineyard-elf/stacja-pogodowa-monitorowanie-warunkow-atmosferycznych-6n6BaSzX)
- [Zone control (OpenSprinkler)](/kb/vineyard-elf/sterowanie-strefami-opensprinkler-i-nawadnianie-5sgL4pKJ)
- [Reading device panels](/kb/vineyard-elf/odczyt-paneli-urzadzen-integracja-z-zewnetrznymi-systemami-nhzY22Ny)
- [Machine Vision](/kb/vineyard-elf/machine-vision-automatyczna-analiza-lisci-i-owocow-uWAWMyjV)
