API-Dokumentation
checkdasinserat.de lässt sich auf drei Wegen programmatisch ansteuern: ein Deep-Link, der das Formular vorausfüllt, ein POST-Endpunkt für die vollständig automatisierte Einreichung, und ein GET-Endpunkt mit den aktuellen Service-Daten. Kein API-Key nötig — alle drei Wege sind offen und ohne Auth nutzbar.
Auf dieser Seite: Deep-Link · POST /api/v1/checks · GET /api/v1/service · OpenAPI & MCP
Deep-Link
Der einfachste Weg: ein Link auf /check, der das Formular mit Link(s), Paketgröße und Herkunft vorbefüllt. Der Nutzer sieht das Formular vorausgefüllt, prüft es und schickt es selbst ab — E-Mail-Adresse und Bestätigung bleiben beim Menschen. Kein Request, kein JSON, funktioniert in jedem Chat-Fenster, das Links klickbar macht.
https://checkdasinserat.de/check?url=https%3A%2F%2Fwww.autoscout24.de%2Fangebote%2Fbeispiel-inserat-123456&pkg=3&src=chatgpt&p=a| Parameter | Bedeutung |
|---|---|
| url | Urlencodierter Inserats-Link. Mehrfach anhängbar (bis zu 10), für mehrere Inserate in einem Auftrag. |
| pkg | Paketgröße: 1 · 3 · 5 · 10. Optional — ohne Angabe wählt das Formular die kleinste passende Größe zur Anzahl der Links. |
| src | Freies Herkunfts-Tag, z. B. der Name deines Assistenten — landet in unserer Statistik, ändert nichts am Ablauf. |
| p | Preis-Variante. Optional — ohne Angabe gilt die Standardvariante. |
/api/v1/checks
Für die vollständig programmatische Einreichung, ohne dass ein Mensch das Formular sieht. Nimmt bis zu 10 Inserats-Links entgegen und legt eine Anfrage an — bearbeitet wird sie erst, nachdem die angegebene Adresse den Bestätigungslink in der Mail angeklickt hat. Antwort ist 202, nie eine sofortige Zahlungsaufforderung.
Feldübersicht
| Feld | Pflicht | Bedeutung |
|---|---|---|
| urls | Ja | Array mit ein bis 10 vollständigen Inserats-Links — Einzelinserate, keine Ergebnislisten — von mobile.de, suchen.mobile.de, www.mobile.de, autoscout24.de, www.autoscout24.de, kleinanzeigen.de, www.kleinanzeigen.de. |
| pkg | Nein | Gewünschte Paketgröße (1 · 3 · 5 · 10). Wird nur übernommen, wenn sie größer ist als die Größe, die sich automatisch aus der Anzahl der Links ergibt — kleiner wählen geht nicht. |
| Ja | Adresse für Bestätigungsmail und späteren Report. | |
| src | Nein | Freies Herkunfts-Tag, z. B. der Name deines Assistenten, für die Statistik. |
Beispiel-Request
{
"urls": [
"https://suchen.mobile.de/fahrzeuge/details.html?id=123456789",
"https://www.autoscout24.de/angebote/beispiel-inserat-123456"
],
"pkg": 3,
"email": "kaeufer@example.de",
"src": "chatgpt"
}Antwort — 202 Accepted
status steht auf pending_confirmation: Die Anfrage ist gespeichert, aber unbearbeitet, bis der Bestätigungslink angeklickt wurde. Aktuelle Preise stehen zusätzlich unter GET /api/v1/service.
{
"status": "pending_confirmation",
"request_id": "3f9a2b71c8de4a10b7c5e2f1a9d84b3c",
"pkg": 3,
"price_eur": 18,
"currency": "EUR",
"price_arm": "a",
"provider": "Carovo GmbH",
"price_is_total": true,
"vat_note": "Gemäß § 19 UStG wird keine Umsatzsteuer berechnet.",
"delivery": "PDF per E-Mail, in der Regel innerhalb von 3 Werktagen nach Zahlung",
"capacity_note": "Wir prüfen von Hand: aktuell 8 Checks pro Woche, Bearbeitung in der Reihenfolge des Eingangs.",
"withdrawal_info_url": "https://checkdasinserat.de/widerruf",
"terms_url": "https://checkdasinserat.de/agb",
"imprint_url": "https://checkdasinserat.de/impressum",
"confirm_required": true,
"human_url": "https://checkdasinserat.de/check",
"next_step": "Wir haben eine Bestätigungsmail an die angegebene Adresse geschickt. Erst nach dem Klick des Nutzers auf den Bestätigungslink wird die Anfrage bearbeitet. Es entsteht keine Zahlungspflicht."
}Fehler — RFC 9457 problem+json
Jeder Fehler kommt als application/problem+json nach RFC 9457. type ist die URL einer menschenlesbaren Seite unter /problems/<slug>, die denselben Fehler erklärt.
{
"type": "https://checkdasinserat.de/problems/unsupported-portal",
"title": "Portal nicht unterstützt",
"status": 422,
"detail": "Diesen Link können wir nicht zuordnen. Wir prüfen Inserate von mobile.de, AutoScout24 und Kleinanzeigen — füg bitte den vollständigen Link aus der Adresszeile ein.",
"instance": "/api/v1/checks",
"human_url": "https://checkdasinserat.de/check"
}| Status | Typ | Titel |
|---|---|---|
| 422 | /problems/unsupported-portal | Portal nicht unterstützt |
| 422 | /problems/search-result-url | Ergebnisliste statt Inserat |
| 422 | /problems/invalid-email | Ungültige E-Mail-Adresse |
| 422 | /problems/too-many-listings | Zu viele Inserate |
| 429 | /problems/rate-limited | Zu viele Anfragen |
| 409 | /problems/capacity-reached | Kapazität erreicht |
| 503 | /problems/service-disabled | Agenten-API deaktiviert |
/api/v1/service
Rein lesend, ohne Auth: aktuelle Paketgrößen und Preise, unterstützte Portale, Kapazität, Lieferzeit und das Deep-Link-Muster von oben als Vorlage — alles aus derselben Quelle wie das Formular selbst, damit hier nichts veraltet. Praktisch als erster Aufruf, bevor du eine Anfrage baust.
Weitere Formate
- /openapi.json — die vollständige OpenAPI-3.1-Spezifikation von
/api/v1/*, zum Import in einen API-Client oder zur Anbindung als Tool/Action. - /mcp — zustandsloser MCP-Endpunkt (JSON-RPC 2.0) für Assistenten, die MCP statt REST sprechen. Die verfügbaren Tools stehen in der Antwort auf
initialize.