Erste Schritte
Diese Seite bringt Sie in unter fünf Minuten von Null zum ersten erfolgreichen API-Aufruf.
1. Basis-URL
Alle Anfragen gehen an die Woofed CRM Cloud (oder an Ihre selbst gehostete Instanz):
https://app.woofedcrm.com
Bei einer selbst gehosteten Installation ersetzen Sie diesen Host durch Ihre eigene Domain (z. B. https://crm.ihrunternehmen.com). Die Pfadstruktur (/api/v1/accounts/{account_id}/...) ist in beiden Fällen identisch.
2. Account-ID
Jeder Endpoint ist auf einen Account beschränkt, daher enthält die URL immer Ihre Account-ID:
/api/v1/accounts/{account_id}/<resource>
Sie finden Ihre account_id in der URL des Woofed-CRM-Dashboards, direkt nach /app/. In den meisten Installationen ist der erste Account 1.
3. Authentifizierung in einer Zeile
Jeder Request muss einen Bearer-Token im Authorization-Header tragen:
Authorization: Bearer IHR_TOKEN_HIER
Falls Sie noch keinen Token haben, folgen Sie zuerst dem kurzen Leitfaden Token abrufen. Die Sicherheitsdetails finden Sie unter Authentifizierung.
4. Ihr erster Request
Holen wir uns einen einzelnen Kontakt (vorausgesetzt, in Account 1 existiert ein Kontakt mit der ID 1):
curl -X GET "https://app.woofedcrm.com/api/v1/accounts/1/contacts/1" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer IHR_TOKEN_HIER"
Derselbe Aufruf in JavaScript:
const res = await fetch(
"https://app.woofedcrm.com/api/v1/accounts/1/contacts/1",
{
headers: {
"Content-Type": "application/json",
Authorization: "Bearer IHR_TOKEN_HIER",
},
}
);
const contact = await res.json();
console.log(contact);
Eine erfolgreiche Antwort ist reines JSON, das den Kontakt beschreibt:
{
"id": 1,
"full_name": "Tim Maia",
"phone": "+5541996910256",
"email": "tim@maia.com",
"custom_attributes": {
"city": "RJ"
},
"label_list": ["label1", "label2"],
"created_at": "2025-01-12T18:21:03Z",
"updated_at": "2025-01-12T18:21:03Z"
}
Fertig — Sie sprechen mit Woofed CRM.
5. Empfohlene Tools
Während der Entwicklung sparen folgende Tools viel Zeit:
- Postman — die offizielle Woofed-CRM-Postman-Collection bringt alle Endpoints vorkonfiguriert mit. Setzen Sie einfach die Collection-Variablen
endpoint,account_idundtoken. curl— perfekt für Skripte, Debugging und zum Einfügen in diese Doku.- HTTPie — freundlichere Syntax als curl:
http GET https://app.woofedcrm.com/... "Authorization: Bearer …". - Browser DevTools — der Network-Tab zeigt genau, was Ihr Frontend sendet, wenn Sie aus einer SPA integrieren.
6. Aufbau einer Antwort
Die meisten Antworten folgen derselben Grundstruktur:
{
"id": 42,
"name": "Lead site: Rubel",
"status": "open",
"stage_id": 1,
"contact_id": 1,
"custom_attributes": { "source": "Website" },
"created_at": "2025-01-15T10:30:00Z",
"updated_at": "2025-01-15T10:30:00Z"
}
Das Wichtigste:
id— jeder Datensatz hat eine numerische, accountbezogene ID. Über sie sprechen Sie den Datensatz in Folgeaufrufen an (GET /deals/42,PUT /deals/42, …).- Zeitstempel —
created_atundupdated_atsind ISO 8601 in UTC. custom_attributes— ein freies JSON-Objekt. Verwenden Sie es für Felder, die es nicht als native Spalten gibt (source,cpf,priority, …).- HTTP-Statuscode —
2xxfür Erfolg,4xxfür Client-Fehler,5xxfür Server-Fehler. Komplette Liste unter API-Struktur → Statuscodes.
Wie geht es weiter?
Sie haben jetzt alles, um jeden Aufruf in dieser Doku zum Laufen zu bringen. Weiter mit:
- Authentifizierung für Sicherheits-Best-Practices.
- API-Struktur für Statuscodes, Fehlerbehandlung und Suchsyntax.
- Endpoints für die vollständige Referenz.