Verbinde dein DMS, CRM, ERP oder Shop-System mit agrar online. Ein REST-Endpoint, 27 Routen, 8 Scopes — in 5 Minuten zum ersten Call.
Keine SDKs, keine Token-Tausch-Tänze. Ein API-Key, ein Header, eine Antwort.
In agrar online einloggen → Optionen → API-Zugänge → „Neuen API-Key erstellen". Scopes pro Key wählen (z.B. nur kunden:read).
HTTP-GET auf /api/v1/kunden mit dem X-API-Key-Header. Beispiel-Snippets unten in cURL, JavaScript, Python und PHP.
Jede Liste kommt als { data: [...], count: N }. Einzel-Resources als reines Objekt. Fehler als { error: 'CODE', message: '…' }.
curl -X GET "https://api.agrar.online/api/v1/kunden?limit=10" \
-H "X-API-Key: ak_dein_api_key_hier" \
-H "Accept: application/json"
const res = await fetch('https://api.agrar.online/api/v1/kunden?limit=10', {
headers: {
'X-API-Key': process.env.AGRAR_API_KEY,
'Accept': 'application/json',
},
});
const json = await res.json();
console.log(json.data); // Array mit den ersten 10 Kunden
import os, requests
r = requests.get(
"https://api.agrar.online/api/v1/kunden",
params={"limit": 10},
headers={"X-API-Key": os.environ["AGRAR_API_KEY"]},
timeout=15,
)
r.raise_for_status()
for kunde in r.json()["data"]:
print(kunde["kundennummer"], kunde["name"])
<?php
$ch = curl_init("https://api.agrar.online/api/v1/kunden?limit=10");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"X-API-Key: " . getenv("AGRAR_API_KEY"),
"Accept: application/json",
],
]);
$json = json_decode(curl_exec($ch), true);
print_r($json["data"]);
{
"data": [
{
"id": 42,
"kundennummer": "K-1042",
"name": "Musterhof Schmidt GbR",
"typ": "VK",
"email": "info@musterhof.example",
"telefon": "+49 5021 123456",
"strasse": "Dorfstraße 12",
"plz": "31515",
"ort": "Wunstorf",
"land": "DE",
"aktiv": true
}
],
"count": 1
}
Die häufigsten Integrations-Muster die Partner mit der API bauen. Die Endpoint-Patterns unten sind in der interaktiven Doku verlinkt.
Stammdaten zwischen ERP, CRM oder Shop-System abgleichen. Auto-Pricing, kundennr-Mapping und Idempotenz inklusive.
Finalisierte Rechnungen und Lieferscheine als archiviertes PDF (DMS-Pattern) — plus Polling-Endpoint fuer neue Dokumente.
EL/ER-Belege per POST anlegen — Charge-Anlage, MHD, Herkunft, Lager-Buchung greifen automatisch. Mit external_ref idempotent.
Charge-genaue Bestaende pro Artikel oder Partner. Inklusive Filter auf Bestand>0 und Genealogie-Tree.
Externe Waage oder Spedition pingt direkt rein — Annahmescheine landen im Rohwaren-Modul und werden vom Personal weiter bearbeitet.
Status, Restmenge und Faelligkeiten von Kontrakten in BI- oder Reporting-Tools ziehen — read-only und ohne Risiko.
PA-Anlage mit Inputs/Outputs aus dem MES oder Rezeptur-System. Genealogie + Bewertungs-Anteile kommen automatisch.
Laender-Codes, Steuersaetze oder Artikelgruppen fuer Frontend-Dropdowns — leichtgewichtige Read-Only-Endpoints.
API-Key per Header, klare Scopes pro Zweck, harte Tageslimits — eine pragmatische OAuth-Alternative.
Jeder Request braucht den Header:
X-API-Key: ak_xxxxxxxxxxxxxxxx
Pro API-Key:
Für höhere Limits oder Enterprise-Pakete: support@agrar.online
Jeder Scope schaltet eine Endpoint-Gruppe frei. Least-Privilege: nur das gewähren, was die Integration wirklich braucht.
| kunden:read | Kunden-Stammdaten lesen |
| kunden:write | Kunden anlegen / aktualisieren |
| artikel:read | Artikel-Stamm + Preise lesen |
| belege:read | Belege + archivierte PDFs lesen |
| belege:write | Belege anlegen / aktualisieren (alle Typen) |
| chargen:read | Chargen + Bestaende lesen |
| chargen:write | Chargen direkt anlegen (Migration) |
| dokumente:write | Anhaenge an Kunden / Artikel hochladen |
Mit dem „Authorize"-Button oben rechts deinen API-Key eintragen, dann kannst du jeden Endpoint direkt aus dem Browser ausprobieren.