FirstSales API-Schnellstart
Erzeugen Sie einen API-Schlüssel und tätigen Sie Ihre ersten Aufrufe — erstellen Sie Kontakte, tragen Sie sie in Kampagnen ein und rufen Sie Antworten aus dem Posteingang über die REST-API ab.
- 1
Einen Developer API Key erzeugen
Gehen Sie in der App zu Settings → API und erstellen Sie einen Developer API Key. Legen Sie Scopes und Zugriffsstufe (read vs. read-write) auf das Minimum fest, das die Integration benötigt. Das Secret wird einmalig angezeigt — kopieren Sie es sofort in einen Secret-Manager; die App speichert nur eine geschwärzte Form.
Widerrufen und neu erzeugen Sie auf derselben Seite, falls ein Key jemals durchsickert.
- 2
Identität mit whoami prüfen
Die Basis-URL lautet
https://api.app.firstsales.io. Die Authentifizierung erfolgt über ein Bearer-Token. Beginnen Sie immer damit, zu bestätigen, dass der Key zur erwarteten Org und zum erwarteten Workspace auflöst —GET /api/v1/whoami:curl https://api.app.firstsales.io/api/v1/whoami \ -H "Authorization: Bearer $FIRSTSALES_API_KEY" - 3
Ihre Org- und Workspace-IDs finden
Jede Ressource ist einer Organisation und einem Workspace zugeordnet, sodass die meisten Pfade wie
/api/v1/organizations/{orgId}/workspaces/{workspaceId}/…aussehen. Listen Sie sie auf:# Organizations you can access curl https://api.app.firstsales.io/api/v1/organizations \ -H "Authorization: Bearer $FIRSTSALES_API_KEY" # Workspaces inside an org curl https://api.app.firstsales.io/api/v1/organizations/ORG_ID/workspaces \ -H "Authorization: Bearer $FIRSTSALES_API_KEY" - 4
Einen Kontakt (idempotent) erstellen
Senden Sie einen Kontakt per POST an einen Workspace. Übergeben Sie einen Idempotency-Key-Header, damit eine wiederholte Anfrage nie ein Duplikat erzeugt — sicher bei einem Replay nach einem Netzwerkfehler.
curl -X POST \ https://api.app.firstsales.io/api/v1/organizations/ORG_ID/workspaces/WS_ID/contacts \ -H "Authorization: Bearer $FIRSTSALES_API_KEY" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: jane-acme-2026-01" \ -d '{ "email": "jane@acme.com", "first_name": "Jane", "company_name": "Acme" }' - 5
Kampagnen-Analysen auslesen
Rufen Sie Funnel- und Engagement-Metriken für eine Kampagne ab, um Ergebnisse in Ihr eigenes Reporting zu synchronisieren — ohne das Dashboard zu scrapen:
curl https://api.app.firstsales.io/api/v1/organizations/ORG_ID/workspaces/WS_ID/campaigns/CAMPAIGN_ID/analytics \ -H "Authorization: Bearer $FIRSTSALES_API_KEY" - 6
Antworten aus dem Inbox auslesen
Listen Sie Inbox-Threads auf, um Sendungen, Öffnungen, Antworten und Bounces in Ihre Systeme zu übernehmen. Thread-Inhalte sind in der Listenansicht geschwärzt; rufen Sie einen einzelnen Thread für Details ab. So leiten Sie positive Antworten in ein CRM, solange native Connectors noch nicht verfügbar sind.
curl https://api.app.firstsales.io/api/v1/organizations/ORG_ID/workspaces/WS_ID/inbox/threads \ -H "Authorization: Bearer $FIRSTSALES_API_KEY" - 7
Innerhalb der öffentlichen Oberfläche bleiben
Die API stellt ausschließlich die öffentliche
/api/v1-Oberfläche bereit. Rufen Sie keine app-privaten Routen, Provider-Callbacks, Tracking-Pixel, Abmelde-Handler oder internen Cron-Routen auf — sie sind nicht Teil des Vertrags und werden brechen. Liefert ein Aufrufunsupported_operation, stoppen Sie und behandeln Sie dies als „nicht über die API verfügbar", nicht als etwas, das man umgehen sollte.Standard-Statuscodes gelten:
401falscher/widerrufener Key,422Validierung (Body nennt das Feld),429Rate-Limit erreicht (zurückhalten und erneut versuchen).
Profi-Tipps
Hart erarbeitete Abkürzungen, damit die Aufwärmung auf Kurs bleibt.
Erst whoami, dann schreiben
Bestätigen Sie, dass der Key zur gewünschten Org/zum gewünschten Workspace auflöst, bevor Sie einen verändernden Aufruf tätigen. Ein Key mit falschem Workspace-Scope ist die häufigste Ursache dafür, Daten am falschen Ort zu schreiben.
Bei Create-Aufrufen immer einen Idempotency-Key senden
Netzwerk-Retries passieren. Ein Idempotency-Key macht einen wiederholten POST zu einem No-op statt zu einem doppelten Kontakt oder einer doppelten Abbuchung.
Den Key einmal speichern, nie ausgeben
Das Secret wird nur einmalig angezeigt und geschwärzt gespeichert. Geben Sie es direkt in einen Secret-Manager ein; loggen, committen oder in einem Client-Bundle ausliefern Sie es nie.
unsupported_operation als harten Stopp behandeln
Gibt die API unsupported_operation zurück, ist das Gewünschte nicht im öffentlichen Vertrag enthalten. Greifen Sie nicht auf app-private Routen zurück, um es zu erzwingen — melden Sie stattdessen die Einschränkung.
Häufig gestellte Fragen
Wo bekomme ich einen API Key?
Settings → API. Erstellen Sie einen Developer API Key mit den benötigten Scopes und der benötigten Zugriffsstufe; er wird einmalig angezeigt, also kopieren Sie ihn sofort. Widerrufen und neu erzeugen Sie auf derselben Seite, falls er offengelegt wird.
Wie lauten Basis-URL und Authentifizierung?
Basis-URL https://api.app.firstsales.io; authentifizieren Sie sich mit Authorization: Bearer $FIRSTSALES_API_KEY und senden Sie JSON. Beginnen Sie mit GET /api/v1/whoami, um den Kontext zu bestätigen.
Warum sind die Pfade so lang?
Ressourcen sind einer Org und einem Workspace zugeordnet, sodass Pfade wie /api/v1/organizations/{orgId}/workspaces/{workspaceId}/… aussehen. Holen Sie die IDs über /api/v1/organizations und dessen /workspaces-Unterressource (oder aus whoami).
Wie vermeide ich doppelte Schreibvorgänge?
Senden Sie einen Idempotency-Key-Header bei Create-Anfragen. Eine wiederholte Anfrage mit demselben Key liefert das ursprüngliche Ergebnis zurück, statt einen zweiten Datensatz zu erzeugen — sicher bei einem Replay nach einem Timeout.
Kann ich Kampagnenmetriken und Antworten auslesen?
Ja — GET …/campaigns/{id}/analytics für Funnel/Engagement und GET …/inbox/threads für Konversationsaktivität. Thread-Inhalte sind in der Liste geschwärzt; rufen Sie einen einzelnen Thread für vollständige Details ab.
Gibt es stattdessen eine Zapier- oder CRM-Integration?
Kein Zapier-Connector, und native CRM-Connectors (Salesforce, HubSpot, Pipedrive) sind noch nicht verfügbar. Bis diese kommen, ist die REST-API — oder die CLI — der unterstützte Weg zur Integration und Synchronisierung.
Was bedeutet unsupported_operation?
Die angeforderte Aktion ist nicht Teil des öffentlichen /api/v1-Vertrags. Stoppen Sie und melden Sie dies — rufen Sie keine app-privaten Routen, Callbacks, Pixel oder internen Endpunkte auf, um es zu umgehen; diese werden nicht unterstützt und brechen.
Bereit, das in die Praxis umzusetzen?
Starten Sie Ihre FirstSales-Testphase und richten Sie in wenigen Minuten ein aufgewärmtes, authentifiziertes Postfach ein.
Für 1 $ starten