dealsky.ioDocs
Zur App
Einführung

Grundlagen

Anmeldung, Antwortformat, Limits und Fehler. Gilt für alle Endpunkte.

Anmeldung

API-Key im Header X-API-Key (oder Authorization: Bearer <key>). Keys entstehen in der App unter Einstellungen → Integrationen → API Keys. Live-Keys beginnen mit kv_live_, Test-Keys mit kv_test_. Den Key nie in der URL übergeben und nie im Browser einsetzen.

Jeder Key gehört zu einem Konto und handelt mit den Rechten der Person, die ihn angelegt hat. Was ein Key zusätzlich darf, legen seine Berechtigungen fest (siehe unten).

Test-Modus

Mit einem Test-Key liefern lesende Aufrufe echte Daten. Schreibende, löschende und nach außen wirkende Aufrufe werden vollständig geprüft, aber nur simuliert (meta.test_mode: true).

Antwortformat

Immer { ok, data, meta } bzw. bei Fehlern { ok: false, error: { code, message, details } }. meta.request_id bitte bei Support-Anfragen nennen.

Erfolg
{
  "ok": true,
  "data": [
    {
      "id": "5b0c1e7a-3f1d-4a52-9c1e-8a7d2b6f4e10",
      "first_name": "Anna"
    }
  ],
  "meta": {
    "request_id": "req_2b81d0aa",
    "next_cursor": "eyJvIjoyNX0"
  }
}
Fehler
{
  "ok": false,
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Die Anfrage enthält ungültige Felder. Details stehen in error.details.",
    "details": [
      {
        "field": "email",
        "message": "muss eine E-Mail-Adresse sein"
      }
    ]
  },
  "meta": {
    "request_id": "req_7f3a9c1e"
  }
}

Seitenweise Abruf

Listen liefern höchstens limit Einträge (Standard 25, max. 100). Gibt es mehr, steht in meta.next_cursor der Wert für ?cursor=.

Limits

120 Anfragen pro Minute und 3000 pro Stunde je Key, Body höchstens 1 MB. Bei Überschreitung 429 mit Header Retry-After.

Die API ist ab dem Growth-Tarif mit aktivem Abo enthalten.

Fehlercodes

Der HTTP-Status zeigt die Art des Fehlers, error.code den genauen Grund. error.details nennt bei Prüffehlern jedes betroffene Feld.

HTTPCodeBedeutung
400VALIDATION_ERRORDie Anfrage enthält ungültige Felder. Details stehen in error.details.
401AUTH_REQUIREDKein API-Key übergeben. Header X-API-Key oder Authorization: Bearer setzen.
401INVALID_API_KEYDer API-Key ist ungültig, abgelaufen oder deaktiviert.
403FORBIDDENFür diese Aktion fehlt die Berechtigung.
403SCOPE_MISSINGDem API-Key fehlt die nötige Berechtigung (Scope).
402PLAN_REQUIREDDie API ist in diesem Tarif nicht enthalten.
404NOT_FOUNDNicht gefunden.
405METHOD_NOT_ALLOWEDDiese HTTP-Methode ist für den Endpunkt nicht erlaubt.
409CONFLICTDer Datensatz existiert bereits oder steht im Konflikt mit einem anderen.
422BUSINESS_ERRORDie Aktion ist im aktuellen Zustand nicht möglich.
429RATE_LIMITEDZu viele Anfragen. Bitte kurz warten und erneut versuchen.
502PROVIDER_ERROREin angebundener Dienst hat einen Fehler gemeldet.
503PROVIDER_DISABLEDEin angebundener Dienst ist gerade nicht verfügbar.
504PROVIDER_TIMEOUTEin angebundener Dienst hat nicht rechtzeitig geantwortet.
500INTERNAL_ERROREin unerwarteter Fehler ist aufgetreten.
503MAINTENANCE_MODEWartungsarbeiten. Bitte später erneut versuchen.

Berechtigungen

Jeder API-Key hat eine Liste von Berechtigungen (Scopes). Ein Endpunkt nennt bei sich, welchen Scope er braucht und welches Recht die Person in der App haben muss, die den Key angelegt hat. Sensible Scopes werden nie automatisch vergeben.

ScopeErlaubt
read:leadsLeads, Listen und Lead-Scout-Suchen lesen
write:leadsLeads und Listen anlegen und ändern
delete:leadsLeads endgültig löschensensibel
read:exclusionsAusschlüsse lesen
write:exclusionsAusschlüsse anlegen und entfernen
read:campaignsKampagnen, Schritte, Statistiken und LinkedIn-Dauerläufe lesen
write:campaignsKampagnen anlegen, ändern und Leads zuordnen
run:campaignsKampagnen starten, stoppen und fortsetzen, Leads einschreiben (Außenwirkung)sensibel
read:crmCRM lesen: Kontakte, Firmen, Deals, Notizen, Aufgaben, Termine
write:crmCRM anlegen und ändern
delete:crmCRM-Einträge endgültig löschen, z. B. Notizen
read:inboxLinkedIn-Postfach lesen
write:inboxPostfach pflegen: Status, Schlagwörter, Termin markieren (ohne Senden)
send:messagesLinkedIn-Nachrichten senden (Außenwirkung)sensibel
read:linkedinVerbundene LinkedIn-Konten und Limits lesen
read:analyticsAuswertungen und Kennzahlen lesen
read:assetsLandingpages, Videos, Medien und Vorlagen lesen
write:assetsMedien hochladen, Landingpage-Vorlagen anlegen und ändern (ohne Credits)
generate:assetsVideos, Briefe und Landingpages erzeugen (verbraucht Credits)sensibel
read:webhooksWebhook-Abos lesen
write:webhooksWebhook-Abos anlegen und löschen
read:teamTeam-Mitglieder lesen
read:accountMandant, Tarif und Credits lesen