Zum Inhalt springen

Ihre Garagenverwaltung, offen für andere Programme

Mit der API holen Sie Daten aus Manage²Hero in Excel, in Ihre Buchhaltung oder auf Ihre Website. Jedes Programm meldet sich mit einem eigenen API-Token an und sieht ausschließlich die Daten Ihrer Organisation.

  • Basis-Adressehttps://api.manage2hero.com/v1
  • FormatJSON
  • AnmeldungAuthorization: Bearer …
  1. Token anlegenEine Person mit Administratorrechten legt es unter Administration → API-Zugänge an. Das Token wird nur einmal angezeigt.
  2. Token im Programm hinterlegenAm besten als Umgebungsvariable M2H_API_TOKEN, nie im Quelltext.
  3. Garagenparks abrufenDer Aufruf nebenan liefert Ihre Garagenparks. Kopieren, einfügen, fertig.
Schnellstart lesen
curl
curl -s "https://api.manage2hero.com/v1/locations" \
  -H "Authorization: Bearer $M2H_API_TOKEN"
Weitere Sprachen: PowerShell, Node.js, Python
PowerShell
$kopf = @{ Authorization = "Bearer $env:M2H_API_TOKEN" }
Invoke-RestMethod -Uri "https://api.manage2hero.com/v1/locations" -Headers $kopf
JavaScript (Node.js 18+)
const res = await fetch('https://api.manage2hero.com/v1/locations', {
  headers: { Authorization: `Bearer ${process.env.M2H_API_TOKEN}` },
});
const body = await res.json();
if (!body.success) throw new Error(`${body.error.code}: ${body.error.message}`);
const daten = body.data; // hier weiterverarbeiten
Python (requests)
import os, requests

res = requests.get(
    "https://api.manage2hero.com/v1/locations",
    headers={"Authorization": f"Bearer {os.environ['M2H_API_TOKEN']}"},
    timeout=30,
)
body = res.json()
if not body["success"]:
    raise RuntimeError(f"{body['error']['code']}: {body['error']['message']}")
print(body["data"])
Antwort200 OK · JSON
{
  "success": true,
  "data": {
    "items": [
      { "id": "6a1f0c2e-…", "code": "HH01",
        "name": "Garagenpark Hamburg Nord",
        "active": true, … }
    ],
    "next_cursor": null
  },
  "request_id": "req_4n2Xc9…"
}

Was die API heute kann

Die Spalte „Berechtigung“ nennt, was das Token für den Aufruf dürfen muss. Die API wird schrittweise erweitert; Neues steht im Änderungsprotokoll.

Garagenparks und Vermietung

Wie viele Garagen sind vermietet, und wie hat sich das entwickelt?

AufgabeEndpunktBerechtigung
Garagenparks auflisten
GET/v1/locations
locations:read
Vermietungsquote aller Garagenparks
GET/v1/occupancy
occupancy:read
Vermietungsquote eines Garagenparks
GET/v1/locations/{id}/occupancy
occupancy:read
Verlauf der Vermietungsquote
GET/v1/occupancy/history
occupancy:read

Mieter und Import

Aktuelle Mieter lesen und Bestandsmieter aus einem anderen System übernehmen. Anleitung

AufgabeEndpunktBerechtigung
Aktuelle Mieter eines Garagenparks
GET/v1/locations/{id}/tenants
tenants:read
Bestandsmieter an den Import übergeben
POST/v1/tenant-imports
tenants:import
Stand eines Imports
GET/v1/tenant-imports/{id}
tenants:import
Import abbrechen
DELETE/v1/tenant-imports/{id}
tenants:import
Import übernehmen (Mieter und Verträge anlegen)
POST/v1/tenant-imports/{id}/commit
tenants:import_commit
Ein Mieter
GET/v1/tenants/{id}
tenants:read
Zeitleiste eines Mieters
GET/v1/tenants/{id}/timeline
timeline:read

Buchungen und Umsatz

Das Buchungsjournal und der Nettoumsatz für Ihre Auswertung.

