Bauen Sie auf
Mapalyze.
Die Mapalyze REST API gibt Ihnen programmatischen Zugriff auf alle Felddatensätze, Formulare, Anlagen und Exporte. Nutzen Sie sie, um Felddaten in Ihre bestehenden Systeme zu integrieren, Workflows zu automatisieren oder benutzerdefinierte Anwendungen auf unserer Plattform aufzubauen.
Authentifizierung
Alle API-Anfragen erfordern ein Bearer-Token im Authorization-Header. Generieren Sie Ihren API-Schlüssel im Mapalyze-Übersicht unter Einstellungen → API-Schlüssel.
Halten Sie Ihren API-Schlüssel geheim. Geben Sie ihn niemals in clientseitigem Code preis. Wenn ein Schlüssel kompromittiert wird, widerrufen Sie ihn sofort über das Dashboard.
curl https://api.mapalyze.io/v1/records \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
headers: {
'Authorization': `Bearer ${API_KEY}`,
'Content-Type': 'application/json'
}
});
headers = {
'Authorization': f'Bearer {API_KEY}',
'Content-Type': 'application/json'
}
response = requests.get('https://api.mapalyze.io/v1/records', headers=headers)
Datensätze
Felddatensätze sind die zentrale Ressource der Mapalyze API. Jeder Datensatz enthält Formulardaten, GPS-Koordinaten, Fotos und Metadaten, die im Feld erfasst wurden.
| PARAMETER | TYP | ERFORDERLICH | BESCHREIBUNG |
|---|---|---|---|
| form_id | string | optional | Datensätze nach Formular-ID filtern |
| limit | integer | optional | Anzahl der zurückzugebenden Datensätze (Standard: 50, Max: 500) |
| offset | integer | optional | Paginierungsversatz |
| format | string | optional | Antwortformat: json oder geojson (Standard: json) |
| since | ISO 8601 | optional | Datensätze nach diesem Zeitstempel zurückgeben |
-H "Authorization: Bearer YOUR_API_KEY"
"type": "FeatureCollection",
"total": 847,
"features": [
{
"type": "Feature",
"id": "rec_4Ks92mPq",
"geometry": {
"type": "Point",
"coordinates": [-0.1278, 51.5074]
},
"properties": {
"form_id": "form_GridInspection",
"operator": "J. Martinez",
"captured_at": "2025-03-14T09:22:11Z",
"gps_accuracy_m": 0.8,
"synced": true,
"photos": ["ph_a1b2", "ph_c3d4"]
}
}
]
}
| BODY-PARAMETER | TYP | ERFORDERLICH | BESCHREIBUNG |
|---|---|---|---|
| form_id | string | erforderlich | ID des Formulars für diesen Datensatz |
| coordinates | array | erforderlich | GeoJSON-Koordinaten [lng, lat] oder [lng, lat, alt] |
| data | object | erforderlich | Formularfeldwerte als Schlüssel-Wert-Paare |
| captured_at | ISO 8601 | optional | Erfassungszeitstempel überschreiben (Standard: jetzt) |
Exporte
Exportieren Sie Ihre Felddaten als GeoJSON, CSV oder PDF-Bericht. Große Exporte werden asynchron erzeugt.
Exporte mit mehr als 10.000 Datensätzen werden asynchron verarbeitet. Die API gibt eine <strong>job_id</strong> zurück; fragen Sie <code>/v1/jobs/{job_id}</code> ab, um den Status und nach Abschluss die Download-URL zu erhalten.
-H "Authorization: Bearer YOUR_API_KEY" \
-o field_data.geojson
'https://api.mapalyze.io/v1/export/geojson?form_id=form_GridInspection',
{ headers: { 'Authorization': `Bearer ${API_KEY}` } }
);
const geojson = await res.json();
// Drop straight into ArcGIS, QGIS, or Mapbox
Webhooks
Erhalten Sie HTTP-Benachrichtigungen in Echtzeit, wenn Feldereignisse auftreten — Datensätze erstellt, synchronisiert oder aktualisiert werden. Ideal, um nachgelagerte Workflows genau dann auszulösen, wenn Daten eintreffen.
| EREIGNIS | BESCHREIBUNG |
|---|---|
| record.created | Ein neuer Felddatensatz wurde erstellt |
| record.synced | Ein Offline-Datensatz wurde mit dem Rechner synchronisiert |
| record.updated | Ein bestehender Datensatz wurde geändert |
| record.deleted | Ein Datensatz wurde gelöscht |
| export.completed | Ein asynchroner Exportauftrag ist abgeschlossen |
Fehler
Mapalyze verwendet Standard-HTTP-Statuscodes. Alle Fehler geben einen JSON-Body mit Code und Nachricht zurück.
Ratenlimits
Ratenlimits werden pro API-Schlüssel angewendet. Bei Überschreitung wird ein 429 mit Retry-After-Header zurückgegeben.
| TARIF | ANFRAGEN / STUNDE | EXPORTGRÖSSE |
|---|---|---|
| Starter | 1,000 | 10,000 Datensätze |
| Pro | 10,000 | 500,000 Datensätze |
| Enterprise | Unbegrenzt | Unbegrenzt |
Webhook-Zustellung: Webhooks werden bis zu 5 Mal mit exponentiellem Backoff wiederholt. Endpoints, die 72 Stunden lang durchgehend fehlschlagen, werden automatisch deaktiviert.