API-Referenz

Vollständige Referenz aller REST-API-Endpunkte.

Übersicht

Die InboundFlow API verwendet REST-Konventionen. Alle Antworten sind JSON. Zeitstempel sind in ISO 8601 UTC.

📞Anrufe

Alle Anrufe auflisten

GET/v1/calls

Abfrageparameter

ParameterTypStandardBeschreibung
limitinteger50Ergebnisse pro Seite (Standard: 50, max: 100)
cursorstringnullPaginierungs-Cursor aus vorheriger Antwort
sincestringnullISO-Datum — nur Anrufe nach diesem Zeitpunkt
statusstringnullFilter: completed, failed, blocked, in-progress, forwarding
phonestringnullFilter nach Telefonnummer (exakte Übereinstimmung)
cURL
curl -X GET "https://api.inboundflow.app/v1/calls?limit=10&status=completed" \
  -H "Authorization: Bearer sk_live_your_key_here"

Antwort

JSON
{
  "data": [
    {
      "id": "uuid",
      "caller_phone": "+1234567890",
      "caller_name": "Dave",
      "status": "completed",
      "duration_seconds": 55,
      "summary": "Called about auto repair...",
      "transcript": "Full conversation transcript...",
      "recording_url": "https://...",
      "transfer_status": null,
      "started_at": "2026-02-24T20:59:00Z",
      "ended_at": "2026-02-24T21:00:00Z",
      "assistant_id": "uuid",
      "contact_id": "uuid",
      "created_at": "2026-02-24T20:59:00Z"
    }
  ],
  "has_more": false,
  "next_cursor": null,
  "meta": {
    "request_id": "req_abc123",
    "timestamp": "2026-02-24T21:05:00Z"
  }
}

Einzelnen Anruf abrufen

GET/v1/calls/:call_id
cURL
curl -X GET "https://api.inboundflow.app/v1/calls/07f51470-ef1d-421c-a847-36e98732bb9b" \
  -H "Authorization: Bearer sk_live_your_key_here"

Antwort: Einzelnes Anrufobjekt. Enthält das vollständige messages-Array (Gesprächshistorie), das im Listen-Endpoint fehlt.

👤Kontakte

Alle Kontakte auflisten

GET/v1/contacts

Abfrageparameter

ParameterTypStandardBeschreibung
limitinteger50Ergebnisse pro Seite (Standard: 50, max: 100)
cursorstringnullPaginierungs-Cursor
sincestringnullISO-Datumsfilter
phonestringnullFilter nach exakter Telefonnummer
cURL
curl -X GET "https://api.inboundflow.app/v1/contacts?limit=10" \
  -H "Authorization: Bearer sk_live_your_key_here"

Antwort

JSON
{
  "data": [
    {
      "id": "dbf31702-3468-4639-a5a4-e07f9bdae9a7",
      "phone": "+14155551234",
      "name": "Maria Garcia",
      "email": "maria.garcia@gmail.com",
      "company": null,
      "source": "inbound_call",
      "total_calls": 5,
      "last_call_at": "2026-02-23T15:00:00Z",
      "notes": "Regular customer, Toyota Camry 2019",
      "created_at": "2026-02-20T14:00:00Z",
      "updated_at": "2026-02-23T15:00:00Z"
    }
  ],
  "has_more": false,
  "next_cursor": null,
  "meta": {
    "request_id": "req_abc123def456",
    "timestamp": "2026-02-24T00:00:00Z"
  }
}

Einzelnen Kontakt abrufen

GET/v1/contacts/:contact_id

Antwort: Einzelnes Kontaktobjekt (gleiche Struktur wie in der Liste).

Kontakt erstellen

POST/v1/contacts
cURL
curl -X POST \
  "https://api.inboundflow.app/v1/contacts" \
  -H "Authorization: Bearer sk_live_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "phone": "+14155559999",
    "name": "Hans Müller",
    "email": "hans@beispiel.de",
    "company": "Example Co",
    "notes": "New contact"
  }'

🎯Leads

Alle Leads auflisten

GET/v1/leads

Abfrageparameter

ParameterTypStandardBeschreibung
limitinteger50Ergebnisse pro Seite (Standard: 50, max: 100)
cursorstringnullPaginierungs-Cursor
sincestringnullISO-Datumsfilter
statusstringnullFilter: new, contacted, qualified, converted, lost
urgencystringnullFilter: low, medium, high
cURL
curl -X GET "https://api.inboundflow.app/v1/leads?status=new" \
  -H "Authorization: Bearer sk_live_your_key_here"

Antwort

JSON
{
  "data": [
    {
      "id": "uuid",
      "caller_phone": "+1234567890",
      "caller_name": "Dave",
      "caller_email": "dave@example.com",
      "status": "new",
      "urgency": "medium",
      "interest": "auto body work",
      "qualification_reason": "pricing inquiry",
      "call_summary": "Called about getting a quote...",
      "call_log_id": "uuid",
      "contact_id": "uuid",
      "created_at": "2026-02-24T21:00:00Z",
      "updated_at": "2026-02-24T21:00:00Z"
    }
  ],
  "has_more": false,
  "next_cursor": null,
  "meta": {
    "request_id": "req_abc123",
    "timestamp": "2026-02-24T21:05:00Z"
  }
}

📅Termine

Alle Termine auflisten

GET/v1/appointments

Abfrageparameter

ParameterTypStandardBeschreibung
limitinteger50Ergebnisse pro Seite (Standard: 50, max: 100)
cursorstringnullPaginierungs-Cursor
sincestringnullISO-Datumsfilter
statusstringnullFilter: booked, confirmed, cancelled, completed, no_show
cURL
curl -X GET "https://api.inboundflow.app/v1/appointments?status=booked" \
  -H "Authorization: Bearer sk_live_your_key_here"

Antwort

JSON
{
  "data": [
    {
      "id": "uuid",
      "caller_phone": "+1234567890",
      "caller_name": "Sarah",
      "appointment_date": "2026-02-25",
      "appointment_time_start": "2026-02-25T11:00:00Z",
      "appointment_time_end": "2026-02-25T12:00:00Z",
      "service_type": "Auto Repair Appointment",
      "status": "booked",
      "calendar_event_link": "https://calendar.google.com/...",
      "call_log_id": "uuid",
      "contact_id": "uuid",
      "created_at": "2026-02-24T21:00:00Z",
      "updated_at": "2026-02-24T21:00:00Z"
    }
  ],
  "has_more": false,
  "next_cursor": null,
  "meta": {
    "request_id": "req_abc123",
    "timestamp": "2026-02-24T21:05:00Z"
  }
}

🏢Konto

Organisationsinformationen abrufen

GET/v1/me
cURL
curl -X GET "https://api.inboundflow.app/v1/me" \
  -H "Authorization: Bearer sk_live_your_key_here"

Antwort

JSON
{
  "data": {
    "organization_id": "becc3c5d-1755-420c-a3af-fe51ab2d04ca",
    "organization_name": "Dave Auto Shop",
    "plan": "Starter Plan",
    "scopes": ["calls:read", "contacts:read", "contacts:write", "appointments:read", "leads:read"]
  },
  "meta": {
    "request_id": "req_034e44e17b76",
    "timestamp": "2026-02-24T00:10:48.025Z"
  }
}