AufgabeEndpunktBerechtigung
Buchungsjournal
GET/v1/bookings
bookings:read
Nettoumsatz nach Monat, Belegart oder Garagenpark
GET/v1/revenue
bookings:read
Änderungsabgleich BuchungenEinstieg, Änderungen seit dem Cursor und Abruf nach Kennungen
/v1/bookings/changes/cursor
/v1/bookings/changes
/v1/bookings/by-ids
bookings:read
DATEV-Exporte (Verlauf)
GET/v1/datev/exports
datev:export
DATEV-Export anfordern
POST/v1/datev/exports
datev:export
Stand eines DATEV-Exports
GET/v1/datev/exports/{id}
datev:export
Download-Link für einen DATEV-Export
POST/v1/datev/exports/{id}/download-link
datev:export

Rechnungen und Zahlungen

Ausgestellte Rechnungen und eingegangene Zahlungen.

AufgabeEndpunktBerechtigung
Rechnungen
GET/v1/invoices
invoices:read
Eine Rechnung mit Positionen
GET/v1/invoices/{id}
invoices:read
Zahlungseingänge
GET/v1/payments
payments:read
Änderungsabgleich RechnungenEinstieg, Änderungen seit dem Cursor und Abruf nach Kennungen
/v1/invoices/changes/cursor
/v1/invoices/changes
/v1/invoices/by-ids
invoices:read
Änderungsabgleich ZahlungseingängeEinstieg, Änderungen seit dem Cursor und Abruf nach Kennungen
/v1/payments/changes/cursor
/v1/payments/changes
/v1/payments/by-ids
payments:read

Offene Posten und Mahnwesen

Was ist noch nicht bezahlt, und wo steht welcher Vertrag im Mahnverfahren?

AufgabeEndpunktBerechtigung
Offene Posten
GET/v1/open-items
open_items:read
Offene Posten: Summen und Altersstruktur
GET/v1/open-items/summary
open_items:read
Mahnstand je Vertrag
GET/v1/dunning/leases
dunning:read
Ausgestellte Mahnungen
GET/v1/dunning/notices
dunning:read
Eine Mahnung mit ihren Posten
GET/v1/dunning/notices/{id}
dunning:read
Änderungsabgleich MahnungenEinstieg, Änderungen seit dem Cursor und Abruf nach Kennungen
/v1/dunning/notices/changes/cursor
/v1/dunning/notices/changes
/v1/dunning/notices/by-ids
dunning:read

Dokumente

Mieter- und Standortdokumente abrufen, mit kurzlebigen Download-Links.

AufgabeEndpunktBerechtigung
Änderungsabgleich DokumenteEinstieg, Änderungen seit dem Cursor und Abruf nach Kennungen
/v1/documents/changes/cursor
/v1/documents/changes
/v1/documents/by-ids
documents:read
Dokumente
GET/v1/documents
documents:read
Ein Dokument (Metadaten)
GET/v1/documents/{id}
documents:read
Download-Link für ein Dokument
POST/v1/documents/{id}/download-link
documents:download

E-Mails

Welche System-E-Mails ein Mieter bekommen hat, mit Status und auf Wunsch dem Volltext.

AufgabeEndpunktBerechtigung
Änderungsabgleich E-MailsEinstieg, Änderungen seit dem Cursor und Abruf nach Kennungen
/v1/emails/changes/cursor
/v1/emails/changes
/v1/emails/by-ids
emails:read
E-Mail-Verlauf der Mieter
GET/v1/emails
emails:read
Eine E-Mail
GET/v1/emails/{id}
emails:read

Verträge

Verträge, Nachträge, Kündigungen und Unterschriften. Anleitung

AufgabeEndpunktBerechtigung
Änderungsabgleich VerträgeEinstieg, Änderungen seit dem Cursor und Abruf nach Kennungen
/v1/contracts/changes/cursor
/v1/contracts/changes
/v1/contracts/by-ids
contracts:read
Verträge
GET/v1/contracts
contracts:read
Ein Vertrag
GET/v1/contracts/{id}
contracts:read

Einheiten und Garagen

Einzelne Stellplätze mit Status, Miete und aktuellem Mieter. Anleitung

