Zum Inhalt
Zurück zum Vergleich

Auto-Abo-Daten in deiner Anwendung nutzen

Mit der Programmierschnittstelle (API) liest du Auto-Abo-Daten in deiner Anwendung. Über das Model Context Protocol (MCP) verbindest du Assistenten mit künstlicher Intelligenz.

Zugang zur API

Du brauchst weder ein Benutzerkonto noch einen API-Schlüssel.

Die Schnittstellen lesen ausschließlich Angebotsdaten und Statusinformationen. Du kannst damit keine Fahrzeuge buchen oder Verträge ändern.

Angebote abrufen und filtern

Die API nutzt das Hypertext Transfer Protocol (HTTP) für Webanfragen. Mit GET /api/offers liest du eine Seite mit Angebotsübersichten.

Du erhältst die Daten im Format JavaScript Object Notation (JSON).

OpenAPI beschreibt Parameter und Antwortfelder in einem maschinenlesbaren Format. Die Referenz unserer API nennt alle verfügbaren Filter und ihre zulässigen Werte.

Vollständige Angebotsdetails liest du mit GET /offer.json?provider=provider_id_from_search&id=offer_id_from_search. Ersetze die Platzhalter durch die Kennungen aus einem Suchergebnis.

Diese Anfrage liefert bis zu 10 Elektroauto-Angebote mit einer Monatsrate bis 500 Euro. Die günstigste Monatsrate steht zuerst.

Terminal (Bash)
curl --get 'https://abomio.de/api/offers' \
  --data-urlencode 'fuel=elektro' \
  --data-urlencode 'max_price=500' \
  --data-urlencode 'sort=price-asc' \
  --data-urlencode 'limit=10'
Parameter für die Angebotssuche
ParameterVerwendung
brand, fuel, transmission, providerMarke, Motorart, Getriebe und Anbieter wählen
min_price, max_priceMonatsrate in Euro begrenzen
runtime, qLaufzeit in Monaten wählen oder Fahrzeugtext durchsuchen
sort=price-ascNach aufsteigender Monatsrate sortieren
limit1 bis 50 Ergebnisse pro Seite, Standard 20
cursorStartpunkt der nächsten Seite. Übernimm next_cursor unverändert aus der vorherigen Antwort und behalte Filter und Sortierung bei. Bei null gibt es keine weitere Seite.

Lies die Referenz oder öffne eine Antwort im Browser:

Version wählen und Fehler beheben

Die aktuelle API-Version ist 1. Sende API-Version: 1 als HTTP-Header oder lasse ihn weg. Der Antwortheader nennt die verwendete Version.

Eine leere Angebotsliste bedeutet, dass keine Angebote zu deinen Filtern passen. Passe die Filter an, wenn du weitere Ergebnisse suchst.

Fehler und nächste Schritte
HTTP-StatusAktion
400Korrigiere die Parameter oder den Versionsheader anhand der Fehlermeldung.
404Suche erneut und verwende die Anbieterkennung und Angebotskennung aus einem aktuellen Ergebnis.
405Allow nennt die erlaubten HTTP-Methoden.
409Die Ergebnisse haben sich geändert. Starte ohne offset und revision neu.
429Zu viele Anfragen. Warte die in Retry-After angegebenen Sekunden. RateLimit-Policy nennt das Kontingent.
503Warte die in Retry-After angegebenen Sekunden und prüfe den Katalogstatus.

Diese HTTP-Methoden funktionieren auch bei Anfragen von anderen Domains:

  • GET liest die Daten.
  • HEAD liest nur die Antwortheader.
  • OPTIONS fragt die erlaubten Methoden und Zugriffe ab.

Bei einem API-Fehler helfen dir diese Antwortfelder:

  • error.code benennt den Fehler für deine automatische Fehlerbehandlung.
  • error.message beschreibt die Ursache.
  • error.resolution nennt den nächsten Schritt.

Versionen und Abkündigungen

Innerhalb einer API-Version kommen nur neue Endpunkte, optionale Parameter und neue Antwortfelder hinzu. Ignoriere unbekannte Felder. Wenn wir Felder, Parameter oder Endpunkte entfernen, umbenennen oder ihre Bedeutung ändern, erhöhen wir die Versionsnummer.

Bevor wir eine Version oder einen Endpunkt entfernen, kündigen wir es mindestens 90 Tage vorher an. Diese Seite nennt dann das Datum und den Umstieg. Für die MCP-Tools gelten dieselben Regeln.

Während der Abkündigung senden die Antworten diese Header:

  • Deprecation nennt den Tag der Abkündigung als Zeitstempel nach RFC 9745.
  • Sunset nennt den Tag, an dem wir die Version oder den Endpunkt entfernen, nach RFC 8594.
  • Link: <…>; rel="deprecation" verweist auf die Hinweise zum Umstieg.

