Skip to content
Vineyard & Winery Elf EN

Integrations and API - planned functionality

Updated at: 2 min read

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

{
  "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 [email protected] - we’ll help!

Was this entry helpful?

Share

Comments