AufgabeEndpunktBerechtigung
Einheiten und Garagen
GET/v1/units
units:read
Eine Einheit
GET/v1/units/{id}
units:read

Schäden

Schadensmeldungen lesen, anlegen und den Stand setzen. Anleitung

AufgabeEndpunktBerechtigung
Änderungsabgleich SchädenEinstieg, Änderungen seit dem Cursor und Abruf nach Kennungen
/v1/damages/changes/cursor
/v1/damages/changes
/v1/damages/by-ids
damages:read
Schäden (Fallakten)
GET/v1/damages
damages:read
Ein Schaden
GET/v1/damages/{id}
damages:read
Schaden an einer Einheit anlegen
POST/v1/damages
damages:write
Status eines Schadens setzen
PATCH/v1/damages/{id}/status
damages:write

Nebenkosten und Zähler

Abrechnungen, Zähler und Zählerstände lesen und eintragen. Anleitung

AufgabeEndpunktBerechtigung
Strom- und Wasserabrechnungen
GET/v1/utility/statements
utility:read
Zähler
GET/v1/meters
utility:read
Zähler anlegen
POST/v1/meters
utility:write
Zählerstände eines Zählers
GET/v1/meters/{id}/readings
utility:read
Zählerstand eintragen
POST/v1/meters/{id}/readings
utility:write

Termine

Besichtigungen und Übergaben lesen und anlegen. Anleitung

AufgabeEndpunktBerechtigung
Termine
GET/v1/appointments
appointments:read
Ein Termin
GET/v1/appointments/{id}
appointments:read
Termin anlegen
POST/v1/appointments
appointments:write

Interessenten und Warteliste

Anfragen lesen und von der eigenen Webseite einliefern. Anleitung

AufgabeEndpunktBerechtigung
Interessenten-Anfragen
GET/v1/prospects
prospects:read
Eine Interessenten-Anfrage
GET/v1/prospects/{id}
prospects:read
Warteliste
GET/v1/waitlist
prospects:read
Mietanfrage einliefern
POST/v1/prospects
prospects:write

Handwerker und Aufträge

Handwerksbetriebe und ihre Aufträge lesen. Anleitung

AufgabeEndpunktBerechtigung
Handwerksbetriebe
GET/v1/contractors
contractors:read
Aufträge an Handwerker
GET/v1/contractor-orders
contractors:read

Webhooks

Benachrichtigungen bei Ereignissen einrichten, statt ständig nachzufragen. Webhooks-Handbuch · Integrations-Checkliste

AufgabeEndpunktBerechtigung
Webhooks auflisten
GET/v1/webhooks
webhooks:manage
Webhook anlegen
POST/v1/webhooks
webhooks:manage
Ein Webhook
GET/v1/webhooks/{id}
webhooks:manage
Webhook ändern
PATCH/v1/webhooks/{id}
webhooks:manage
Webhook löschen
DELETE/v1/webhooks/{id}
webhooks:manage
Signaturgeheimnis rotieren
POST/v1/webhooks/{id}/rotate-secret
webhooks:manage
Testereignis senden
POST/v1/webhooks/{id}/test
webhooks:manage
Zustellverlauf eines Webhooks
GET/v1/webhooks/{id}/deliveries
webhooks:manage
Zustellung erneut senden
POST/v1/webhooks/{id}/deliveries/{delivery_id}/retry
webhooks:manage
Fehlgeschlagene Zustellungen erneut senden
POST/v1/webhooks/{id}/deliveries/retry-failed
webhooks:manage
Sandbox: Ereignis simulieren
POST/v1/sandbox/events
webhooks:manage

Zugriffsprotokoll

Welche Abrufe Ihre API-Zugänge gemacht haben.

AufgabeEndpunktBerechtigung
Zugriffsprotokoll der API-Abrufe
GET/v1/usage
usage:read
DatenschutzSie entscheiden, welche Programme welche Daten erhalten. Übertragen Sie Mieterdaten nur an Systeme, für die Sie eine Rechtsgrundlage haben, und vergeben Sie jedem Programm nur die Berechtigungen, die es wirklich braucht.

Sicherheit & Support · Bedrohungsmodell · Status · Änderungsprotokoll