Einen MCP-Client verbinden

Ein MCP-Client ist die Anwendung, die Angebotsdaten für deinen Assistenten abfragt. Verbinde ihn über Streamable HTTP, die HTTP-Übertragung für MCP, mit https://abomio.de/mcp.

Der Server unterstützt Protokollversion 2026-07-28 und ältere Clients, die mit „initialize“ beginnen. Wähle bei der Verbindung „keine Authentifizierung“. Ein Client mit Version 2026-07-28 fragt Serverinformationen mit server/discover und verfügbare Werkzeuge mit tools/list ab.

Mit dem offiziellen TypeScript-Client startest du eine Angebotssuche in 3 Schritten:

  1. Client installieren

    Du brauchst Node.js ab Version 24 und den Paketmanager pnpm. Öffne ein Terminal in deinem Projektordner.

    Installiere den offiziellen MCP-Client. Er übernimmt die Verbindung und die erforderlichen Protokollangaben:

    Terminal (Bash)
    pnpm add @modelcontextprotocol/client@2.2.0
  2. Angebote abfragen

    Dieses Beispiel verbindet den Client und sucht Elektroautos bis 500 Euro. Speichere den Code als angebote.mts im Projektordner.

    TypeScript
    import {
      Client,
      StreamableHTTPClientTransport,
    } from "@modelcontextprotocol/client";
    
    const client = new Client(
      { name: "abomio-reader", version: "1.0.0" },
      { versionNegotiation: { mode: { pin: "2026-07-28" } } },
    );
    try {
      await client.connect(
        new StreamableHTTPClientTransport(new URL("https://abomio.de/mcp")),
      );
      const result = await client.callTool({
        name: "search_offers",
        arguments: { fuel: "elektro", max_price: 500, limit: 10 },
      });
      if (result.isError) throw new Error(JSON.stringify(result.content));
      console.log(result.structuredContent);
    } finally {
      await client.close();
    }
  3. Ausgabe prüfen

    Starte die Datei mit node angebote.mts. Bei Erfolg enthält die Ausgabe offers mit höchstens 10 Angeboten.

    Prüfe vor der Nutzung einer Werkzeugantwort isError. Erfolgreiche Antworten enthalten die Angebotsdaten in structuredContent.

Verfügbare Werkzeuge
WerkzeugErgebnis
search_offersGefilterte Angebote mit Angaben zur nächsten Seite
get_offerDetails für die Anbieterkennung provider und Angebotskennung id aus einem Suchergebnis

Weitere Verbindungsdaten und Protokollbeispiele findest du hier:

Preise und Konditionen vergleichen

Alle Beträge stehen in Euro und enthalten die Umsatzsteuer. Zusatzkosten können anfallen. Wenn eine Gebühr fehlt, ist sie unbekannt, nicht kostenlos. Die Auswahl deckt nicht den gesamten Markt ab.

Verwende vehicle.title als Fahrzeugnamen. Übernimm source_url unverändert, wenn du auf das Angebot verlinkst. Der Link führt über abomio.de zum Anbieter, provider_host nennt dessen Website.

Prüfe aktuelle Konditionen beim Anbieter. Wie wir Gebühren und Monatsraten berücksichtigen, erklärt unsere Vergleichsmethode.

Verfügbarkeit und Katalogstand prüfen

Empfehle nur Angebote, deren zuletzt bestätigte Verfügbarkeit positiv ist. Prüfe zusätzlich, wann wir das Angebot zuletzt erfasst haben.

Den aktuellen Prüfzeitpunkt und den Zustand des Katalogs findest du unter Katalogstatus. Ein eingeschränkter Katalog kann weiterhin verfügbare Angebote enthalten.

Bei publication_changed haben sich die Suchergebnisse geändert oder Angebote sind abgelaufen. Beginne die Suche ohne cursor erneut.

Weitere Hinweise zur Datennutzung stehen im Verzeichnis für Assistenten.

Felder für Verfügbarkeit und Aktualität
Feld und FundstelleBedeutung und Verwendung
available im AngebotZuletzt bestätigte Verfügbarkeit. Empfehle nur Angebote mit true. Eine fehlgeschlagene Prüfung ändert diesen Wert nicht automatisch.
scraped_at im AngebotErfassungszeitpunkt des Angebots. Berücksichtige das Alter der Daten.
checked_at im KatalogstatusZeitpunkt der letzten Katalogprüfung. Er kann neuer sein als die erfassten Angebotsdaten.
published_at in der SuchantwortZeitpunkt der letzten Änderung veröffentlichter Angebote. Er beschreibt den Katalogstand, nicht die letzte Prüfung.
revision in der SuchantwortKennung für die aktuelle Suche. Übernimm sie aus der ersten Antwort unverändert für alle weiteren Seiten.