Public API v1
Die Werkstatt-Universum API bietet programmatischen Zugriff auf Anbieter, Kategorien und Bewertungen. Ideal für Integrationen, Vergleichsportale und datengetriebene Analysen.
API-Zugang ist für Enterprise-Kunden verfügbar.
Für den öffentlichen Zugang gelten Rate-Limits von 100 Anfragen pro Stunde pro IP-Adresse. Enterprise-Kunden erhalten höhere Limits und zusätzliche Endpunkte. Mehr erfahren
Base URL
/api/v1
Rate Limit
100/Stunde
Format
JSON
Alle Antworten enthalten Rate-Limit-Header:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 97
X-RateLimit-Reset: 1711900800
X-API-Version: v1
X-API-Docs: /api-docs
Bei Überschreitung des Limits wird HTTP 429 (Too Many Requests) zurückgegeben.
Endpunkte
/api/v1/vendorsListet aktive Anbieter auf. Unterstützt Filterung nach Kategorie und Volltextsuche.
Parameter
| Name | Typ | Pflicht | Beschreibung |
|---|---|---|---|
| category | string | Nein | Kategorie-Slug zum Filtern (z.B. "dms", "diagnose") |
| q | string | Nein | Suchbegriff für Name oder Beschreibung |
| limit | integer | Nein | Anzahl Ergebnisse (1-100, Standard: 20) |
| offset | integer | Nein | Offset für Paginierung (Standard: 0) |
Beispiel-Anfrage
GET /api/v1/vendors?category=dms&limit=2Beispiel-Antwort
{
"data": [
{
"id": "a1b2c3d4-...",
"slug": "werbas",
"name": "WERBAS",
"description": "DMS-System für Kfz-Werkstätten...",
"category": "dms",
"city": "Holzgerlingen",
"countryCode": "DE",
"avgRating": 4.2,
"reviewCount": 15
}
],
"total": 42,
"limit": 2,
"offset": 0
}/api/v1/categoriesGibt die vollständige Kategorie-Hierarchie zurück (Top-Level mit verschachtelten Unterkategorien).
Beispiel-Anfrage
GET /api/v1/categoriesBeispiel-Antwort
{
"data": [
{
"id": "...",
"slug": "dms",
"name": "Dealer Management Systeme",
"description": "Software zur Verwaltung...",
"iconName": "monitor",
"sortOrder": 1,
"vendorCount": 12,
"children": [
{
"id": "...",
"slug": "dms-cloud",
"name": "Cloud-DMS",
"vendorCount": 5,
"children": []
}
]
}
]
}/api/v1/reviews/{vendorSlug}Gibt freigegebene Bewertungen für einen bestimmten Anbieter zurück (paginiert).
Parameter
| Name | Typ | Pflicht | Beschreibung |
|---|---|---|---|
| vendorSlug | string | Ja | Slug des Anbieters (URL-Parameter) |
| limit | integer | Nein | Anzahl Ergebnisse (1-50, Standard: 20) |
| offset | integer | Nein | Offset für Paginierung (Standard: 0) |
Beispiel-Anfrage
GET /api/v1/reviews/werbas?limit=1Beispiel-Antwort
{
"vendor": {
"slug": "werbas",
"name": "WERBAS"
},
"data": [
{
"id": "...",
"authorName": "Max M.",
"authorCompany": "Autohaus Müller",
"authorVerified": true,
"ratingOverall": 4,
"ratingQuality": 5,
"ratingService": 4,
"ratingPrice": 3,
"ratingRecommend": true,
"title": "Zuverlässiges DMS",
"content": "Wir nutzen WERBAS seit...",
"pros": ["Guter Support", "Stabil"],
"cons": ["Könnte moderner sein"],
"helpfulCount": 7,
"vendorResponse": null,
"vendorRespondedAt": null,
"createdAt": "2026-01-15T10:30:00Z"
}
],
"total": 15,
"limit": 1,
"offset": 0
}Fehler werden als JSON mit einem error-Feld zurückgegeben:
// 404 Not Found
{ "error": "Vendor not found" }
// 429 Too Many Requests
{ "error": "Rate limit exceeded. Max 100 requests per hour." }
// 500 Internal Server Error
{ "error": "Internal server error" }