Eine umfassende REST API zur Verwaltung von Rechnungen, Angeboten, Gutschriften, Positionen, Transaktionen, Produkten, Steuersätzen und wiederkehrender Abrechnung sowie von Ausgaben und Belegen. Mit PDF-, ZUGFeRD- und XRechnung-Export sowie Stripe-Zahlungsabgleich.
https://creativeskyline.de/api/flowaccounting/invoices
https://creativeskyline.de/api/flowaccounting/transactions
https://creativeskyline.de/api/flowaccounting/products
https://creativeskyline.de/api/flowaccounting/tax-rates
https://creativeskyline.de/api/flowaccounting/recurring-invoices
https://creativeskyline.de/api/flowaccounting/billable-items
https://creativeskyline.de/api/flowaccounting/quotes
https://creativeskyline.de/api/flowaccounting/credit-notes
https://creativeskyline.de/api/flowaccounting/expenses
https://creativeskyline.de/api/flowaccounting/suppliers
https://creativeskyline.de/api/flowaccounting/expense-categories
https://creativeskyline.de/api/flowaccounting/reports
Bevor Sie die API nutzen können, benötigen Sie Ihre persönlichen Zugangsdaten: Melden Sie sich an, navigieren Sie zu Profil → API-Zugang und kopieren Sie Ihren persönlichen API-Key (pk_...).
Alle API-Anfragen benötigen diesen HTTP-Header:
Authorization: Bearer pk_dein_api_key
Accept: application/json
/api/flowaccounting/invoices
Ruft eine paginierte Liste aller Rechnungen des Teams ab (sortiert nach Rechnungsdatum, absteigend).
include
string
Mit items werden die Rechnungspositionen einschließlich name und description eingebettet
status
string
Filter: draft, sent, partially_paid, paid, overdue, past_due, cancelled
client_uuid
string
Filter nach Kunden-UUID (cmm_clients). Breaking Change: die früheren Filter client_id und contact_id werden mit 422 abgelehnt, statt stillschweigend ignoriert zu werden
search
string
Suchbegriff (Rechnungsnummer, Empfängername, Firma)
from
string
Rechnungsdatum ab (YYYY-MM-DD)
to
string
Rechnungsdatum bis (YYYY-MM-DD)
per_page
integer
Anzahl pro Seite (1-200, Standard: 15)
/api/flowaccounting/invoices
Erstellt eine neue Rechnung. Die Rechnungsnummer wird automatisch aus dem Nummernkreis des Teams vergeben; für den Import von Altrechnungen kann sie über invoice_number vorgegeben werden. Eine Rechnung mit vorgegebener Nummer erhält ohne payment_method die Zahlungsart bank_transfer; die Standard-Zahlungsart des Kunden wird dann nicht übernommen. Die vollständige Reihenfolge einer Übernahme steht im Abschnitt „Belege aus einem Fremdsystem übernehmen“. Kollidiert der Nummernkreis mit vorhandenen Belegen, antwortet der Endpunkt mit 409 und error_code: document_number_conflict. Positionen können entweder direkt beim Erstellen über items mitgegeben oder nachträglich über den Positionen-Endpoint hinzugefügt werden, beide Wege sind gültig. Ohne send entsteht die Rechnung im Status draft. Mit send wird sie unmittelbar nach dem Anlegen per E-Mail versendet und wechselt dabei in den Status sent. Die Antwort führt in diesem Fall zusätzlich das Feld sent, bei einem gescheiterten Versand ergänzt um send_error_code und send_message. Die Rechnung bleibt auch dann mit 201 angelegt. Wird billing_operation_key mitgegeben und existiert die Rechnung dazu bereits, liefert die API den vorhandenen Stand zurück und wendet weder items noch send ein zweites Mal an, so dass ein wiederholter Aufruf keinen Doppelversand auslöst. Breaking Change: Die früheren numerischen Felder client_id, contact_id und items.*.product_id werden nicht mehr akzeptiert (Validierungsfehler); Kunde, Kontakt und Produkt werden ausschließlich über client_uuid, contact_uuid und items.*.product_uuid angegeben.
recipient_name
string
*
Name des Rechnungsempfängers
invoice_date
string
*
Rechnungsdatum (YYYY-MM-DD)
due_date
string
Fälligkeitsdatum (>= invoice_date). Wenn leer: invoice_date + Zahlungsziel des Teams (Standard 14 Tage)
currency_code
string
*
ISO 4217 Währungscode (3 Zeichen, z.B. EUR)
client_uuid
string
Optional: Kunden-UUID (cmm_clients, teamgebunden)
contact_uuid
string
Optional: Kontakt-UUID (teamgebunden)
invoice_number
string
Optional: eigene Rechnungsnummer, nur für den Import von Altrechnungen gedacht. Im Normalfall weglassen, dann vergibt der Nummernkreis die Nummer. KI-Assistenten und Agenten setzen das Feld nur, wenn der Nutzer ausdrücklich auf einer eigenen Nummer besteht. Höchstens 40 Zeichen aus den Buchstaben A bis Z, Ziffern, Leerzeichen, Punkt, Unterstrich und Bindestrich, am Anfang und Ende ein Buchstabe oder eine Ziffer. Muss im Team eindeutig sein, auch gegenüber gelöschten Entwürfen und stornierten Rechnungen. Liegt die Nummer im laufenden Nummernkreis, muss sie unter dem nächsten Zählerstand liegen; dafür vorher in den FlowAccounting-Einstellungen die nächste Rechnungsnummer über die höchste Importnummer setzen. Der Zähler bleibt unverändert. Nach dem Anlegen lässt sich die Nummer nicht mehr ändern
notes
string
Sichtbare Notiz auf der Rechnung
payment_method
string
Zahlungsart: bank_transfer | sepa | stripe | paypal | cash | other. Ohne Angabe gilt die Standard-Zahlungsart des Kunden aus FlowCRM (nicht gesetzt = Banküberweisung); Kreditkarte oder SEPA werden also nur übernommen, wenn sie dort als Standard hinterlegt oder hier explizit angegeben sind. Ausnahme: Mit vorgegebener invoice_number gilt ohne Angabe immer bank_transfer, damit eine übernommene Altrechnung nicht auf ein hinterlegtes Zahlungsmittel des Kunden läuft; eine ausdrücklich angegebene Zahlungsart gilt auch dann. stripe, sepa und paypal setzen eine gespeicherte Stripe-Zahlungsmethode des Kunden vom passenden Typ voraus (sonst 422).
stripe_pm_id
string
Optional: konkrete Stripe-Zahlungsmethode (pm_...) des Kunden. Ohne Angabe wird sie bei stripe, sepa und paypal aus der Standard-Zahlungsmethode des Kunden ergänzt.
tax_treatment
string
Steuerbehandlung dieser Rechnung: standard | reverse_charge. Ohne Angabe gilt bei manuellen Rechnungen die Steuerbehandlung des Kunden aus FlowCRM. Bei reverse_charge weist die Rechnung keine Umsatzsteuer aus: Positionen mit tax_rate über 0 oder mit unit_price_gross werden mit 422 abgelehnt. Nur für source manual
document_language
string
Belegsprache der Rechnung: de | en | pt. Ohne Angabe gilt bei manuellen Rechnungen die Rechnungssprache des Kunden aus FlowCRM, sonst de
send
boolean
Rechnung sofort nach dem Anlegen per E-Mail versenden. Ohne dieses Flag bleibt es beim Entwurf
items
array
Rechnungspositionen direkt mitgeben, 1 bis 200 Stück. Je Position sind <code>quantity</code> und <code>unit_price</code> verpflichtend, optional sind <code>name</code>, <code>description</code>, <code>tax_rate</code>, <code>unit</code>, <code>position</code>, <code>product_uuid</code>, <code>discount_percent</code> und <code>type</code>. Ohne <code>position</code> werden die Positionen fortlaufend nummeriert
/api/flowaccounting/invoices/{uuid}
Rechnungs-Details abrufen, inklusive Positionen, Transaktionen sowie total_paid, remaining_amount und allowed_transitions. sent_date nennt den Tag des Versands und ist im Entwurf null. original_invoice_number ist nur gesetzt, wenn die Rechnung über den Status storniert wurde, und nennt die Nummer, unter der sie ausgestellt war. Unter credit_notes stehen die Gutschriften, die zu dieser Rechnung angelegt wurden, aufsteigend nach Gutschriftsdatum und jeweils mit uuid, credit_note_number, status, credit_note_date, total und currency_code; die vollständige Gutschrift liefert der Gutschriften-Endpoint. credit_notes gibt es nur in dieser Detailantwort, nicht in der Liste.
/api/flowaccounting/invoices/{uuid}
Rechnung aktualisieren. Nur möglich bei Status draft oder sent und Quelle manual (sonst 422). Akzeptiert dieselben Felder wie beim Erstellen. Breaking Change: client_id und contact_id werden nicht mehr akzeptiert; ausschließlich client_uuid und contact_uuid.
recipient_name
string
Name des Rechnungsempfängers
due_date
string
Fälligkeitsdatum
notes
string
Sichtbare Notiz auf der Rechnung
document_language
string
Belegsprache der Rechnung: de | en | pt
/api/flowaccounting/invoices/{uuid}
Rechnung löschen. Nur möglich im Status draft (sonst 422).
/api/flowaccounting/invoices/{uuid}/status
Direkter Statuswechsel. Über diesen Endpoint sind nur die Übergänge nach sent (versenden) und cancelled (stornieren) möglich. Bei unzulässigem Übergang: 422 mit Feld allowed_transitions. Beim Wechsel nach sent gilt der heutige Tag als Versanddatum; eine E-Mail wird dabei nicht verschickt. Für Altrechnungen aus einem Fremdsystem kann das tatsächliche Versanddatum über sent_date mitgegeben werden. Eine Rechnung mit einem Versanddatum vor dem Tag ihrer Erfassung gilt als übernommener Altbeleg: Sie wird nicht automatisch gemahnt und nicht automatisch abgebucht. Von Hand geht beides weiter.
status
string
*
Zielstatus: sent oder cancelled
sent_date
string
Optional: tatsächliches Versanddatum (YYYY-MM-DD), nur für die Übernahme von Altrechnungen aus einem Fremdsystem gedacht. Im Normalfall weglassen, dann gilt der heutige Tag. Nur zusammen mit status sent, nur beim Wechsel aus dem Entwurf und nur für manuelle Rechnungen (source manual), sonst 422. Frühestens das Rechnungsdatum, spätestens heute. Liegt das Datum vor dem Tag, an dem die Rechnung hier erfasst wurde, gilt sie als übernommener Altbeleg und wird nicht automatisch gemahnt oder abgebucht
/api/flowaccounting/invoices/{uuid}/send
Versendet die Rechnung per E-Mail an den hinterlegten Empfänger. Beim Erstversand wechselt eine Rechnung im Status draft automatisch nach sent. Eine bereits versendete Rechnung kann erneut verschickt werden, der Status bleibt dabei unverändert. Der Endpoint ist auf 10 Anfragen pro Minute je API-Key begrenzt, darüber hinausgehende Anfragen werden mit 429 beantwortet. Nicht versandfähig sind stornierte Rechnungen, Rechnungen ohne hinterlegte Empfänger-E-Mail sowie E-Rechnungsformate mit offenen Validierungsfehlern. Versendbar sind außerdem nur Rechnungen aus den Quellen manual, hosting_checkout und hosting_renewal, weil automatisch abgerechnete Quellen ihre Rechnungsmail bereits selbst verschicken. In all diesen Fällen antwortet die API mit 422 und dem Feld error_code, das die Werte not_sendable, no_recipient_email oder einvoice_invalid annehmen kann. Eine unbekannte UUID ergibt 404.
/api/flowaccounting/invoices/{uuid}/pdf
PDF
Lädt die Rechnung als Standard-PDF herunter (Team-Einstellung einvoice_format=pdf). Antwort ist ein Datei-Download, kein JSON.
/api/flowaccounting/invoices/{uuid}/pdf
ZUGFeRD
Lädt die Rechnung als ZUGFeRD 2.x herunter (PDF mit eingebettetem XML nach EN 16931). Team-Einstellung einvoice_format=zugferd erforderlich.
/api/flowaccounting/invoices/{uuid}/pdf
XRechnung (XML)
Lädt die Rechnung als XRechnung (reines XML nach CIUS-DE) herunter. Team-Einstellung einvoice_format=xrechnung erforderlich. Pflichtformat für Rechnungen an Bundesbehörden.
/api/flowaccounting/invoices/{uuid}/duplicate
Dupliziert die Rechnung inklusive Positionen als neuen draft. Antwort: 201 mit der neuen Rechnung.
/api/flowaccounting/invoices/{uuid}/correct
Storniert die versendete Rechnung und erstellt den inhaltsgleichen Korrekturentwurf. Die Korrektur trägt die Nummer des Originals mit angehängter Korrekturziffer, das Original wird auf cancelled gesetzt und auf die Korrektur verwiesen. Möglich bei sent, overdue, past_due und partially_paid und ausschließlich bei manuell geführten Rechnungen; sonst 422. Antwort: 201 mit der Korrekturrechnung.
/api/flowaccounting/invoices/{uuid}/dunning
Beauftragt eine Zahlungserinnerung oder Mahnung. level muss genau die nächste fällige Stufe sein: eine übersprungene oder wiederholte Stufe wird mit 422 und dunning_level_not_due abgelehnt. Welche Stufe fällig ist, richtet sich nach den Mahnfristen der Teameinstellungen und den bereits versendeten Stufen, also nach denselben Regeln wie der automatische Mahnlauf. Ohne recipient_emails gelten die Empfänger des Kunden.
level
string
*
Mahnstufe: reminder, dunning_1, dunning_2 oder dunning_3
recipient_emails
array
Abweichende Empfängeradressen, höchstens 50
/api/flowaccounting/invoices/{uuid}/mark-paid
Markiert die Rechnung über eine Stripe-PaymentIntent-ID als vollständig bezahlt. Idempotent: Eine erneute Anfrage mit derselben PaymentIntent-ID gibt den aktuellen Stand zurück (200). Zulässige Ausgangsstatus: sent, requires_action, past_due.
stripe_payment_intent_id
string
*
Stripe-PaymentIntent-ID (pi_3Q...)
date_paid
string
Zahlungsdatum (YYYY-MM-DD)
/api/flowaccounting/invoices/{uuid}/record-payment-intent
Speichert eine Stripe-PaymentIntent-ID an der Rechnung, ohne den Zahlstatus auf paid zu setzen. Für 3DS-ausstehende oder überfällige Zahlungen.
stripe_payment_intent_id
string
*
Stripe-PaymentIntent-ID
status
string
Optional: past_due | requires_action
/api/flowaccounting/invoices/{uuid}/charge
Löst die Abbuchung der Rechnung über die hinterlegte Stripe-Zahlungsart aus (Karte oder SEPA-Lastschrift). Voraussetzung: Die Rechnung hat einen Kunden und eine Stripe-gestützte Zahlungsart, sonst antwortet der Endpoint mit 422 und einem error_code (no_client, wrong_payment_method). Eine abgelehnte Zahlung ist kein Anfragefehler: Die Antwort ist 200 mit charged: false. Ein wiederholter Aufruf bucht nicht doppelt ab. Ist Stripe vorübergehend nicht erreichbar, antwortet der Endpoint mit 503. Der Aufruf ist pro API-Key begrenzt.
/api/flowaccounting/invoices/{uuid}/payment-status
Schlanke Statusabfrage für das Polling nach einer Abbuchung, ohne Positionen und Transaktionen. Liefert uuid, status, payment_intent_status, last_charge_error und stripe_charge_id. SEPA-Lastschriften werden erst nach Tagen endgültig bestätigt, der Status ändert sich dann ohne weiteren Aufruf.
/api/flowaccounting/invoices/{uuid}/items
Alle Positionen einer Rechnung auflisten.
/api/flowaccounting/invoices/{uuid}/items
Fügt der Rechnung eine Position hinzu. Breaking Change: Das frühere numerische Feld product_id wird nicht mehr akzeptiert; das Produkt wird ausschließlich über product_uuid angegeben.
quantity
number
*
Menge (min 0.01)
unit_price
number
*
Einzelpreis (negativ erlaubt für Gutschriften)
name
string
Positionsbezeichnung (max 255)
description
string
Beschreibung (max 1000)
tax_rate
number
Steuersatz in Prozent (0-100). Ohne Angabe 0 %
unit
string
Einheit (z.B. Std.)
product_uuid
string
Produkt-UUID (fac_products, teamgebunden)
/api/flowaccounting/invoices/{uuid}/items/{itemUuid}
Position bearbeiten. Die Position wird über ihre UUID adressiert; numerische IDs werden nicht mehr akzeptiert (HTTP 404). Nur bei draft.
quantity
number
Menge
unit_price
number
Einzelpreis
name
string
Positionsbezeichnung
/api/flowaccounting/invoices/{uuid}/items/{itemUuid}
Position löschen. Die Position wird über ihre UUID adressiert. Nur bei draft.
Zahlungen und Gutschriften werden als Transaktionen einer Rechnung erfasst. Der Zahlstatus der Rechnung (partially_paid, paid) wird automatisch neu berechnet.
/api/flowaccounting/invoices/{uuid}/transactions
Alle Transaktionen einer Rechnung auflisten (sortiert nach Datum, absteigend).
/api/flowaccounting/invoices/{uuid}/transactions
Erfasst eine Transaktion. Nur zulässig, wenn die Rechnung im Status sent, partially_paid oder overdue ist. Die Transaktion wird in der Währung der Rechnung gebucht. Gleicht sie die Rechnung aus, übernimmt die Rechnung das transaction_date dieser Zahlung als paid_date, auch bei nachträglich erfassten Zahlungen.
type
string
*
Transaktionstyp: payment | refund | credit
amount
number
*
Betrag (min 0.01)
transaction_date
string
*
Transaktionsdatum (YYYY-MM-DD)
payment_method
string
*
Zahlungsmethode: bank_transfer | sepa | stripe | paypal | cash | other
reference
string
Referenz (max 255)
notes
string
Notiz (max 1000)
/api/flowaccounting/invoices/{uuid}/transactions/{transactionUuid}
Transaktion löschen. Die Transaktion wird über ihre UUID adressiert; numerische IDs werden nicht mehr akzeptiert (HTTP 404). Nicht möglich bei Rechnungen im Status draft oder cancelled.
/api/flowaccounting/transactions
Team-weite Transaktions-Übersicht über alle Rechnungen (paginiert, 25 pro Seite).
from
string
Transaktionsdatum ab (YYYY-MM-DD)
to
string
Transaktionsdatum bis (YYYY-MM-DD)
search
string
Suchbegriff (Notiz, Referenz, Rechnungsnummer)
/api/flowaccounting/products
Produkte auflisten (paginiert, sortiert nach Nutzungshäufigkeit).
type
string
Filter nach Quelle (z.B. manual)
search
string
Suchbegriff (Titel/Beschreibung)
per_page
integer
Anzahl pro Seite (1-200, Standard: 50)
/api/flowaccounting/products/{uuid}
Ruft ein einzelnes Produkt Ihres Teams über die uuid ab. Unbekannte oder teamfremde Einträge führen zu 404.
/api/flowaccounting/products
Neues Produkt anlegen.
title
string
*
Produktname (max 255)
unit_price
number
*
Netto-Einzelpreis (min 0). Pflicht, wenn <code>unit_price_gross</code> fehlt; nicht zusammen mit <code>unit_price_gross</code>
unit_price_gross
number
Brutto-Einzelpreis inkl. MwSt. (min 0), alternativ zu <code>unit_price</code>. Wird exakt gespeichert, der Nettopreis wird daraus abgeleitet
tax_rate
number
*
Steuersatz (0-100)
description
string
Beschreibung
unit
string
Einheit (max 50)
is_active
boolean
Aktiv (Standard: true)
/api/flowaccounting/products/{uuid}
Produkt aktualisieren.
title
string
Produktname
unit_price
number
Netto-Einzelpreis, macht das Produkt zu einem Netto-Produkt
unit_price_gross
number
Brutto-Einzelpreis inkl. MwSt., wird exakt gespeichert; nicht zusammen mit <code>unit_price</code>
tax_rate
number
Steuersatz
is_active
boolean
Aktiv
/api/flowaccounting/products/{uuid}
Produkt löschen.
/api/flowaccounting/tax-rates
Alle Steuersätze des Teams abrufen (unpaginiert, sortiert nach sort_order).
/api/flowaccounting/tax-rates/{uuid}
Ruft einen einzelnen Steuersatz Ihres Teams über die uuid ab. Unbekannte oder teamfremde Einträge führen zu 404.
/api/flowaccounting/tax-rates
Neuen Steuersatz anlegen.
name
string
*
Bezeichnung (max 255)
rate
number
*
Steuersatz in Prozent (0-100)
description
string
Beschreibung
is_default
boolean
Als Standard setzen
is_active
boolean
Aktiv
sort_order
integer
Sortierreihenfolge (>= 0)
/api/flowaccounting/tax-rates/{uuid}
Steuersatz aktualisieren.
name
string
Bezeichnung
rate
number
Steuersatz
is_active
boolean
Aktiv
/api/flowaccounting/tax-rates/{uuid}
Steuersatz löschen. Nicht möglich, wenn er in Rechnungspositionen verwendet wird (422).
/api/flowaccounting/tax-rates/{uuid}/default
Setzt diesen Steuersatz als Team-Standard (alle anderen verlieren das Standard-Flag).
/api/flowaccounting/recurring-invoices
Auflisten (paginiert, 25 pro Seite).
status
string
Filter: active, paused
client_uuid
string
Filter nach Kunden-UUID. Breaking Change: der frühere Filter client_id wird mit 422 abgelehnt, statt stillschweigend ignoriert zu werden
/api/flowaccounting/recurring-invoices/{uuid}
Ruft eine einzelne wiederkehrende Rechnung Ihres Teams über die uuid ab. Unbekannte oder teamfremde Einträge führen zu 404.
/api/flowaccounting/recurring-invoices
Neue wiederkehrende Rechnung anlegen. Breaking Change: Das frühere numerische Feld client_id wird nicht mehr akzeptiert; der Kunde wird ausschließlich über client_uuid angegeben.
client_uuid
string
*
Kunden-UUID (cmm_clients, teamgebunden)
interval_value
integer
*
Intervallwert (>= 1)
interval_unit
string
*
Intervalleinheit: day | week | month | year
start_date
string
*
Startdatum (YYYY-MM-DD)
template_items
array
*
Positionen der Vorlage (min 1)
auto_send
boolean
Automatisch versenden
end_date
string
Enddatum (>= start_date)
status
string
Status: active | paused
/api/flowaccounting/recurring-invoices/{uuid}
Wiederkehrende Rechnung aktualisieren.
interval_value
integer
Intervallwert
interval_unit
string
Intervalleinheit
auto_send
boolean
Automatisch versenden
/api/flowaccounting/recurring-invoices/{uuid}
Wiederkehrende Rechnung löschen.
/api/flowaccounting/recurring-invoices/{uuid}/pause
Pausiert die Vorlage (Status paused) - es werden keine neuen Rechnungen erzeugt.
/api/flowaccounting/recurring-invoices/{uuid}/activate
Aktiviert die Vorlage wieder (Status active) und legt dabei fest, was der automatische Lauf tun darf. auto_send, auto_charge und recipient_emails sind die eigentliche Freigabe: ohne sie entstehen nur Entwürfe. auto_send ist standardmäßig aktiv, auto_charge standardmäßig aus und setzt eine Stripe- oder SEPA-Zahlungsart auf der Serie voraus (sonst 422). Ohne recipient_emails gelten die Empfänger des Kunden; ist dort keine Adresse hinterlegt und soll versendet werden, antwortet die API mit 422.
auto_send
boolean
Erzeugte Rechnungen automatisch versenden (Standard: true)
auto_charge
boolean
Erzeugte Rechnungen automatisch einziehen (Standard: false, benötigt Zahlungsart stripe oder sepa)
recipient_emails
array
Empfängeradressen des automatischen Versands, höchstens 50
/api/flowaccounting/recurring-invoices/{uuid}/generate
Erzeugt die fällige Rechnung der Serie sofort, ohne auf den nächtlichen Lauf zu warten. Ist derzeit keine Rechnung fällig oder die Freigabe der Serie nicht mehr gültig, antwortet die API mit 422 und nothing_to_generate.
/api/flowaccounting/billable-items
Auflisten (paginiert, 25 pro Seite).
open
boolean
true = nur offene, false = nur abgerechnete
client_uuid
string
Filter nach Kunden-UUID. Breaking Change: der frühere Filter client_id wird mit 422 abgelehnt, statt stillschweigend ignoriert zu werden
/api/flowaccounting/billable-items/{uuid}
Ruft eine einzelne abrechenbare Position Ihres Teams über die uuid ab. Unbekannte oder teamfremde Einträge führen zu 404.
/api/flowaccounting/billable-items
Neue abrechenbare Position anlegen. Breaking Change: Das frühere numerische Feld client_id wird nicht mehr akzeptiert; der Kunde wird ausschließlich über client_uuid angegeben.
client_uuid
string
*
Kunden-UUID (cmm_clients, teamgebunden)
description
string
*
Beschreibung (max 255)
unit_price
number
*
Einzelpreis
quantity
number
Menge (min 0.01)
unit
string
Einheit (max 50)
tax_rate
number
Steuersatz
due_date
string
Fälligkeitsdatum
auto_bill
boolean
Automatisch abrechnen
/api/flowaccounting/billable-items/{uuid}
Bearbeiten. Nur möglich, solange die Position nicht abgerechnet ist (422).
description
string
Beschreibung
unit_price
number
Einzelpreis
quantity
number
Menge
/api/flowaccounting/billable-items/{uuid}
Löschen. Nur möglich, solange nicht abgerechnet (422).
/api/flowaccounting/billable-items/consolidate
Fasst mehrere offene Positionen zu Rechnungen zusammen - pro Kunde wird eine Entwurfs-Rechnung erzeugt. Antwort: 201 mit den erstellten Rechnungen.
uuids
array
*
UUIDs der zu konsolidierenden Positionen (min 1, eindeutig)
/api/flowaccounting/billable-items/{uuid}/generate
Rechnet genau diese Position sofort ab und liefert den Rechnungsentwurf. Das Fälligkeitsdatum wird dabei bewusst übergangen, es wird nichts versendet. Eine bereits abgerechnete Position liefert mit 200 ihre vorhandene Rechnung statt einer zweiten.
/api/flowaccounting/quotes
Ruft eine paginierte Liste aller Angebote des Teams ab, sortiert nach Angebotsdatum, absteigend.
status
string
Filter: draft, sent, accepted, declined, expired, withdrawn
client_uuid
string
Filter nach Kunden-UUID
search
string
Suchbegriff (Angebotsnummer, Empfängername, Firma)
from
string
Angebotsdatum ab (YYYY-MM-DD)
to
string
Angebotsdatum bis (YYYY-MM-DD)
per_page
integer
Anzahl pro Seite (1-200, Standard: 25)
/api/flowaccounting/quotes
Erstellt ein Angebot im Status draft. Die Angebotsnummer wird automatisch aus dem Nummernkreis des Teams vergeben; für die Übernahme bestehender Angebote aus einem Fremdsystem kann sie über quote_number vorgegeben werden. Nicht angegebene Felder werden aus den Teameinstellungen und den Kundendaten ergänzt, etwa Währung, Sprache, Gültigkeitsdauer sowie Anschreiben- und Schlusstext. Die vollständige Liste der schreibbaren Felder liefert GET /api/flowaccounting/context. Die Steuerbehandlung übernimmt das Angebot vom Kunden aus FlowCRM und gibt sie als tax_treatment zurück (standard oder reverse_charge). Bei reverse_charge weist das Angebot keine Umsatzsteuer aus: Ein übergebener tax_rate wird auf 0 gesetzt. Die Rechnung aus einem angenommenen Angebot übernimmt dessen Steuerbehandlung.
client_uuid
string
*
Kunden-UUID (teamgebunden)
contact_uuid
string
Kontakt-UUID des Kunden
quote_number
string
Optional: eigene Angebotsnummer, nur für die Übernahme bestehender Angebote aus einem Fremdsystem gedacht. Im Normalfall weglassen, dann vergibt der Nummernkreis die Nummer beim Anlegen. KI-Assistenten und Agenten setzen das Feld nur, wenn der Nutzer ausdrücklich auf einer eigenen Nummer besteht. Höchstens 40 Zeichen aus den Buchstaben A bis Z, Ziffern, Leerzeichen, Punkt, Unterstrich und Bindestrich, am Anfang und Ende ein Buchstabe oder eine Ziffer. Muss im Team eindeutig sein, auch gegenüber gelöschten Entwürfen und zurückgezogenen Angeboten. Liegt die Nummer im laufenden Nummernkreis, muss sie unter dem nächsten Zählerstand liegen; dafür vorher in den FlowAccounting-Einstellungen die nächste Angebotsnummer über die höchste Importnummer setzen. Der Zähler bleibt unverändert. Nach dem Anlegen lässt sich die Nummer nicht mehr ändern
quote_date
string
Angebotsdatum (YYYY-MM-DD, Standard: heute)
valid_until
string
Gültig bis (YYYY-MM-DD, Standard: Gültigkeitsdauer des Teams)
signature_type
string
Annahmeart: button oder canvas
currency_code
string
EUR, USD, CHF oder GBP
document_language
string
de oder en
discount_percent
number
Gesamtrabatt in Prozent
greeting_text
string
Anschreiben über den Positionen
closing_text
string
Schlusstext unter den Positionen
notes
string
Sichtbare Notiz auf dem Angebot
internal_notes
string
Interne Notiz, nicht auf dem Dokument
items
array
*
Positionen, 1 bis 200 Stück. Je Position <code>name</code>, <code>quantity</code>, <code>unit_price</code> und <code>tax_rate</code>; optional <code>description</code>, <code>unit</code>, <code>discount_percent</code>, <code>type</code>, <code>unit_code</code>, <code>product_uuid</code> und <code>project_uuid</code>
recipient_name
string
Abweichender Empfängername
recipient_company
string
Abweichende Empfängerfirma
recipient_email
string
Abweichende Empfängeradresse
/api/flowaccounting/quotes/{uuid}
Angebots-Details einschließlich Positionen, Summen, available_actions und allowed_transitions.
/api/flowaccounting/quotes/{uuid}
Ändert ein Angebot im Status draft; sonst 422. Es werden nur die gesendeten Felder geändert, alle übrigen bleiben stehen. Wird items mitgegeben, ersetzt die Liste sämtliche Positionen. Die Angebotsnummer lässt sich nicht ändern: quote_number wird hier mit 422 abgelehnt.
valid_until
string
Gültig bis (YYYY-MM-DD)
notes
string
Sichtbare Notiz auf dem Angebot
items
array
Ersetzt alle Positionen
/api/flowaccounting/quotes/{uuid}
Löscht ein Angebot im Status draft; sonst 422.
/api/flowaccounting/quotes/{uuid}/send
Versendet das Angebot und setzt es dabei auf sent. Erfordert einen Header Idempotency-Key im UUID-Format; derselbe Schlüssel versendet nicht zweimal. Ohne recipient_emails gelten die Empfänger des Kunden. Ist die Absenderdomain nicht verifiziert, antwortet die API mit 409 und sender_domain_not_verified.
recipient_emails
array
Abweichende Empfängeradressen, höchstens 50
/api/flowaccounting/quotes/{uuid}/withdraw
Zieht ein versendetes Angebot zurück. Nur aus dem Status sent möglich; sonst 422.
/api/flowaccounting/quotes/{uuid}/accept
Hält fest, dass der Kunde das Angebot angenommen hat, etwa telefonisch oder per E-Mail. Nur aus dem Status sent möglich und nur einmal; sonst 422. Für die Annahme über den Angebotslink des Kunden ist dieser Endpoint nicht gedacht, dort wird zusätzlich die Unterschrift erfasst.
/api/flowaccounting/quotes/{uuid}/convert
Erzeugt aus einem angenommenen Angebot einen Rechnungsentwurf. Nur im Status accepted möglich; sonst 422 mit quote_not_accepted. Ein zweiter Aufruf liefert mit 200 die bereits erzeugte Rechnung statt einer weiteren.
/api/flowaccounting/quotes/{uuid}/pdf
BINARY
Liefert das Angebot als PDF-Datei (application/pdf), im Dokumentlayout des Teams und in der auf dem Dokument festgehaltenen Sprache.
/api/flowaccounting/quotes/{uuid}/items
Listet die Positionen eines Angebots, sortiert nach ihrer Reihenfolge.
per_page
integer
Anzahl pro Seite (1-200, Standard: 50)
/api/flowaccounting/quotes/{uuid}/items
Fügt dem Angebot eine Position hinzu. Ohne position wird sie hinten angefügt. Ein project_uuid muss zu einem Projekt des Angebotskunden gehören; sonst 422.
name
string
*
Bezeichnung der Position
quantity
number
*
Menge
unit_price
number
*
Einzelpreis netto
tax_rate
number
*
Steuersatz in Prozent
description
string
Beschreibungstext
unit
string
Einheit, etwa Stunde oder Stück
discount_percent
number
Positionsrabatt in Prozent
type
string
service, product oder hours
position
integer
Reihenfolge
product_uuid
string
Produkt-UUID aus dem Produktkatalog
project_uuid
string
Projekt-UUID des Angebotskunden
/api/flowaccounting/quotes/{uuid}/items/{itemUuid}
Ändert eine einzelne Position. Es werden nur die gesendeten Felder geändert.
quantity
number
Menge
unit_price
number
Einzelpreis netto
tax_rate
number
Steuersatz in Prozent
/api/flowaccounting/quotes/{uuid}/items/{itemUuid}
Entfernt eine Position aus dem Angebot und berechnet die Summen neu.
/api/flowaccounting/credit-notes
Ruft eine paginierte Liste aller Gutschriften des Teams ab, sortiert nach Gutschriftsdatum, absteigend.
status
string
Filter: draft, issued, settled, cancelled
client_uuid
string
Filter nach Kunden-UUID
from
string
Gutschriftsdatum ab (YYYY-MM-DD)
to
string
Gutschriftsdatum bis (YYYY-MM-DD)
per_page
integer
Anzahl pro Seite (1-200, Standard: 25)
/api/flowaccounting/credit-notes
Erstellt eine Gutschrift im Status draft. Mit invoice_uuid wird sie der gutzuschreibenden Rechnung zugeordnet; diese muss demselben Kunden gehören und dieselbe Währung führen. Gutschriftpositionen sind freie Zeilen ohne Produkt- oder Projektverknüpfung. Eine Gutschrift zu einer Rechnung übernimmt deren Steuerbehandlung, eine freie Gutschrift die des Kunden; die Antwort nennt sie als tax_treatment. Bei reverse_charge weist die Gutschrift keine Umsatzsteuer aus: Ein übergebener tax_rate wird auf 0 gesetzt. Ihre Nummer erhält die Gutschrift erst beim Ausstellen aus dem Nummernkreis des Teams; für die Übernahme bestehender Gutschriften aus einem Fremdsystem kann sie über credit_note_number vorgegeben werden.
client_uuid
string
*
Kunden-UUID (teamgebunden)
invoice_uuid
string
UUID der gutzuschreibenden Rechnung
contact_uuid
string
Kontakt-UUID des Kunden
credit_note_number
string
Optional: eigene Gutschriftnummer, nur für die Übernahme bestehender Gutschriften aus einem Fremdsystem gedacht. Im Normalfall weglassen, dann vergibt der Nummernkreis die Nummer beim Ausstellen. KI-Assistenten und Agenten setzen das Feld nur, wenn der Nutzer ausdrücklich auf einer eigenen Nummer besteht. Höchstens 40 Zeichen aus den Buchstaben A bis Z, Ziffern, Leerzeichen, Punkt, Unterstrich und Bindestrich, am Anfang und Ende ein Buchstabe oder eine Ziffer. Muss im Team eindeutig sein, auch gegenüber gelöschten Entwürfen und stornierten Gutschriften. Liegt die Nummer im laufenden Nummernkreis, muss sie unter dem nächsten Zählerstand liegen; dafür vorher in den FlowAccounting-Einstellungen die nächste Gutschriftnummer über die höchste Importnummer setzen. Der Zähler bleibt unverändert, auch beim Ausstellen. Nach dem Anlegen lässt sich die Nummer nicht mehr ändern
credit_note_date
string
Gutschriftsdatum (YYYY-MM-DD, Standard: heute)
currency_code
string
EUR, USD, CHF oder GBP
document_language
string
de oder en
einvoice_format
string
pdf, zugferd oder xrechnung
notes
string
Sichtbare Notiz auf der Gutschrift
items
array
*
Positionen, 1 bis 200 Stück, mit <code>name</code>, <code>quantity</code>, <code>unit_price</code> und <code>tax_rate</code>
/api/flowaccounting/credit-notes/{uuid}
Gutschrifts-Details einschließlich Positionen, Summen und available_actions.
/api/flowaccounting/credit-notes/{uuid}
Ändert eine Gutschrift im Status draft; sonst 422. Wird items mitgegeben, ersetzt die Liste sämtliche Positionen. Die Gutschriftnummer lässt sich nicht ändern: credit_note_number wird hier mit 422 abgelehnt.
notes
string
Sichtbare Notiz auf der Gutschrift
items
array
Ersetzt alle Positionen
/api/flowaccounting/credit-notes/{uuid}
Löscht eine Gutschrift im Status draft; sonst 422.
/api/flowaccounting/credit-notes/{uuid}/issue
Stellt die Gutschrift aus und vergibt ihre Nummer, sofern beim Anlegen keine vorgegeben wurde. Ist die zugrunde liegende Rechnung über Stripe bezahlt, wird die Erstattung angestoßen. Das Feld refund_status meldet started, not_required oder review_required. Nur im Status draft möglich; sonst 422. Ebenfalls 422, wenn die verknüpfte Rechnung noch ein Entwurf ist (zuerst die Rechnung ausstellen), wenn sie storniert wurde oder wenn sie ihre Steuerbehandlung geändert hat, seit die Gutschrift gespeichert wurde: Dann die Gutschrift zuerst per PUT mit ihren Positionen neu speichern.
/api/flowaccounting/credit-notes/{uuid}/settle
Verrechnet eine ausgestellte Gutschrift und bucht dafür genau eine Transaktion vom Typ credit. Mit mode offset wird der Betrag auf die verknüpfte Rechnung gebucht: Er darf weder die Gutschriftsumme noch den offenen Betrag der Rechnung übersteigen, und Rechnung und Gutschrift müssen dieselbe Währung führen. Deckt die Buchung den offenen Betrag, gilt die Rechnung als bezahlt (paid), sonst als teilweise bezahlt (partially_paid); eine Rechnung im Entwurf oder eine stornierte Rechnung wird abgelehnt. Mit pool wandert der Betrag ohne Rechnungsbezug ins Guthaben des Kunden und steht dort für spätere Rechnungen zur Verfügung. In beiden Fällen ist die Gutschrift danach vollständig verrechnet (settled), auch bei einem Teilbetrag: Der Rest wandert nicht ins Guthaben und lässt sich nicht nachträglich verrechnen. Ohne amount wird der höchste zulässige Betrag gebucht. transaction_date ist für die Übernahme historischer Belege gedacht und legt das Buchungsdatum der Transaktion fest. Die Antwort enthält die Gutschrift in data, die gebuchte Transaktion in transaction und bei offset den Stand der Rechnung in invoice (uuid, invoice_number, status, paid_date, remaining_amount); bei pool ist invoice null. Der Aufruf ist über den Status abgesichert: Eine Wiederholung bucht nichts und liefert 422 mit credit_note_already_settled, ein Entwurf oder eine stornierte Gutschrift 422 mit credit_note_not_issued. Weitere Ablehnungen mit 422: credit_note_without_invoice, invoice_not_settleable, currency_mismatch, amount_exceeds_limit und transaction_date_out_of_range.
mode
string
*
<code>offset</code> (mit der verknüpften Rechnung verrechnen) oder <code>pool</code> (dem Guthaben des Kunden gutschreiben)
amount
number
Zu buchender Betrag, mindestens 0,01. Standard: die Gutschriftsumme, bei <code>offset</code> höchstens der offene Betrag der Rechnung
transaction_date
string
Buchungsdatum (YYYY-MM-DD, Standard: heute). Frühestens das Gutschriftsdatum, spätestens heute
/api/flowaccounting/credit-notes/{uuid}/cancel
Storniert eine Gutschrift im Status draft oder issued; der Aufruf hat keinen Body. Die Stornierung ist endgültig. Beleg und Nummer bleiben erhalten: Die Gutschrift lässt sich weiter abrufen, und ihre Nummer wird nicht wieder frei. Das gilt auch für einen Entwurf, der mit vorgegebener credit_note_number angelegt wurde; er belegt diese Nummer weiter. Eine verrechnete oder bereits stornierte Gutschrift liefert 422 mit action_not_available. Ebenfalls 422, mit credit_note_refund_started, wenn für die verknüpfte Rechnung eine Stripe-Erstattung angestoßen wurde, die nicht fehlgeschlagen ist: Das Geld ist dann an den Kunden zurückgeflossen, und der Beleg dazu muss bestehen bleiben.
/api/flowaccounting/credit-notes/{uuid}/send
Versendet die ausgestellte Gutschrift an genau eine Adresse; mehrere Empfänger werden mit 422 abgelehnt. Erfordert einen Header Idempotency-Key im UUID-Format. Ohne recipient_emails gilt die hinterlegte Adresse des Kunden.
recipient_emails
array
Genau eine abweichende Empfängeradresse
/api/flowaccounting/credit-notes/{uuid}/pdf
BINARY
Liefert die Gutschrift als PDF-Datei (application/pdf) im Dokumentlayout des Teams.
/api/flowaccounting/expenses
Ruft eine paginierte Liste aller Ausgaben des Teams ab, sortiert nach Buchungsdatum, absteigend.
status
string
Filter: pending oder booked
supplier_uuid
string
Filter nach Lieferanten-UUID
expense_category_uuid
string
Filter nach Kategorie-UUID
search
string
Suchbegriff (Beschreibung, Lieferanten-Rechnungsnummer)
from
string
Buchungsdatum ab (YYYY-MM-DD)
to
string
Buchungsdatum bis (YYYY-MM-DD)
per_page
integer
Anzahl pro Seite (1-200, Standard: 25)
/api/flowaccounting/expenses
Erfasst eine Ausgabe im Status pending; gebucht wird sie in einem eigenen Schritt über POST /api/flowaccounting/expenses/{uuid}/book. Netto-, Steuer- und Bruttobetrag werden aus gross_amount, tax_rate und vat_mode berechnet. Eine zweite Ausgabe mit derselben Lieferanten-Rechnungsnummer desselben Lieferanten wird mit 422 abgelehnt.
booking_date
string
*
Buchungsdatum (YYYY-MM-DD)
gross_amount
number
*
Bruttobetrag
tax_rate
number
Steuersatz in Prozent (Standard: Steuersatz des Teams)
vat_mode
string
full, none oder reverse_charge (Standard: full)
currency_code
string
EUR, USD, CHF oder GBP
supplier_uuid
string
Lieferanten-UUID
expense_category_uuid
string
Kategorie-UUID
supplier_invoice_number
string
Rechnungsnummer des Lieferanten
description
string
Kurze Beschreibung
notes
string
Interne Notiz
/api/flowaccounting/expenses/{uuid}
Ausgaben-Details einschließlich der berechneten Beträge sowie has_receipt und receipt_name.
/api/flowaccounting/expenses/{uuid}
Ändert eine Ausgabe im Status pending. Bereits gebuchte Ausgaben bleiben unverändert und werden mit 422 abgelehnt.
gross_amount
number
Bruttobetrag
expense_category_uuid
string
Kategorie-UUID
description
string
Kurze Beschreibung
/api/flowaccounting/expenses/{uuid}
Löscht eine Ausgabe im Status pending; sonst 422.
/api/flowaccounting/expenses/{uuid}/receipt
Hängt den Beleg als multipart/form-data an die Ausgabe. Erlaubt sind PDF, JPEG und PNG bis 10 MB. Ein vorhandener Beleg wird ersetzt, sobald der neue gespeichert ist. Bei bereits gebuchten Ausgaben antwortet die API mit 422.
file
file
*
Belegdatei (PDF, JPEG oder PNG, höchstens 10 MB)
/api/flowaccounting/expenses/{uuid}/book
Bucht eine Ausgabe im Status pending: Sie wechselt in den Status booked und erhält das Zahlungsdatum paid_date. Erst eine gebuchte Ausgabe zählt in den Berichten, und zwar im Zeitraum ihres Zahlungsdatums. Die Reihenfolge ist: Ausgabe anlegen, Beleg hochladen, buchen. Nach dem Buchen sind Ändern, Löschen und der Austausch des Belegs über die API gesperrt (422). Das Buchen lässt sich über die API nicht rückgängig machen; eine gebuchte Ausgabe wird in der Weboberfläche korrigiert. Der Aufruf ist über den Status abgesichert: Eine Wiederholung bucht nichts und liefert 422 mit expense_booked.
paid_date
string
*
Zahlungsdatum (YYYY-MM-DD), höchstens heute
/api/flowaccounting/expenses/{uuid}/receipt
BINARY
Liefert die hinterlegte Belegdatei. Ohne Beleg antwortet die API mit 404.
/api/flowaccounting/suppliers
Ruft eine paginierte Liste aller Lieferanten des Teams ab, alphabetisch sortiert.
is_active
boolean
Filter: nur aktive oder nur inaktive Lieferanten
search
string
Suchbegriff im Namen
per_page
integer
Anzahl pro Seite (1-200, Standard: 25)
/api/flowaccounting/suppliers
Legt einen Lieferanten an.
name
string
*
Name des Lieferanten
address
string
Anschrift
vat_id
string
Umsatzsteuer-Identifikationsnummer
tax_id
string
Steuernummer
email
string
E-Mail-Adresse
phone
string
Telefonnummer
is_active
boolean
Aktiv (Standard: true)
/api/flowaccounting/suppliers/{uuid}
Lieferanten-Details abrufen.
/api/flowaccounting/suppliers/{uuid}
Ändert einen Lieferanten. Es werden nur die gesendeten Felder geändert.
name
string
Name des Lieferanten
is_active
boolean
Aktiv
/api/flowaccounting/suppliers/{uuid}
Löscht einen Lieferanten, auf den noch keine Ausgabe gebucht ist. Andernfalls antwortet die API mit 422 und dem Hinweis, den Lieferanten zu deaktivieren.
/api/flowaccounting/expense-categories
Ruft eine paginierte Liste aller Ausgabenkategorien des Teams ab, alphabetisch sortiert.
is_active
boolean
Filter: nur aktive oder nur inaktive Kategorien
search
string
Suchbegriff im Namen
per_page
integer
Anzahl pro Seite (1-200, Standard: 25)
/api/flowaccounting/expense-categories
Legt eine Ausgabenkategorie an. Mit parent_uuid wird sie einer übergeordneten Kategorie untergeordnet; eine Verkettung im Kreis wird mit 422 abgelehnt.
name
string
*
Name der Kategorie
number
string
Kontonummer
parent_uuid
string
UUID der übergeordneten Kategorie
euer_group
string
Zuordnung in der Einnahmenüberschussrechnung
is_active
boolean
Aktiv (Standard: true)
/api/flowaccounting/expense-categories/{uuid}
Details einer Ausgabenkategorie einschließlich parent_uuid.
/api/flowaccounting/expense-categories/{uuid}
Ändert eine Ausgabenkategorie. Es werden nur die gesendeten Felder geändert.
name
string
Name der Kategorie
is_active
boolean
Aktiv
/api/flowaccounting/expense-categories/{uuid}
Antwortet mit 422: Kategorien werden deaktiviert und nicht gelöscht. Der Endpoint besteht, damit der Grund benannt wird statt stillschweigend zu wirken.
/api/flowaccounting/income-categories
Ruft eine paginierte Liste aller Einnahmenkategorien des Teams ab, alphabetisch sortiert.
is_active
boolean
Filter: nur aktive oder nur inaktive Kategorien
income_group
string
Filter: umsatz, kapital, privat oder sonstige
search
string
Suchbegriff im Namen
per_page
integer
Anzahl pro Seite (1-200, Standard: 25)
/api/flowaccounting/income-categories
Legt eine Einnahmenkategorie an.
name
string
*
Name der Kategorie
number
string
Kontonummer
income_group
string
umsatz, kapital, privat oder sonstige
is_active
boolean
Aktiv (Standard: true)
/api/flowaccounting/income-categories/{uuid}
Details einer Einnahmenkategorie.
/api/flowaccounting/income-categories/{uuid}
Ändert eine Einnahmenkategorie. Es werden nur die gesendeten Felder geändert.
name
string
Name der Kategorie
is_active
boolean
Aktiv
/api/flowaccounting/income-categories/{uuid}
Antwortet mit 422: Kategorien werden deaktiviert und nicht gelöscht.
/api/flowaccounting/reports/{kind}
Liefert einen Bericht für den angegebenen Zeitraum. Mögliche Werte für kind: open_items (offene Posten), revenue (Rechnungsumsatz), revenue_per_client (Umsatz je Kunde), cash_flow (Einnahmen und Ausgaben nach Zahlungseingang), euer (Einnahmenüberschussrechnung) und profit_loss (Gewinn und Verlust). client_uuid ist nur bei open_items, revenue und revenue_per_client zulässig, sonst 422. Entwürfe und stornierte Rechnungen bleiben in jedem Bericht außen vor.
from
string
*
Beginn des Zeitraums (YYYY-MM-DD)
to
string
*
Ende des Zeitraums (YYYY-MM-DD, nicht vor from)
client_uuid
string
Auf einen Kunden einschränken
page
integer
Seite der Ergebnisliste, 50 Zeilen je Seite
/api/flowaccounting/context
Liefert die Dokumentvorgaben des Teams, die Steuersätze und je Datensatzart die vollständige Liste der schreibbaren Felder. Damit lässt sich ein gültiger Rumpf für Angebote, Rechnungen, Gutschriften, Ausgaben, Lieferanten und Kategorien aufbauen, ohne die Feldnamen zu erraten. Verknüpfungen erscheinen unter ihren öffentlichen Namen, etwa client_uuid statt einer internen Nummer.
Rechnungen und Gutschriften, die in einem anderen System ausgestellt wurden, lassen sich mit ihren ursprünglichen Nummern und Daten übernehmen. Die Reihenfolge der Aufrufe ist dabei festgelegt. Sie gilt für manuelle Rechnungen (source manual, der Standard beim Anlegen).
Folgen die zu übernehmenden Nummern dem Format Ihres laufenden Nummernkreises, setzen Sie zuerst in den FlowAccounting-Einstellungen die nächste Rechnungsnummer und die nächste Gutschriftnummer über die höchste Nummer, die Sie übernehmen. Eine vorgegebene Nummer, die im laufenden Nummernkreis auf oder über dem nächsten Zählerstand liegt, wird mit 422 abgelehnt. Vorgegebene Nummern verändern den Zähler nicht.
POST /api/flowaccounting/invoices mit invoice_number, dem ursprünglichen invoice_date und due_date sowie den Positionen. Die Rechnung entsteht als Entwurf. Ohne payment_method erhält sie die Zahlungsart bank_transfer, ein beim Kunden hinterlegtes Zahlungsmittel wird nicht übernommen. Lassen Sie send weg, sonst geht die Rechnung per E-Mail an den Kunden.
POST /api/flowaccounting/invoices/{uuid}/status mit status sent und dem ursprünglichen Versanddatum als sent_date. Dabei wird keine E-Mail verschickt. Ohne sent_date gilt der heutige Tag, und die Rechnung nimmt wie jede neu ausgestellte an den automatischen Läufen teil.
POST /api/flowaccounting/invoices/{uuid}/transactions mit type payment, dem Betrag und dem ursprünglichen Zahlungsdatum als transaction_date. Gleicht die Zahlung die Rechnung aus, steht sie auf paid und übernimmt das transaction_date als paid_date.
Legen Sie die Gutschrift mit POST /api/flowaccounting/credit-notes an und geben Sie credit_note_number, die invoice_uuid der übernommenen Rechnung und credit_note_date mit. Stellen Sie sie mit POST /api/flowaccounting/credit-notes/{uuid}/issue aus; Nummer und Datum bleiben dabei erhalten. Verrechnen Sie sie danach mit POST /api/flowaccounting/credit-notes/{uuid}/settle, mode offset und dem ursprünglichen Datum als transaction_date. Deckt die Gutschrift den offenen Betrag, steht die Rechnung auf paid und übernimmt das transaction_date als paid_date. Die Detailantwort der Rechnung nennt die Gutschrift unter credit_notes.
PUT und seine Positionen über die Positionen-Endpoints. Die Nummer selbst lässt sich nach dem Anlegen nicht mehr ändern.credit an der Rechnung ersetzt keine Gutschrift. Sie bucht nur einen Betrag auf die Rechnung; ein Gutschriftbeleg mit eigener Nummer entsteht dabei nicht.Listen-Endpoints liefern zusätzlich ein meta-Objekt mit Pagination-Informationen.
{"success": true, "data": {...}, "meta": {"current_page": 1, "per_page": 15, "total": 42}}Fehler verwenden durchgehend das Feld message. Validierungsfehler (422) enthalten zusätzlich errors.
Der Rechnungsstatus folgt einer festen Zustandsmaschine. Der Endpoint POST /invoices/{uuid}/status erlaubt direkt nur die Übergänge nach sent und cancelled. Zahlungsbezogene Status (partially_paid, paid) entstehen automatisch durch Transaktionen bzw. den mark-paid-Endpoint. Das Feld allowed_transitions jeder Rechnung zeigt die aktuell möglichen Folgestatus.
| Von Status | Mögliche Folgestatus |
|---|---|
draft
|
sent,
cancelled
|
sent
|
paid,
partially_paid,
overdue,
past_due,
cancelled
|
partially_paid
|
paid,
overdue,
past_due,
cancelled
|
overdue
|
paid,
partially_paid,
past_due,
cancelled
|
past_due
|
paid,
partially_paid,
overdue,
cancelled
|
paid
|
cancelled
|
cancelled
|
Endstatus (keine weiteren Übergänge) |
/api/flowaccounting/invoices
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/invoices');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices',
headers=headers,
)
data = response.json()
{
"success": true,
"data": [
{
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"invoice_number": "RE-2026-0042",
"status": "sent",
"recipient_name": "Mustermann GmbH",
"total": 1190,
"allowed_transitions": [
"paid",
"cancelled"
]
}
],
"meta": {
"current_page": 1,
"per_page": 15,
"total": 42
}
}
/api/flowaccounting/invoices
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"recipient_name": "value", "invoice_date": "value", "due_date": "value", "currency_code": "value", "client_uuid": "value", "contact_uuid": "value", "invoice_number": "value", "notes": "value", "payment_method": "value", "stripe_pm_id": "value", "tax_treatment": "value", "document_language": "value", "send": true, "items": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices', [
'recipient_name' => 'value',
'invoice_date' => 'value',
'due_date' => 'value',
'currency_code' => 'value',
'client_uuid' => 'value',
'contact_uuid' => 'value',
'invoice_number' => 'value',
'notes' => 'value',
'payment_method' => 'value',
'stripe_pm_id' => 'value',
'tax_treatment' => 'value',
'document_language' => 'value',
'send' => true,
'items' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
recipient_name: 'value',
invoice_date: 'value',
due_date: 'value',
currency_code: 'value',
client_uuid: 'value',
contact_uuid: 'value',
invoice_number: 'value',
notes: 'value',
payment_method: 'value',
stripe_pm_id: 'value',
tax_treatment: 'value',
document_language: 'value',
send: true,
items: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'recipient_name': 'value',
'invoice_date': 'value',
'due_date': 'value',
'currency_code': 'value',
'client_uuid': 'value',
'contact_uuid': 'value',
'invoice_number': 'value',
'notes': 'value',
'payment_method': 'value',
'stripe_pm_id': 'value',
'tax_treatment': 'value',
'document_language': 'value',
'send': True,
'items': [],
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"invoice_number": "RE-2026-0042",
"status": "draft"
}
}
/api/flowaccounting/invoices/{uuid}
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"invoice_number": "RE-2026-0042",
"original_invoice_number": null,
"status": "paid",
"invoice_date": "2026-01-10T00:00:00+01:00",
"due_date": "2026-01-24T00:00:00+01:00",
"sent_date": "2026-01-10",
"paid_date": "2026-01-20",
"total": 1190,
"currency_code": "EUR",
"payment_method": "bank_transfer",
"total_paid": 1190,
"remaining_amount": 0,
"allowed_transitions": [
"cancelled"
],
"items": [
{
"uuid": "3f2b1c4d-5e6f-4a7b-8c9d-0e1f2a3b4c5d",
"name": "Beratung",
"quantity": 10,
"unit_price": 100,
"tax_rate": 19,
"total": 1190
}
],
"transactions": [
{
"uuid": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"type": "payment",
"amount": 952,
"currency_code": "EUR",
"transaction_date": "2026-01-16T00:00:00+01:00"
},
{
"uuid": "1d4e5f6a-7b8c-4d9e-a0b1-c2d3e4f5a6b7",
"type": "credit",
"amount": 238,
"currency_code": "EUR",
"transaction_date": "2026-01-20T00:00:00+01:00"
}
],
"credit_notes": [
{
"uuid": "9b2e4f6a-1c3d-4e5f-8a7b-6c5d4e3f2a1b",
"credit_note_number": "GS-2026-0003",
"status": "settled",
"credit_note_date": "2026-01-20",
"total": 238,
"currency_code": "EUR"
}
]
}
}
/api/flowaccounting/invoices/{uuid}
curl -X PUT "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"recipient_name": "value", "due_date": "value", "notes": "value", "document_language": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}', [
'recipient_name' => 'value',
'due_date' => 'value',
'notes' => 'value',
'document_language' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
recipient_name: 'value',
due_date: 'value',
notes: 'value',
document_language: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'recipient_name': 'value',
'due_date': 'value',
'notes': 'value',
'document_language': 'value',
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/invoices/{uuid}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/invoices/{uuid}/status
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/status" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"status": "value", "sent_date": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/status', [
'status' => 'value',
'sent_date' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/status', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
status: 'value',
sent_date: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'status': 'value',
'sent_date': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/status',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/invoices/{uuid}/send
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/send" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/send');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/send', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/send',
headers=headers,
)
data = response.json()
/api/flowaccounting/invoices/{uuid}/pdf
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/pdf" \
--output rechnung.pdf
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->withHeaders(['Accept' => 'application/pdf'])
->get('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf');
file_put_contents('rechnung.pdf', $response->body());
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf', {
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/pdf',
},
});
const blob = await response.blob();
const url = URL.createObjectURL(blob);
import requests
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf',
headers={'Authorization': 'Bearer YOUR_API_TOKEN', 'Accept': 'application/pdf'},
)
with open('rechnung.pdf', 'wb') as f:
f.write(response.content)
Antwort ist ein Datei-Download (Content-Type: application/pdf). Kein JSON-Body.
/api/flowaccounting/invoices/{uuid}/pdf
# Team-Einstellung: einvoice_format = zugferd
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/pdf" \
--output rechnung-zugferd.pdf
use Illuminate\Support\Facades\Http;
// Team-Einstellung: einvoice_format = zugferd
$response = Http::withToken('YOUR_API_TOKEN')
->withHeaders(['Accept' => 'application/pdf'])
->get('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf');
file_put_contents('rechnung-zugferd.pdf', $response->body());
// Team-Einstellung: einvoice_format = zugferd
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf', {
headers: {'Authorization': 'Bearer YOUR_API_TOKEN', 'Accept': 'application/pdf'},
});
const blob = await response.blob();
# Team-Einstellung: einvoice_format = zugferd
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf',
headers={'Authorization': 'Bearer YOUR_API_TOKEN', 'Accept': 'application/pdf'},
)
with open('rechnung-zugferd.pdf', 'wb') as f:
f.write(response.content)
Antwort ist ein PDF-Download mit eingebettetem ZUGFeRD-XML (PDF/A-3).
/api/flowaccounting/invoices/{uuid}/pdf
# Team-Einstellung: einvoice_format = xrechnung
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/xml" \
--output rechnung.xml
use Illuminate\Support\Facades\Http;
// Team-Einstellung: einvoice_format = xrechnung
$response = Http::withToken('YOUR_API_TOKEN')
->withHeaders(['Accept' => 'application/xml'])
->get('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf');
file_put_contents('rechnung.xml', $response->body());
// Team-Einstellung: einvoice_format = xrechnung
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf', {
headers: {'Authorization': 'Bearer YOUR_API_TOKEN', 'Accept': 'application/xml'},
});
const xml = await response.text();
# Team-Einstellung: einvoice_format = xrechnung
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf',
headers={'Authorization': 'Bearer YOUR_API_TOKEN', 'Accept': 'application/xml'},
)
with open('rechnung.xml', 'wb') as f:
f.write(response.content)
Antwort ist ein XML-Download (Content-Type: application/xml).
/api/flowaccounting/invoices/{uuid}/duplicate
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/duplicate" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/duplicate');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/duplicate', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/duplicate',
headers=headers,
)
data = response.json()
/api/flowaccounting/invoices/{uuid}/correct
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/correct" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/correct');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/correct', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/correct',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"invoice_number": "RE-2026-0042-1",
"status": "draft"
}
}
/api/flowaccounting/invoices/{uuid}/dunning
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/dunning" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"level": "value", "recipient_emails": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/dunning', [
'level' => 'value',
'recipient_emails' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/dunning', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
level: 'value',
recipient_emails: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'level': 'value',
'recipient_emails': [],
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/dunning',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"level": "reminder",
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "overdue"
}
}
/api/flowaccounting/invoices/{uuid}/mark-paid
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/mark-paid" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"stripe_payment_intent_id": "value", "date_paid": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/mark-paid', [
'stripe_payment_intent_id' => 'value',
'date_paid' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/mark-paid', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
stripe_payment_intent_id: 'value',
date_paid: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'stripe_payment_intent_id': 'value',
'date_paid': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/mark-paid',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/invoices/{uuid}/record-payment-intent
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/record-payment-intent" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"stripe_payment_intent_id": "value", "status": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/record-payment-intent', [
'stripe_payment_intent_id' => 'value',
'status' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/record-payment-intent', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
stripe_payment_intent_id: 'value',
status: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'stripe_payment_intent_id': 'value',
'status': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/record-payment-intent',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/invoices/{uuid}/charge
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/charge" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/charge');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/charge', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/charge',
headers=headers,
)
data = response.json()
/api/flowaccounting/invoices/{uuid}/payment-status
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/payment-status" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/payment-status');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/payment-status', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/payment-status',
headers=headers,
)
data = response.json()
/api/flowaccounting/invoices/{uuid}/items
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items',
headers=headers,
)
data = response.json()
/api/flowaccounting/invoices/{uuid}/items
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"quantity": 0, "unit_price": 0, "name": "value", "description": "value", "tax_rate": 0, "unit": "value", "product_uuid": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items', [
'quantity' => 0,
'unit_price' => 0,
'name' => 'value',
'description' => 'value',
'tax_rate' => 0,
'unit' => 'value',
'product_uuid' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
quantity: 0,
unit_price: 0,
name: 'value',
description: 'value',
tax_rate: 0,
unit: 'value',
product_uuid: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'quantity': 0,
'unit_price': 0,
'name': 'value',
'description': 'value',
'tax_rate': 0,
'unit': 'value',
'product_uuid': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/invoices/{uuid}/items/{itemUuid}
curl -X PUT "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"quantity": 0, "unit_price": 0, "name": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}', [
'quantity' => 0,
'unit_price' => 0,
'name' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
quantity: 0,
unit_price: 0,
name: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'quantity': 0,
'unit_price': 0,
'name': 'value',
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/invoices/{uuid}/items/{itemUuid}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/invoices/{uuid}/transactions
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions',
headers=headers,
)
data = response.json()
/api/flowaccounting/invoices/{uuid}/transactions
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"type": "value", "amount": 0, "transaction_date": "value", "payment_method": "value", "reference": "value", "notes": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions', [
'type' => 'value',
'amount' => 0,
'transaction_date' => 'value',
'payment_method' => 'value',
'reference' => 'value',
'notes' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
type: 'value',
amount: 0,
transaction_date: 'value',
payment_method: 'value',
reference: 'value',
notes: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'type': 'value',
'amount': 0,
'transaction_date': 'value',
'payment_method': 'value',
'reference': 'value',
'notes': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"amount": 1190,
"currency_code": "EUR",
"type": "payment",
"transaction_date": "2026-01-16T00:00:00+00:00"
},
"invoice": {
"uuid": "550e8400-...",
"status": "paid",
"paid_date": "2026-01-16",
"total_paid": 1190,
"remaining_amount": 0
}
}
/api/flowaccounting/invoices/{uuid}/transactions/{transactionUuid}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions/{transactionUuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions/{transactionUuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions/{transactionUuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions/{transactionUuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/transactions
curl -X GET "https://creativeskyline.de/api/flowaccounting/transactions" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/transactions');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/transactions', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/transactions',
headers=headers,
)
data = response.json()
/api/flowaccounting/products
curl -X GET "https://creativeskyline.de/api/flowaccounting/products" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/products');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/products', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/products',
headers=headers,
)
data = response.json()
/api/flowaccounting/products/{uuid}
curl -X GET "https://creativeskyline.de/api/flowaccounting/products/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/products/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/products/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/products/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/products
curl -X POST "https://creativeskyline.de/api/flowaccounting/products" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"title": "value", "unit_price": 0, "unit_price_gross": 0, "tax_rate": 0, "description": "value", "unit": "value", "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/products', [
'title' => 'value',
'unit_price' => 0,
'unit_price_gross' => 0,
'tax_rate' => 0,
'description' => 'value',
'unit' => 'value',
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/products', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
title: 'value',
unit_price: 0,
unit_price_gross: 0,
tax_rate: 0,
description: 'value',
unit: 'value',
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'title': 'value',
'unit_price': 0,
'unit_price_gross': 0,
'tax_rate': 0,
'description': 'value',
'unit': 'value',
'is_active': True,
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/products',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/products/{uuid}
curl -X PUT "https://creativeskyline.de/api/flowaccounting/products/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"title": "value", "unit_price": 0, "unit_price_gross": 0, "tax_rate": 0, "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/products/{uuid}', [
'title' => 'value',
'unit_price' => 0,
'unit_price_gross' => 0,
'tax_rate' => 0,
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/products/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
title: 'value',
unit_price: 0,
unit_price_gross: 0,
tax_rate: 0,
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'title': 'value',
'unit_price': 0,
'unit_price_gross': 0,
'tax_rate': 0,
'is_active': True,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/products/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/products/{uuid}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/products/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/products/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/products/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/products/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/tax-rates
curl -X GET "https://creativeskyline.de/api/flowaccounting/tax-rates" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/tax-rates');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/tax-rates', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/tax-rates',
headers=headers,
)
data = response.json()
/api/flowaccounting/tax-rates/{uuid}
curl -X GET "https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/tax-rates
curl -X POST "https://creativeskyline.de/api/flowaccounting/tax-rates" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "rate": 0, "description": "value", "is_default": true, "is_active": true, "sort_order": 0}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/tax-rates', [
'name' => 'value',
'rate' => 0,
'description' => 'value',
'is_default' => true,
'is_active' => true,
'sort_order' => 0,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/tax-rates', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
rate: 0,
description: 'value',
is_default: true,
is_active: true,
sort_order: 0,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'rate': 0,
'description': 'value',
'is_default': True,
'is_active': True,
'sort_order': 0,
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/tax-rates',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/tax-rates/{uuid}
curl -X PUT "https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "rate": 0, "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}', [
'name' => 'value',
'rate' => 0,
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
rate: 0,
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'rate': 0,
'is_active': True,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/tax-rates/{uuid}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/tax-rates/{uuid}/default
curl -X POST "https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}/default" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}/default');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}/default', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}/default',
headers=headers,
)
data = response.json()
/api/flowaccounting/recurring-invoices
curl -X GET "https://creativeskyline.de/api/flowaccounting/recurring-invoices" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/recurring-invoices');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices',
headers=headers,
)
data = response.json()
/api/flowaccounting/recurring-invoices/{uuid}
curl -X GET "https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/recurring-invoices
curl -X POST "https://creativeskyline.de/api/flowaccounting/recurring-invoices" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"client_uuid": "value", "interval_value": 0, "interval_unit": "value", "start_date": "value", "template_items": [], "auto_send": true, "end_date": "value", "status": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/recurring-invoices', [
'client_uuid' => 'value',
'interval_value' => 0,
'interval_unit' => 'value',
'start_date' => 'value',
'template_items' => [],
'auto_send' => true,
'end_date' => 'value',
'status' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
client_uuid: 'value',
interval_value: 0,
interval_unit: 'value',
start_date: 'value',
template_items: [],
auto_send: true,
end_date: 'value',
status: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'client_uuid': 'value',
'interval_value': 0,
'interval_unit': 'value',
'start_date': 'value',
'template_items': [],
'auto_send': True,
'end_date': 'value',
'status': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/recurring-invoices/{uuid}
curl -X PUT "https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"interval_value": 0, "interval_unit": "value", "auto_send": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}', [
'interval_value' => 0,
'interval_unit' => 'value',
'auto_send' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
interval_value: 0,
interval_unit: 'value',
auto_send: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'interval_value': 0,
'interval_unit': 'value',
'auto_send': True,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/recurring-invoices/{uuid}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/recurring-invoices/{uuid}/pause
curl -X POST "https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/pause" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/pause');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/pause', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/pause',
headers=headers,
)
data = response.json()
/api/flowaccounting/recurring-invoices/{uuid}/activate
curl -X POST "https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/activate" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"auto_send": true, "auto_charge": true, "recipient_emails": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/activate', [
'auto_send' => true,
'auto_charge' => true,
'recipient_emails' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/activate', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
auto_send: true,
auto_charge: true,
recipient_emails: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'auto_send': True,
'auto_charge': True,
'recipient_emails': [],
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/activate',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/recurring-invoices/{uuid}/generate
curl -X POST "https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/generate" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/generate');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/generate', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/generate',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"invoice_number": "RE-2026-0042",
"status": "sent"
}
}
/api/flowaccounting/billable-items
curl -X GET "https://creativeskyline.de/api/flowaccounting/billable-items" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/billable-items');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/billable-items', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/billable-items',
headers=headers,
)
data = response.json()
/api/flowaccounting/billable-items/{uuid}
curl -X GET "https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/billable-items
curl -X POST "https://creativeskyline.de/api/flowaccounting/billable-items" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"client_uuid": "value", "description": "value", "unit_price": 0, "quantity": 0, "unit": "value", "tax_rate": 0, "due_date": "value", "auto_bill": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/billable-items', [
'client_uuid' => 'value',
'description' => 'value',
'unit_price' => 0,
'quantity' => 0,
'unit' => 'value',
'tax_rate' => 0,
'due_date' => 'value',
'auto_bill' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/billable-items', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
client_uuid: 'value',
description: 'value',
unit_price: 0,
quantity: 0,
unit: 'value',
tax_rate: 0,
due_date: 'value',
auto_bill: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'client_uuid': 'value',
'description': 'value',
'unit_price': 0,
'quantity': 0,
'unit': 'value',
'tax_rate': 0,
'due_date': 'value',
'auto_bill': True,
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/billable-items',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/billable-items/{uuid}
curl -X PUT "https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"description": "value", "unit_price": 0, "quantity": 0}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}', [
'description' => 'value',
'unit_price' => 0,
'quantity' => 0,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
description: 'value',
unit_price: 0,
quantity: 0,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'description': 'value',
'unit_price': 0,
'quantity': 0,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/billable-items/{uuid}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/billable-items/consolidate
curl -X POST "https://creativeskyline.de/api/flowaccounting/billable-items/consolidate" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"uuids": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/billable-items/consolidate', [
'uuids' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/billable-items/consolidate', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
uuids: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'uuids': [],
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/billable-items/consolidate',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/billable-items/{uuid}/generate
curl -X POST "https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}/generate" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}/generate');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}/generate', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}/generate',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "draft"
}
}
/api/flowaccounting/quotes
curl -X GET "https://creativeskyline.de/api/flowaccounting/quotes" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/quotes');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/quotes',
headers=headers,
)
data = response.json()
{
"success": true,
"data": [
{
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"quote_number": "AN-2026-0007",
"status": "sent",
"total": 1190,
"available_actions": [
"send",
"withdraw"
]
}
],
"meta": {
"current_page": 1,
"per_page": 25,
"total": 7
}
}
/api/flowaccounting/quotes
curl -X POST "https://creativeskyline.de/api/flowaccounting/quotes" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"client_uuid": "value", "contact_uuid": "value", "quote_number": "value", "quote_date": "value", "valid_until": "value", "signature_type": "value", "currency_code": "value", "document_language": "value", "discount_percent": 0, "greeting_text": "value", "closing_text": "value", "notes": "value", "internal_notes": "value", "items": [], "recipient_name": "value", "recipient_company": "value", "recipient_email": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/quotes', [
'client_uuid' => 'value',
'contact_uuid' => 'value',
'quote_number' => 'value',
'quote_date' => 'value',
'valid_until' => 'value',
'signature_type' => 'value',
'currency_code' => 'value',
'document_language' => 'value',
'discount_percent' => 0,
'greeting_text' => 'value',
'closing_text' => 'value',
'notes' => 'value',
'internal_notes' => 'value',
'items' => [],
'recipient_name' => 'value',
'recipient_company' => 'value',
'recipient_email' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
client_uuid: 'value',
contact_uuid: 'value',
quote_number: 'value',
quote_date: 'value',
valid_until: 'value',
signature_type: 'value',
currency_code: 'value',
document_language: 'value',
discount_percent: 0,
greeting_text: 'value',
closing_text: 'value',
notes: 'value',
internal_notes: 'value',
items: [],
recipient_name: 'value',
recipient_company: 'value',
recipient_email: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'client_uuid': 'value',
'contact_uuid': 'value',
'quote_number': 'value',
'quote_date': 'value',
'valid_until': 'value',
'signature_type': 'value',
'currency_code': 'value',
'document_language': 'value',
'discount_percent': 0,
'greeting_text': 'value',
'closing_text': 'value',
'notes': 'value',
'internal_notes': 'value',
'items': [],
'recipient_name': 'value',
'recipient_company': 'value',
'recipient_email': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/quotes',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"quote_number": "AN-2026-0007",
"status": "draft"
}
}
/api/flowaccounting/quotes/{uuid}
curl -X GET "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/quotes/{uuid}
curl -X PUT "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"valid_until": "value", "notes": "value", "items": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}', [
'valid_until' => 'value',
'notes' => 'value',
'items' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
valid_until: 'value',
notes: 'value',
items: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'valid_until': 'value',
'notes': 'value',
'items': [],
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/quotes/{uuid}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/quotes/{uuid}/send
curl -X POST "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/send" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"recipient_emails": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/send', [
'recipient_emails' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/send', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
recipient_emails: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'recipient_emails': [],
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/send',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"sent": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "sent"
}
}
/api/flowaccounting/quotes/{uuid}/withdraw
curl -X POST "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/withdraw" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/withdraw');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/withdraw', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/withdraw',
headers=headers,
)
data = response.json()
/api/flowaccounting/quotes/{uuid}/accept
curl -X POST "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/accept" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/accept');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/accept', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/accept',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "accepted"
}
}
/api/flowaccounting/quotes/{uuid}/convert
curl -X POST "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/convert" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/convert');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/convert', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/convert',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "draft"
}
}
/api/flowaccounting/quotes/{uuid}/pdf
curl -X GET "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/pdf" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/pdf');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/pdf', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/pdf',
headers=headers,
)
data = response.json()
Antwort ist kein JSON-Body.
/api/flowaccounting/quotes/{uuid}/items
curl -X GET "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items',
headers=headers,
)
data = response.json()
/api/flowaccounting/quotes/{uuid}/items
curl -X POST "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "quantity": 0, "unit_price": 0, "tax_rate": 0, "description": "value", "unit": "value", "discount_percent": 0, "type": "value", "position": 0, "product_uuid": "value", "project_uuid": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items', [
'name' => 'value',
'quantity' => 0,
'unit_price' => 0,
'tax_rate' => 0,
'description' => 'value',
'unit' => 'value',
'discount_percent' => 0,
'type' => 'value',
'position' => 0,
'product_uuid' => 'value',
'project_uuid' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
quantity: 0,
unit_price: 0,
tax_rate: 0,
description: 'value',
unit: 'value',
discount_percent: 0,
type: 'value',
position: 0,
product_uuid: 'value',
project_uuid: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'quantity': 0,
'unit_price': 0,
'tax_rate': 0,
'description': 'value',
'unit': 'value',
'discount_percent': 0,
'type': 'value',
'position': 0,
'product_uuid': 'value',
'project_uuid': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/quotes/{uuid}/items/{itemUuid}
curl -X PUT "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"quantity": 0, "unit_price": 0, "tax_rate": 0}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}', [
'quantity' => 0,
'unit_price' => 0,
'tax_rate' => 0,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
quantity: 0,
unit_price: 0,
tax_rate: 0,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'quantity': 0,
'unit_price': 0,
'tax_rate': 0,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/quotes/{uuid}/items/{itemUuid}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/credit-notes
curl -X GET "https://creativeskyline.de/api/flowaccounting/credit-notes" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/credit-notes');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/credit-notes',
headers=headers,
)
data = response.json()
/api/flowaccounting/credit-notes
curl -X POST "https://creativeskyline.de/api/flowaccounting/credit-notes" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"client_uuid": "value", "invoice_uuid": "value", "contact_uuid": "value", "credit_note_number": "value", "credit_note_date": "value", "currency_code": "value", "document_language": "value", "einvoice_format": "value", "notes": "value", "items": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/credit-notes', [
'client_uuid' => 'value',
'invoice_uuid' => 'value',
'contact_uuid' => 'value',
'credit_note_number' => 'value',
'credit_note_date' => 'value',
'currency_code' => 'value',
'document_language' => 'value',
'einvoice_format' => 'value',
'notes' => 'value',
'items' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
client_uuid: 'value',
invoice_uuid: 'value',
contact_uuid: 'value',
credit_note_number: 'value',
credit_note_date: 'value',
currency_code: 'value',
document_language: 'value',
einvoice_format: 'value',
notes: 'value',
items: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'client_uuid': 'value',
'invoice_uuid': 'value',
'contact_uuid': 'value',
'credit_note_number': 'value',
'credit_note_date': 'value',
'currency_code': 'value',
'document_language': 'value',
'einvoice_format': 'value',
'notes': 'value',
'items': [],
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/credit-notes',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "draft"
}
}
/api/flowaccounting/credit-notes/{uuid}
curl -X GET "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/credit-notes/{uuid}
curl -X PUT "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"notes": "value", "items": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}', [
'notes' => 'value',
'items' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
notes: 'value',
items: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'notes': 'value',
'items': [],
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/credit-notes/{uuid}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/credit-notes/{uuid}/issue
curl -X POST "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/issue" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/issue');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/issue', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/issue',
headers=headers,
)
data = response.json()
{
"success": true,
"refund_status": "not_required",
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "issued"
}
}
/api/flowaccounting/credit-notes/{uuid}/settle
curl -X POST "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/settle" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"mode": "value", "amount": 0, "transaction_date": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/settle', [
'mode' => 'value',
'amount' => 0,
'transaction_date' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/settle', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
mode: 'value',
amount: 0,
transaction_date: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'mode': 'value',
'amount': 0,
'transaction_date': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/settle',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "settled"
},
"transaction": {
"uuid": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"type": "credit",
"amount": 238,
"credit_note_uuid": "550e8400-e29b-41d4-a716-446655440000",
"invoice_uuid": "9b2e4f6a-1c3d-4e5f-8a7b-6c5d4e3f2a1b"
},
"invoice": {
"uuid": "9b2e4f6a-1c3d-4e5f-8a7b-6c5d4e3f2a1b",
"invoice_number": "RE-2026-0042",
"status": "partially_paid",
"paid_date": null,
"remaining_amount": 952
}
}
/api/flowaccounting/credit-notes/{uuid}/cancel
curl -X POST "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/cancel" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/cancel');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/cancel', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/cancel',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "cancelled"
}
}
/api/flowaccounting/credit-notes/{uuid}/send
curl -X POST "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/send" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"recipient_emails": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/send', [
'recipient_emails' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/send', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
recipient_emails: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'recipient_emails': [],
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/send',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/credit-notes/{uuid}/pdf
curl -X GET "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/pdf" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/pdf');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/pdf', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/pdf',
headers=headers,
)
data = response.json()
Antwort ist kein JSON-Body.
/api/flowaccounting/expenses
curl -X GET "https://creativeskyline.de/api/flowaccounting/expenses" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/expenses');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/expenses',
headers=headers,
)
data = response.json()
/api/flowaccounting/expenses
curl -X POST "https://creativeskyline.de/api/flowaccounting/expenses" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"booking_date": "value", "gross_amount": 0, "tax_rate": 0, "vat_mode": "value", "currency_code": "value", "supplier_uuid": "value", "expense_category_uuid": "value", "supplier_invoice_number": "value", "description": "value", "notes": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/expenses', [
'booking_date' => 'value',
'gross_amount' => 0,
'tax_rate' => 0,
'vat_mode' => 'value',
'currency_code' => 'value',
'supplier_uuid' => 'value',
'expense_category_uuid' => 'value',
'supplier_invoice_number' => 'value',
'description' => 'value',
'notes' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
booking_date: 'value',
gross_amount: 0,
tax_rate: 0,
vat_mode: 'value',
currency_code: 'value',
supplier_uuid: 'value',
expense_category_uuid: 'value',
supplier_invoice_number: 'value',
description: 'value',
notes: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'booking_date': 'value',
'gross_amount': 0,
'tax_rate': 0,
'vat_mode': 'value',
'currency_code': 'value',
'supplier_uuid': 'value',
'expense_category_uuid': 'value',
'supplier_invoice_number': 'value',
'description': 'value',
'notes': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/expenses',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "pending",
"has_receipt": false
}
}
/api/flowaccounting/expenses/{uuid}
curl -X GET "https://creativeskyline.de/api/flowaccounting/expenses/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/expenses/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/expenses/{uuid}
curl -X PUT "https://creativeskyline.de/api/flowaccounting/expenses/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"gross_amount": 0, "expense_category_uuid": "value", "description": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}', [
'gross_amount' => 0,
'expense_category_uuid' => 'value',
'description' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
gross_amount: 0,
expense_category_uuid: 'value',
description: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'gross_amount': 0,
'expense_category_uuid': 'value',
'description': 'value',
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/expenses/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/expenses/{uuid}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/expenses/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/expenses/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/expenses/{uuid}/receipt
curl -X POST "https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"file": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt', [
'file' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
file: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'file': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"has_receipt": true,
"receipt_name": "beleg.pdf"
}
}
/api/flowaccounting/expenses/{uuid}/book
curl -X POST "https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/book" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"paid_date": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/book', [
'paid_date' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/book', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
paid_date: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'paid_date': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/book',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "booked",
"paid_date": "2026-03-14",
"available_actions": []
}
}
/api/flowaccounting/expenses/{uuid}/receipt
curl -X GET "https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt',
headers=headers,
)
data = response.json()
Antwort ist kein JSON-Body.
/api/flowaccounting/suppliers
curl -X GET "https://creativeskyline.de/api/flowaccounting/suppliers" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/suppliers');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/suppliers', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/suppliers',
headers=headers,
)
data = response.json()
/api/flowaccounting/suppliers
curl -X POST "https://creativeskyline.de/api/flowaccounting/suppliers" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "address": "value", "vat_id": "value", "tax_id": "value", "email": "value", "phone": "value", "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/suppliers', [
'name' => 'value',
'address' => 'value',
'vat_id' => 'value',
'tax_id' => 'value',
'email' => 'value',
'phone' => 'value',
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/suppliers', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
address: 'value',
vat_id: 'value',
tax_id: 'value',
email: 'value',
phone: 'value',
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'address': 'value',
'vat_id': 'value',
'tax_id': 'value',
'email': 'value',
'phone': 'value',
'is_active': True,
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/suppliers',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/suppliers/{uuid}
curl -X GET "https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/suppliers/{uuid}
curl -X PUT "https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}', [
'name' => 'value',
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'is_active': True,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/suppliers/{uuid}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/expense-categories
curl -X GET "https://creativeskyline.de/api/flowaccounting/expense-categories" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/expense-categories');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expense-categories', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/expense-categories',
headers=headers,
)
data = response.json()
/api/flowaccounting/expense-categories
curl -X POST "https://creativeskyline.de/api/flowaccounting/expense-categories" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "number": "value", "parent_uuid": "value", "euer_group": "value", "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/expense-categories', [
'name' => 'value',
'number' => 'value',
'parent_uuid' => 'value',
'euer_group' => 'value',
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expense-categories', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
number: 'value',
parent_uuid: 'value',
euer_group: 'value',
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'number': 'value',
'parent_uuid': 'value',
'euer_group': 'value',
'is_active': True,
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/expense-categories',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/expense-categories/{uuid}
curl -X GET "https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/expense-categories/{uuid}
curl -X PUT "https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}', [
'name' => 'value',
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'is_active': True,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/expense-categories/{uuid}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/income-categories
curl -X GET "https://creativeskyline.de/api/flowaccounting/income-categories" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/income-categories');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/income-categories', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/income-categories',
headers=headers,
)
data = response.json()
/api/flowaccounting/income-categories
curl -X POST "https://creativeskyline.de/api/flowaccounting/income-categories" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "number": "value", "income_group": "value", "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/income-categories', [
'name' => 'value',
'number' => 'value',
'income_group' => 'value',
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/income-categories', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
number: 'value',
income_group: 'value',
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'number': 'value',
'income_group': 'value',
'is_active': True,
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/income-categories',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/income-categories/{uuid}
curl -X GET "https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/income-categories/{uuid}
curl -X PUT "https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}', [
'name' => 'value',
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'is_active': True,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
/api/flowaccounting/income-categories/{uuid}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}',
headers=headers,
)
data = response.json()
/api/flowaccounting/reports/{kind}
curl -X GET "https://creativeskyline.de/api/flowaccounting/reports/{kind}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/reports/{kind}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/reports/{kind}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/reports/{kind}',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"report": "revenue",
"from": "2026-01-01",
"to": "2026-12-31",
"basis": "invoice_date_excluding_drafts_and_cancellations",
"totals": [
{
"currency_code": "EUR",
"net_amount": 48250,
"gross_amount": 57417.5,
"invoice_count": 37
}
]
}
}
/api/flowaccounting/context
curl -X GET "https://creativeskyline.de/api/flowaccounting/context" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/context');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/context', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/context',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"defaults": {
"default_currency": "EUR",
"default_payment_days": 14
},
"tax_rates": [
{
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"name": "Regelsatz",
"rate": 19
}
]
}
}
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/invoices');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices',
headers=headers,
)
data = response.json()
{
"success": true,
"data": [
{
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"invoice_number": "RE-2026-0042",
"status": "sent",
"recipient_name": "Mustermann GmbH",
"total": 1190,
"allowed_transitions": [
"paid",
"cancelled"
]
}
],
"meta": {
"current_page": 1,
"per_page": 15,
"total": 42
}
}
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"recipient_name": "value", "invoice_date": "value", "due_date": "value", "currency_code": "value", "client_uuid": "value", "contact_uuid": "value", "invoice_number": "value", "notes": "value", "payment_method": "value", "stripe_pm_id": "value", "tax_treatment": "value", "document_language": "value", "send": true, "items": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices', [
'recipient_name' => 'value',
'invoice_date' => 'value',
'due_date' => 'value',
'currency_code' => 'value',
'client_uuid' => 'value',
'contact_uuid' => 'value',
'invoice_number' => 'value',
'notes' => 'value',
'payment_method' => 'value',
'stripe_pm_id' => 'value',
'tax_treatment' => 'value',
'document_language' => 'value',
'send' => true,
'items' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
recipient_name: 'value',
invoice_date: 'value',
due_date: 'value',
currency_code: 'value',
client_uuid: 'value',
contact_uuid: 'value',
invoice_number: 'value',
notes: 'value',
payment_method: 'value',
stripe_pm_id: 'value',
tax_treatment: 'value',
document_language: 'value',
send: true,
items: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'recipient_name': 'value',
'invoice_date': 'value',
'due_date': 'value',
'currency_code': 'value',
'client_uuid': 'value',
'contact_uuid': 'value',
'invoice_number': 'value',
'notes': 'value',
'payment_method': 'value',
'stripe_pm_id': 'value',
'tax_treatment': 'value',
'document_language': 'value',
'send': True,
'items': [],
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"invoice_number": "RE-2026-0042",
"status": "draft"
}
}
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"invoice_number": "RE-2026-0042",
"original_invoice_number": null,
"status": "paid",
"invoice_date": "2026-01-10T00:00:00+01:00",
"due_date": "2026-01-24T00:00:00+01:00",
"sent_date": "2026-01-10",
"paid_date": "2026-01-20",
"total": 1190,
"currency_code": "EUR",
"payment_method": "bank_transfer",
"total_paid": 1190,
"remaining_amount": 0,
"allowed_transitions": [
"cancelled"
],
"items": [
{
"uuid": "3f2b1c4d-5e6f-4a7b-8c9d-0e1f2a3b4c5d",
"name": "Beratung",
"quantity": 10,
"unit_price": 100,
"tax_rate": 19,
"total": 1190
}
],
"transactions": [
{
"uuid": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"type": "payment",
"amount": 952,
"currency_code": "EUR",
"transaction_date": "2026-01-16T00:00:00+01:00"
},
{
"uuid": "1d4e5f6a-7b8c-4d9e-a0b1-c2d3e4f5a6b7",
"type": "credit",
"amount": 238,
"currency_code": "EUR",
"transaction_date": "2026-01-20T00:00:00+01:00"
}
],
"credit_notes": [
{
"uuid": "9b2e4f6a-1c3d-4e5f-8a7b-6c5d4e3f2a1b",
"credit_note_number": "GS-2026-0003",
"status": "settled",
"credit_note_date": "2026-01-20",
"total": 238,
"currency_code": "EUR"
}
]
}
}
curl -X PUT "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"recipient_name": "value", "due_date": "value", "notes": "value", "document_language": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}', [
'recipient_name' => 'value',
'due_date' => 'value',
'notes' => 'value',
'document_language' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
recipient_name: 'value',
due_date: 'value',
notes: 'value',
document_language: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'recipient_name': 'value',
'due_date': 'value',
'notes': 'value',
'document_language': 'value',
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/status" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"status": "value", "sent_date": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/status', [
'status' => 'value',
'sent_date' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/status', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
status: 'value',
sent_date: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'status': 'value',
'sent_date': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/status',
headers=headers,
json=payload,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/send" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/send');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/send', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/send',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/pdf" \
--output rechnung.pdf
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->withHeaders(['Accept' => 'application/pdf'])
->get('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf');
file_put_contents('rechnung.pdf', $response->body());
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf', {
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/pdf',
},
});
const blob = await response.blob();
const url = URL.createObjectURL(blob);
import requests
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf',
headers={'Authorization': 'Bearer YOUR_API_TOKEN', 'Accept': 'application/pdf'},
)
with open('rechnung.pdf', 'wb') as f:
f.write(response.content)
Antwort ist ein Datei-Download (Content-Type: application/pdf). Kein JSON-Body.
# Team-Einstellung: einvoice_format = zugferd
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/pdf" \
--output rechnung-zugferd.pdf
use Illuminate\Support\Facades\Http;
// Team-Einstellung: einvoice_format = zugferd
$response = Http::withToken('YOUR_API_TOKEN')
->withHeaders(['Accept' => 'application/pdf'])
->get('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf');
file_put_contents('rechnung-zugferd.pdf', $response->body());
// Team-Einstellung: einvoice_format = zugferd
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf', {
headers: {'Authorization': 'Bearer YOUR_API_TOKEN', 'Accept': 'application/pdf'},
});
const blob = await response.blob();
# Team-Einstellung: einvoice_format = zugferd
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf',
headers={'Authorization': 'Bearer YOUR_API_TOKEN', 'Accept': 'application/pdf'},
)
with open('rechnung-zugferd.pdf', 'wb') as f:
f.write(response.content)
Antwort ist ein PDF-Download mit eingebettetem ZUGFeRD-XML (PDF/A-3).
# Team-Einstellung: einvoice_format = xrechnung
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/xml" \
--output rechnung.xml
use Illuminate\Support\Facades\Http;
// Team-Einstellung: einvoice_format = xrechnung
$response = Http::withToken('YOUR_API_TOKEN')
->withHeaders(['Accept' => 'application/xml'])
->get('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf');
file_put_contents('rechnung.xml', $response->body());
// Team-Einstellung: einvoice_format = xrechnung
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf', {
headers: {'Authorization': 'Bearer YOUR_API_TOKEN', 'Accept': 'application/xml'},
});
const xml = await response.text();
# Team-Einstellung: einvoice_format = xrechnung
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/pdf',
headers={'Authorization': 'Bearer YOUR_API_TOKEN', 'Accept': 'application/xml'},
)
with open('rechnung.xml', 'wb') as f:
f.write(response.content)
Antwort ist ein XML-Download (Content-Type: application/xml).
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/duplicate" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/duplicate');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/duplicate', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/duplicate',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/correct" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/correct');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/correct', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/correct',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"invoice_number": "RE-2026-0042-1",
"status": "draft"
}
}
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/dunning" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"level": "value", "recipient_emails": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/dunning', [
'level' => 'value',
'recipient_emails' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/dunning', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
level: 'value',
recipient_emails: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'level': 'value',
'recipient_emails': [],
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/dunning',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"level": "reminder",
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "overdue"
}
}
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/mark-paid" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"stripe_payment_intent_id": "value", "date_paid": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/mark-paid', [
'stripe_payment_intent_id' => 'value',
'date_paid' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/mark-paid', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
stripe_payment_intent_id: 'value',
date_paid: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'stripe_payment_intent_id': 'value',
'date_paid': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/mark-paid',
headers=headers,
json=payload,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/record-payment-intent" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"stripe_payment_intent_id": "value", "status": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/record-payment-intent', [
'stripe_payment_intent_id' => 'value',
'status' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/record-payment-intent', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
stripe_payment_intent_id: 'value',
status: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'stripe_payment_intent_id': 'value',
'status': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/record-payment-intent',
headers=headers,
json=payload,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/charge" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/charge');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/charge', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/charge',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/payment-status" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/payment-status');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/payment-status', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/payment-status',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"quantity": 0, "unit_price": 0, "name": "value", "description": "value", "tax_rate": 0, "unit": "value", "product_uuid": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items', [
'quantity' => 0,
'unit_price' => 0,
'name' => 'value',
'description' => 'value',
'tax_rate' => 0,
'unit' => 'value',
'product_uuid' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
quantity: 0,
unit_price: 0,
name: 'value',
description: 'value',
tax_rate: 0,
unit: 'value',
product_uuid: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'quantity': 0,
'unit_price': 0,
'name': 'value',
'description': 'value',
'tax_rate': 0,
'unit': 'value',
'product_uuid': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items',
headers=headers,
json=payload,
)
data = response.json()
curl -X PUT "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"quantity": 0, "unit_price": 0, "name": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}', [
'quantity' => 0,
'unit_price' => 0,
'name' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
quantity: 0,
unit_price: 0,
name: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'quantity': 0,
'unit_price': 0,
'name': 'value',
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}',
headers=headers,
json=payload,
)
data = response.json()
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/items/{itemUuid}',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"type": "value", "amount": 0, "transaction_date": "value", "payment_method": "value", "reference": "value", "notes": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions', [
'type' => 'value',
'amount' => 0,
'transaction_date' => 'value',
'payment_method' => 'value',
'reference' => 'value',
'notes' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
type: 'value',
amount: 0,
transaction_date: 'value',
payment_method: 'value',
reference: 'value',
notes: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'type': 'value',
'amount': 0,
'transaction_date': 'value',
'payment_method': 'value',
'reference': 'value',
'notes': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"amount": 1190,
"currency_code": "EUR",
"type": "payment",
"transaction_date": "2026-01-16T00:00:00+00:00"
},
"invoice": {
"uuid": "550e8400-...",
"status": "paid",
"paid_date": "2026-01-16",
"total_paid": 1190,
"remaining_amount": 0
}
}
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions/{transactionUuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions/{transactionUuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions/{transactionUuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/invoices/{uuid}/transactions/{transactionUuid}',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/transactions" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/transactions');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/transactions', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/transactions',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/products" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/products');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/products', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/products',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/products/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/products/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/products/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/products/{uuid}',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/products" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"title": "value", "unit_price": 0, "unit_price_gross": 0, "tax_rate": 0, "description": "value", "unit": "value", "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/products', [
'title' => 'value',
'unit_price' => 0,
'unit_price_gross' => 0,
'tax_rate' => 0,
'description' => 'value',
'unit' => 'value',
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/products', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
title: 'value',
unit_price: 0,
unit_price_gross: 0,
tax_rate: 0,
description: 'value',
unit: 'value',
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'title': 'value',
'unit_price': 0,
'unit_price_gross': 0,
'tax_rate': 0,
'description': 'value',
'unit': 'value',
'is_active': True,
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/products',
headers=headers,
json=payload,
)
data = response.json()
curl -X PUT "https://creativeskyline.de/api/flowaccounting/products/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"title": "value", "unit_price": 0, "unit_price_gross": 0, "tax_rate": 0, "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/products/{uuid}', [
'title' => 'value',
'unit_price' => 0,
'unit_price_gross' => 0,
'tax_rate' => 0,
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/products/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
title: 'value',
unit_price: 0,
unit_price_gross: 0,
tax_rate: 0,
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'title': 'value',
'unit_price': 0,
'unit_price_gross': 0,
'tax_rate': 0,
'is_active': True,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/products/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/products/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/products/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/products/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/products/{uuid}',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/tax-rates" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/tax-rates');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/tax-rates', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/tax-rates',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/tax-rates" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "rate": 0, "description": "value", "is_default": true, "is_active": true, "sort_order": 0}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/tax-rates', [
'name' => 'value',
'rate' => 0,
'description' => 'value',
'is_default' => true,
'is_active' => true,
'sort_order' => 0,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/tax-rates', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
rate: 0,
description: 'value',
is_default: true,
is_active: true,
sort_order: 0,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'rate': 0,
'description': 'value',
'is_default': True,
'is_active': True,
'sort_order': 0,
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/tax-rates',
headers=headers,
json=payload,
)
data = response.json()
curl -X PUT "https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "rate": 0, "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}', [
'name' => 'value',
'rate' => 0,
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
rate: 0,
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'rate': 0,
'is_active': True,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}/default" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}/default');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}/default', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/tax-rates/{uuid}/default',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/recurring-invoices" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/recurring-invoices');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/recurring-invoices" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"client_uuid": "value", "interval_value": 0, "interval_unit": "value", "start_date": "value", "template_items": [], "auto_send": true, "end_date": "value", "status": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/recurring-invoices', [
'client_uuid' => 'value',
'interval_value' => 0,
'interval_unit' => 'value',
'start_date' => 'value',
'template_items' => [],
'auto_send' => true,
'end_date' => 'value',
'status' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
client_uuid: 'value',
interval_value: 0,
interval_unit: 'value',
start_date: 'value',
template_items: [],
auto_send: true,
end_date: 'value',
status: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'client_uuid': 'value',
'interval_value': 0,
'interval_unit': 'value',
'start_date': 'value',
'template_items': [],
'auto_send': True,
'end_date': 'value',
'status': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices',
headers=headers,
json=payload,
)
data = response.json()
curl -X PUT "https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"interval_value": 0, "interval_unit": "value", "auto_send": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}', [
'interval_value' => 0,
'interval_unit' => 'value',
'auto_send' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
interval_value: 0,
interval_unit: 'value',
auto_send: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'interval_value': 0,
'interval_unit': 'value',
'auto_send': True,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/pause" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/pause');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/pause', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/pause',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/activate" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"auto_send": true, "auto_charge": true, "recipient_emails": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/activate', [
'auto_send' => true,
'auto_charge' => true,
'recipient_emails' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/activate', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
auto_send: true,
auto_charge: true,
recipient_emails: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'auto_send': True,
'auto_charge': True,
'recipient_emails': [],
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/activate',
headers=headers,
json=payload,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/generate" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/generate');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/generate', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/recurring-invoices/{uuid}/generate',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"invoice_number": "RE-2026-0042",
"status": "sent"
}
}
curl -X GET "https://creativeskyline.de/api/flowaccounting/billable-items" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/billable-items');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/billable-items', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/billable-items',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/billable-items" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"client_uuid": "value", "description": "value", "unit_price": 0, "quantity": 0, "unit": "value", "tax_rate": 0, "due_date": "value", "auto_bill": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/billable-items', [
'client_uuid' => 'value',
'description' => 'value',
'unit_price' => 0,
'quantity' => 0,
'unit' => 'value',
'tax_rate' => 0,
'due_date' => 'value',
'auto_bill' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/billable-items', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
client_uuid: 'value',
description: 'value',
unit_price: 0,
quantity: 0,
unit: 'value',
tax_rate: 0,
due_date: 'value',
auto_bill: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'client_uuid': 'value',
'description': 'value',
'unit_price': 0,
'quantity': 0,
'unit': 'value',
'tax_rate': 0,
'due_date': 'value',
'auto_bill': True,
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/billable-items',
headers=headers,
json=payload,
)
data = response.json()
curl -X PUT "https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"description": "value", "unit_price": 0, "quantity": 0}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}', [
'description' => 'value',
'unit_price' => 0,
'quantity' => 0,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
description: 'value',
unit_price: 0,
quantity: 0,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'description': 'value',
'unit_price': 0,
'quantity': 0,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/billable-items/consolidate" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"uuids": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/billable-items/consolidate', [
'uuids' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/billable-items/consolidate', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
uuids: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'uuids': [],
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/billable-items/consolidate',
headers=headers,
json=payload,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}/generate" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}/generate');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}/generate', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/billable-items/{uuid}/generate',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "draft"
}
}
curl -X GET "https://creativeskyline.de/api/flowaccounting/quotes" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/quotes');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/quotes',
headers=headers,
)
data = response.json()
{
"success": true,
"data": [
{
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"quote_number": "AN-2026-0007",
"status": "sent",
"total": 1190,
"available_actions": [
"send",
"withdraw"
]
}
],
"meta": {
"current_page": 1,
"per_page": 25,
"total": 7
}
}
curl -X POST "https://creativeskyline.de/api/flowaccounting/quotes" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"client_uuid": "value", "contact_uuid": "value", "quote_number": "value", "quote_date": "value", "valid_until": "value", "signature_type": "value", "currency_code": "value", "document_language": "value", "discount_percent": 0, "greeting_text": "value", "closing_text": "value", "notes": "value", "internal_notes": "value", "items": [], "recipient_name": "value", "recipient_company": "value", "recipient_email": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/quotes', [
'client_uuid' => 'value',
'contact_uuid' => 'value',
'quote_number' => 'value',
'quote_date' => 'value',
'valid_until' => 'value',
'signature_type' => 'value',
'currency_code' => 'value',
'document_language' => 'value',
'discount_percent' => 0,
'greeting_text' => 'value',
'closing_text' => 'value',
'notes' => 'value',
'internal_notes' => 'value',
'items' => [],
'recipient_name' => 'value',
'recipient_company' => 'value',
'recipient_email' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
client_uuid: 'value',
contact_uuid: 'value',
quote_number: 'value',
quote_date: 'value',
valid_until: 'value',
signature_type: 'value',
currency_code: 'value',
document_language: 'value',
discount_percent: 0,
greeting_text: 'value',
closing_text: 'value',
notes: 'value',
internal_notes: 'value',
items: [],
recipient_name: 'value',
recipient_company: 'value',
recipient_email: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'client_uuid': 'value',
'contact_uuid': 'value',
'quote_number': 'value',
'quote_date': 'value',
'valid_until': 'value',
'signature_type': 'value',
'currency_code': 'value',
'document_language': 'value',
'discount_percent': 0,
'greeting_text': 'value',
'closing_text': 'value',
'notes': 'value',
'internal_notes': 'value',
'items': [],
'recipient_name': 'value',
'recipient_company': 'value',
'recipient_email': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/quotes',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"quote_number": "AN-2026-0007",
"status": "draft"
}
}
curl -X GET "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}',
headers=headers,
)
data = response.json()
curl -X PUT "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"valid_until": "value", "notes": "value", "items": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}', [
'valid_until' => 'value',
'notes' => 'value',
'items' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
valid_until: 'value',
notes: 'value',
items: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'valid_until': 'value',
'notes': 'value',
'items': [],
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/send" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"recipient_emails": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/send', [
'recipient_emails' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/send', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
recipient_emails: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'recipient_emails': [],
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/send',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"sent": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "sent"
}
}
curl -X POST "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/withdraw" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/withdraw');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/withdraw', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/withdraw',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/accept" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/accept');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/accept', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/accept',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "accepted"
}
}
curl -X POST "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/convert" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/convert');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/convert', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/convert',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "draft"
}
}
curl -X GET "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/pdf" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/pdf');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/pdf', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/pdf',
headers=headers,
)
data = response.json()
Antwort ist kein JSON-Body.
curl -X GET "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "quantity": 0, "unit_price": 0, "tax_rate": 0, "description": "value", "unit": "value", "discount_percent": 0, "type": "value", "position": 0, "product_uuid": "value", "project_uuid": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items', [
'name' => 'value',
'quantity' => 0,
'unit_price' => 0,
'tax_rate' => 0,
'description' => 'value',
'unit' => 'value',
'discount_percent' => 0,
'type' => 'value',
'position' => 0,
'product_uuid' => 'value',
'project_uuid' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
quantity: 0,
unit_price: 0,
tax_rate: 0,
description: 'value',
unit: 'value',
discount_percent: 0,
type: 'value',
position: 0,
product_uuid: 'value',
project_uuid: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'quantity': 0,
'unit_price': 0,
'tax_rate': 0,
'description': 'value',
'unit': 'value',
'discount_percent': 0,
'type': 'value',
'position': 0,
'product_uuid': 'value',
'project_uuid': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items',
headers=headers,
json=payload,
)
data = response.json()
curl -X PUT "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"quantity": 0, "unit_price": 0, "tax_rate": 0}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}', [
'quantity' => 0,
'unit_price' => 0,
'tax_rate' => 0,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
quantity: 0,
unit_price: 0,
tax_rate: 0,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'quantity': 0,
'unit_price': 0,
'tax_rate': 0,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}',
headers=headers,
json=payload,
)
data = response.json()
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/quotes/{uuid}/items/{itemUuid}',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/credit-notes" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/credit-notes');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/credit-notes',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/credit-notes" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"client_uuid": "value", "invoice_uuid": "value", "contact_uuid": "value", "credit_note_number": "value", "credit_note_date": "value", "currency_code": "value", "document_language": "value", "einvoice_format": "value", "notes": "value", "items": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/credit-notes', [
'client_uuid' => 'value',
'invoice_uuid' => 'value',
'contact_uuid' => 'value',
'credit_note_number' => 'value',
'credit_note_date' => 'value',
'currency_code' => 'value',
'document_language' => 'value',
'einvoice_format' => 'value',
'notes' => 'value',
'items' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
client_uuid: 'value',
invoice_uuid: 'value',
contact_uuid: 'value',
credit_note_number: 'value',
credit_note_date: 'value',
currency_code: 'value',
document_language: 'value',
einvoice_format: 'value',
notes: 'value',
items: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'client_uuid': 'value',
'invoice_uuid': 'value',
'contact_uuid': 'value',
'credit_note_number': 'value',
'credit_note_date': 'value',
'currency_code': 'value',
'document_language': 'value',
'einvoice_format': 'value',
'notes': 'value',
'items': [],
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/credit-notes',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "draft"
}
}
curl -X GET "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}',
headers=headers,
)
data = response.json()
curl -X PUT "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"notes": "value", "items": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}', [
'notes' => 'value',
'items' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
notes: 'value',
items: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'notes': 'value',
'items': [],
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/issue" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/issue');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/issue', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/issue',
headers=headers,
)
data = response.json()
{
"success": true,
"refund_status": "not_required",
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "issued"
}
}
curl -X POST "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/settle" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"mode": "value", "amount": 0, "transaction_date": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/settle', [
'mode' => 'value',
'amount' => 0,
'transaction_date' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/settle', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
mode: 'value',
amount: 0,
transaction_date: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'mode': 'value',
'amount': 0,
'transaction_date': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/settle',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "settled"
},
"transaction": {
"uuid": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"type": "credit",
"amount": 238,
"credit_note_uuid": "550e8400-e29b-41d4-a716-446655440000",
"invoice_uuid": "9b2e4f6a-1c3d-4e5f-8a7b-6c5d4e3f2a1b"
},
"invoice": {
"uuid": "9b2e4f6a-1c3d-4e5f-8a7b-6c5d4e3f2a1b",
"invoice_number": "RE-2026-0042",
"status": "partially_paid",
"paid_date": null,
"remaining_amount": 952
}
}
curl -X POST "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/cancel" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/cancel');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/cancel', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/cancel',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "cancelled"
}
}
curl -X POST "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/send" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"recipient_emails": []}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/send', [
'recipient_emails' => [],
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/send', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
recipient_emails: [],
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'recipient_emails': [],
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/send',
headers=headers,
json=payload,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/pdf" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/pdf');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/pdf', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/credit-notes/{uuid}/pdf',
headers=headers,
)
data = response.json()
Antwort ist kein JSON-Body.
curl -X GET "https://creativeskyline.de/api/flowaccounting/expenses" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/expenses');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/expenses',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/expenses" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"booking_date": "value", "gross_amount": 0, "tax_rate": 0, "vat_mode": "value", "currency_code": "value", "supplier_uuid": "value", "expense_category_uuid": "value", "supplier_invoice_number": "value", "description": "value", "notes": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/expenses', [
'booking_date' => 'value',
'gross_amount' => 0,
'tax_rate' => 0,
'vat_mode' => 'value',
'currency_code' => 'value',
'supplier_uuid' => 'value',
'expense_category_uuid' => 'value',
'supplier_invoice_number' => 'value',
'description' => 'value',
'notes' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
booking_date: 'value',
gross_amount: 0,
tax_rate: 0,
vat_mode: 'value',
currency_code: 'value',
supplier_uuid: 'value',
expense_category_uuid: 'value',
supplier_invoice_number: 'value',
description: 'value',
notes: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'booking_date': 'value',
'gross_amount': 0,
'tax_rate': 0,
'vat_mode': 'value',
'currency_code': 'value',
'supplier_uuid': 'value',
'expense_category_uuid': 'value',
'supplier_invoice_number': 'value',
'description': 'value',
'notes': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/expenses',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "pending",
"has_receipt": false
}
}
curl -X GET "https://creativeskyline.de/api/flowaccounting/expenses/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/expenses/{uuid}',
headers=headers,
)
data = response.json()
curl -X PUT "https://creativeskyline.de/api/flowaccounting/expenses/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"gross_amount": 0, "expense_category_uuid": "value", "description": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}', [
'gross_amount' => 0,
'expense_category_uuid' => 'value',
'description' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
gross_amount: 0,
expense_category_uuid: 'value',
description: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'gross_amount': 0,
'expense_category_uuid': 'value',
'description': 'value',
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/expenses/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/expenses/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/expenses/{uuid}',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"file": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt', [
'file' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
file: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'file': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"has_receipt": true,
"receipt_name": "beleg.pdf"
}
}
curl -X POST "https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/book" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"paid_date": "value"}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/book', [
'paid_date' => 'value',
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/book', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
paid_date: 'value',
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'paid_date': 'value',
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/book',
headers=headers,
json=payload,
)
data = response.json()
{
"success": true,
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"status": "booked",
"paid_date": "2026-03-14",
"available_actions": []
}
}
curl -X GET "https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/expenses/{uuid}/receipt',
headers=headers,
)
data = response.json()
Antwort ist kein JSON-Body.
curl -X GET "https://creativeskyline.de/api/flowaccounting/suppliers" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/suppliers');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/suppliers', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/suppliers',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/suppliers" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "address": "value", "vat_id": "value", "tax_id": "value", "email": "value", "phone": "value", "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/suppliers', [
'name' => 'value',
'address' => 'value',
'vat_id' => 'value',
'tax_id' => 'value',
'email' => 'value',
'phone' => 'value',
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/suppliers', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
address: 'value',
vat_id: 'value',
tax_id: 'value',
email: 'value',
phone: 'value',
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'address': 'value',
'vat_id': 'value',
'tax_id': 'value',
'email': 'value',
'phone': 'value',
'is_active': True,
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/suppliers',
headers=headers,
json=payload,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}',
headers=headers,
)
data = response.json()
curl -X PUT "https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}', [
'name' => 'value',
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'is_active': True,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/suppliers/{uuid}',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/expense-categories" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/expense-categories');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expense-categories', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/expense-categories',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/expense-categories" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "number": "value", "parent_uuid": "value", "euer_group": "value", "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/expense-categories', [
'name' => 'value',
'number' => 'value',
'parent_uuid' => 'value',
'euer_group' => 'value',
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expense-categories', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
number: 'value',
parent_uuid: 'value',
euer_group: 'value',
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'number': 'value',
'parent_uuid': 'value',
'euer_group': 'value',
'is_active': True,
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/expense-categories',
headers=headers,
json=payload,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}',
headers=headers,
)
data = response.json()
curl -X PUT "https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}', [
'name' => 'value',
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'is_active': True,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/expense-categories/{uuid}',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/income-categories" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/income-categories');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/income-categories', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/income-categories',
headers=headers,
)
data = response.json()
curl -X POST "https://creativeskyline.de/api/flowaccounting/income-categories" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "number": "value", "income_group": "value", "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->post('https://creativeskyline.de/api/flowaccounting/income-categories', [
'name' => 'value',
'number' => 'value',
'income_group' => 'value',
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/income-categories', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
number: 'value',
income_group: 'value',
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'number': 'value',
'income_group': 'value',
'is_active': True,
}
response = requests.post(
'https://creativeskyline.de/api/flowaccounting/income-categories',
headers=headers,
json=payload,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}',
headers=headers,
)
data = response.json()
curl -X PUT "https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "value", "is_active": true}'
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->put('https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}', [
'name' => 'value',
'is_active' => true,
]);
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
name: 'value',
is_active: true,
}),
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
payload = {
'name': 'value',
'is_active': True,
}
response = requests.put(
'https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}',
headers=headers,
json=payload,
)
data = response.json()
curl -X DELETE "https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->delete('https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}', {
method: 'DELETE',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.delete(
'https://creativeskyline.de/api/flowaccounting/income-categories/{uuid}',
headers=headers,
)
data = response.json()
curl -X GET "https://creativeskyline.de/api/flowaccounting/reports/{kind}" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/reports/{kind}');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/reports/{kind}', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/reports/{kind}',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"report": "revenue",
"from": "2026-01-01",
"to": "2026-12-31",
"basis": "invoice_date_excluding_drafts_and_cancellations",
"totals": [
{
"currency_code": "EUR",
"net_amount": 48250,
"gross_amount": 57417.5,
"invoice_count": 37
}
]
}
}
curl -X GET "https://creativeskyline.de/api/flowaccounting/context" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
use Illuminate\Support\Facades\Http;
$response = Http::withToken('YOUR_API_TOKEN')
->get('https://creativeskyline.de/api/flowaccounting/context');
$data = $response->json();
const response = await fetch('https://creativeskyline.de/api/flowaccounting/context', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
},
});
const data = await response.json();
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json',
}
response = requests.get(
'https://creativeskyline.de/api/flowaccounting/context',
headers=headers,
)
data = response.json()
{
"success": true,
"data": {
"defaults": {
"default_currency": "EUR",
"default_payment_days": 14
},
"tax_rates": [
{
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"name": "Regelsatz",
"rate": 19
}
]
}
}