Zum Inhalt springen
Anmelden

Baue auf tarsiflow mit einer einfachen REST-API

Lies und aktualisiere Kunden, Leads, Projekte und Aufgaben und hol Rechnungen und Angebote in deine Berichte. Erstelle einen Token in deinem Workspace und sende in einer Minute deine erste Anfrage.

  • REST und JSON
  • Persönliche Tokens
  • Lese- oder Schreibzugriff

Erste Schritte

  1. 1. Token erstellen

    Öffne in der App dein Kontomenü und wähle API-Tokens. Wähle Nur lesen oder Lesen und schreiben.

  2. 2. API aufrufen

    Sende Anfragen an die Basis-URL unten, mit deinem Token im Authorization-Header.

  3. 3. Sicher aufbewahren

    Ein Token handelt in deinem Namen in einem Workspace. Widerrufe ihn jederzeit auf derselben Seite.

Basis-URL

https://tarsiflow.com/api/v1

Authentifizierung

Jede Anfrage braucht einen Bearer-Token. Tokens mit Lesezugriff dürfen alle GET-Endpunkte aufrufen. Tokens mit Schreibzugriff können zusätzlich Einträge anlegen und ändern.

curl https://tarsiflow.com/api/v1/me \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Accept: application/json"

Konventionen

  • Anfragen und Antworten sind JSON. Sende Content-Type: application/json, wenn du Daten überträgst.
  • Geldbeträge sind immer ganze Zahlen in Cent mit einem separaten dreistelligen Währungscode, 125000 mit USD sind also 1.250,00 Dollar.
  • Datumsangaben nutzen YYYY-MM-DD. Zeitstempel nutzen ISO 8601 in UTC.
  • Listen sind paginiert. Nutze page und per_page (bis 100). Jede Antwort enthält links und meta mit den Summen.
  • Aktualisierungen nutzen PATCH und ändern nur die Felder, die du sendest.

Fehler und Limits

StatusBedeutung
401Token fehlt, ist abgelaufen oder widerrufen.
403Der Token ist nur lesend, oder du gehörst nicht mehr zu seinem Workspace.
404Der Eintrag existiert in diesem Workspace nicht.
422Die Validierung ist fehlgeschlagen. Das errors-Objekt nennt jedes Feld und was zu korrigieren ist.
429Zu viele Anfragen. Das Limit liegt bei 120 Anfragen pro Minute und Token.
{
    "message": "The name field is required.",
    "errors": {
        "name": [
            "The name field is required."
        ]
    }
}

Konto

Wem der Token gehört, in welchem Workspace er arbeitet, die Teammitglieder und die Pipeline-Phasen.

  • GET /me Inhaber des Tokens, Workspace und Berechtigungen des Tokens.
  • GET /members Personen im Workspace, für Zuständigen- und Verantwortlichen-IDs.
  • GET /lead-stages Pipeline-Phasen, für lead_stage_id.

Kunden

Alle Kunden im Workspace mit ihrem Hauptkontakt.

  • GET /clients Kunden auflisten. Filter: search, status, tag.
  • POST /clients Einen Kunden anlegen.
  • GET /clients/{id} Einen Kunden abrufen.
  • PATCH /clients/{id} Einen Kunden aktualisieren. Sende nur die geänderten Felder.

Felder, die du senden kannst

name
string
Beim Anlegen erforderlich.
status
string
active, inactive, archived
email, phone, website, address
string
Optionale Kontaktdaten.
currency
string
Dreistelliger Code wie USD. Standard ist die Workspace-Währung.
tags
array
Liste kurzer Labels.

Beispiel

curl -X POST https://tarsiflow.com/api/v1/clients \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{"name":"Brightline Dental","email":"[email protected]","tags":["healthcare"]}'
{
    "data": {
        "id": 42,
        "name": "Brightline Dental",
        "status": "active",
        "email": "[email protected]",
        "currency": "USD",
        "tags": [
            "healthcare"
        ],
        "primary_contact": null
    }
}

Leads

Chancen in deiner Pipeline. Werte sind in Cent.

  • GET /leads Leads auflisten. Filter: stage_id, search.
  • POST /leads Einen Lead anlegen. Er landet in der ersten offenen Phase, außer du übergibst lead_stage_id.
  • GET /leads/{id} Einen Lead abrufen.
  • PATCH /leads/{id} Einen Lead aktualisieren, auch um ihn in eine andere Phase zu verschieben.

Felder, die du senden kannst

name
string
Beim Anlegen erforderlich. Das Projekt oder die Person, etwa Website-Relaunch.
company, email, phone, source, notes
string
Optionale Angaben.
value_cents
integer
Geschätzter Wert in Cent. 250000 bedeutet 2.500,00.
expected_close_date
date
YYYY-MM-DD
lead_stage_id, owner_id
integer
IDs aus /lead-stages und /members.

Projekte

Kundenprojekte. Neue Projekte erhalten automatisch eine erste Aufgabenliste.

  • GET /projects Projekte auflisten. Filter: client_id, status.
  • POST /projects Ein Projekt für einen Kunden anlegen.
  • GET /projects/{id} Ein Projekt mit seinen Aufgabenlisten abrufen.
  • PATCH /projects/{id} Ein Projekt aktualisieren.

Felder, die du senden kannst

client_id, name
erforderlich
Der zugehörige Kunde und der Name.
status
string
planning, active, on_hold, completed, cancelled
start_date, due_date
date
YYYY-MM-DD
budget_cents
integer
Budget in Cent.

Aufgaben

Aufgaben in Projekten oder eigenständig. Beim Zuweisen wird die Person benachrichtigt.

  • GET /tasks Aufgaben auflisten. Filter: project_id, assignee_id, status, due_before.
  • POST /tasks Eine Aufgabe anlegen.
  • GET /tasks/{id} Eine Aufgabe abrufen.
  • PATCH /tasks/{id} Eine Aufgabe aktualisieren. Wird status auf done gesetzt, wird der Abschlusszeitpunkt gespeichert.

Felder, die du senden kannst

title
string
Beim Anlegen erforderlich.
project_id, task_list_id
integer
Optional. Ohne Liste landet die Aufgabe in der ersten Liste des Projekts.
assignee_id
integer
Eine ID aus /members.
status
string
todo, in_progress, review, done
priority
string
low, medium, high
due_date
date
YYYY-MM-DD

Beispiel

curl -X PATCH https://tarsiflow.com/api/v1/tasks/318 \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{"status":"done"}'
{
    "data": {
        "id": 318,
        "title": "Homepage wireframes",
        "status": "done",
        "priority": "high",
        "completed_at": "2026-10-26T14:05:11+00:00"
    }
}

Rechnungen

Nur lesend. Der Endpunkt für eine einzelne Rechnung enthält Positionen und Zahlungen.

  • GET /invoices Rechnungen auflisten. Filter: status, client_id.
  • GET /invoices/{id} Eine Rechnung mit Positionen, Zahlungen und offenem Betrag abrufen.

Angebote

Nur lesend. Der Endpunkt für ein einzelnes Angebot enthält die Positionen.

  • GET /proposals Angebote auflisten. Filter: status, client_id.
  • GET /proposals/{id} Ein Angebot mit seinen Positionen abrufen.

Deine Privatsphäre, deine Wahl

Wir verwenden notwendige Cookies, um diese Website zu betreiben und dich angemeldet zu halten. Mit deiner Erlaubnis möchten wir auch optionale Cookies nutzen, um zu verstehen, wie die Website verwendet wird. Lies unsere Cookie-Richtlinie.