{"titel":"NexTime — Datenpaket","stand":"2026-11-01","format":{"zip":"Eine ZIP-Datei. Die Tabellen (.csv) für Excel und Co., daneben im Ordner daten/ jede Tabelle vollständig als JSON.","json":"UTF-8, je Datei eine Liste von Objekten. Feldnamen = Spaltennamen der Datenbank. Zeitpunkte in ISO 8601 (UTC), Tage als JJJJ-MM-TT, Beträge in Cent.","csv":"UTF-8 mit BOM, Semikolon als Trennzeichen — öffnet sich mit Doppelklick in Excel."},"csvDateien":[{"datei":"termine.csv","inhalt":"Alle Termine als Tabelle"},{"datei":"leistungen.csv","inhalt":"Leistungen mit Dauer, Puffer und Preis"},{"datei":"standorte.csv","inhalt":"Standorte mit Anschrift (falls vorhanden)"},{"datei":"abwesenheiten.csv","inhalt":"Urlaub und Abwesenheit (falls vorhanden)"},{"datei":"kunden.csv","inhalt":"Die Kartei (wenn der Betrieb eine führt)"},{"datei":"einwilligungen.csv","inhalt":"Einwilligungen (wenn der Betrieb eine Kartei führt)"},{"datei":"belege.csv","inhalt":"Eine Zeile je Belegposition (wenn der Betrieb Belege ausstellt)"}],"dateien":[{"datei":"daten/termine.json","schnittstelle":"/api/v1/daten/termine","bereich":"termine","titel":"Termine","beschreibung":"Alle Termine und Sperrzeiten, auch abgesagte und solche im Papierkorb — mit Absage-, Verschiebe- und Bestätigungsangaben. Der feinere Verlauf je Termin steht im Änderungsprotokoll (protokoll.json, entity_id = Termin).","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"staff_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kalenders — einer Person oder eines Raums (siehe kalender.json)"},{"name":"kind","typ":"string","werte":["appointment","block"],"leer":false,"bedeutung":"appointment = Termin, block = Sperrzeit"},{"name":"service_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung der Leistung (siehe leistungen.json)"},{"name":"service_name","typ":"string","leer":true,"bedeutung":"Name der Leistung zum Zeitpunkt der Buchung"},{"name":"duration_min","typ":"integer","leer":true,"bedeutung":"Dauer in Minuten"},{"name":"price_cents","typ":"integer","leer":true,"bedeutung":"Preis in Cent"},{"name":"customer_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Kontakts (siehe kunden.json)"},{"name":"title","typ":"string","leer":true,"bedeutung":"Titel (bei Sperrzeiten und internen Terminen)"},{"name":"start_at","typ":"string (date-time)","leer":false,"bedeutung":"Beginn (ISO 8601, UTC)"},{"name":"end_at","typ":"string (date-time)","leer":false,"bedeutung":"Ende (ISO 8601, UTC)"},{"name":"status","typ":"string","werte":["held","pending","confirmed","cancelled","no_show","done"],"leer":false,"bedeutung":"held = vorgemerkt, pending = offen, confirmed = bestätigt, cancelled = abgesagt, no_show = nicht erschienen, done = erledigt"},{"name":"source","typ":"string","werte":["online_website","online_whatsapp","online_direct","manual","phone","walk_in"],"leer":false,"bedeutung":"Woher der Termin kam: Website, WhatsApp, Buchungslink, von Hand, Telefon, ohne Termin"},{"name":"expires_at","typ":"string (date-time)","leer":true,"bedeutung":"Nur bei vorgemerkten Terminen: so lange ist die Zeit reserviert"},{"name":"idempotency_key","typ":"string","leer":true,"bedeutung":"Kennung des anfragenden Systems gegen doppelte Buchungen"},{"name":"overlap_ok","typ":"boolean","leer":false,"bedeutung":"Überschneidung bewusst zugelassen"},{"name":"import_uid","typ":"string","leer":true,"bedeutung":"Kennung aus einer eingelesenen Kalenderdatei (.ics)"},{"name":"customer_note","typ":"string","leer":true,"bedeutung":"Hinweis des Kontakts bei der Buchung"},{"name":"fragen_antworten","typ":"object","leer":true,"bedeutung":"Antworten auf die Fragen vor der Buchung"},{"name":"notes","typ":"string","leer":true,"bedeutung":"Interne Notiz"},{"name":"location","typ":"string","leer":true,"bedeutung":"Ort des Termins"},{"name":"meeting_url","typ":"string","leer":true,"bedeutung":"Link zum Videoraum"},{"name":"buchungs_email","typ":"string","leer":true,"bedeutung":"E-Mail aus der Online-Buchung, wenn sie von der Kartei abweicht; Nachrichten zu diesem Termin gehen dorthin"},{"name":"color","typ":"string","leer":true,"bedeutung":"Farbe in der Anzeige"},{"name":"series_text","typ":"string","leer":true,"bedeutung":"Hinweis zur Wiederholung, wie angezeigt"},{"name":"idempotenz_schluessel","typ":"string","leer":true,"bedeutung":"Kennung gegen doppeltes Anlegen aus der Oberfläche"},{"name":"besuch_id","typ":"string (uuid)","leer":true,"bedeutung":"Gemeinsame Kennung mehrerer Termine eines Besuchs; leer = einzelner Termin"},{"name":"manage_token_expires_at","typ":"string (date-time)","leer":true,"bedeutung":"Bis wann der Verwaltungslink des Kontakts gilt"},{"name":"confirmed_at","typ":"string (date-time)","leer":true,"bedeutung":"Bestätigt am"},{"name":"zusage_kundin_at","typ":"string (date-time)","leer":true,"bedeutung":"Der Kontakt hat über den Link zugesagt am"},{"name":"cancelled_at","typ":"string (date-time)","leer":true,"bedeutung":"Abgesagt am"},{"name":"cancelled_by","typ":"string","werte":["customer","owner","system"],"leer":true,"bedeutung":"Abgesagt von: customer = Kontakt, owner = Betrieb, system = automatisch"},{"name":"cancel_reason","typ":"string","leer":true,"bedeutung":"Grund der Absage"},{"name":"rescheduled_from_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Termins, aus dem dieser verschoben wurde"},{"name":"series_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung der Serie (siehe serien.json)"},{"name":"deleted_at","typ":"string (date-time)","leer":true,"bedeutung":"In den Papierkorb gelegt am; leer = nicht gelöscht"},{"name":"client_tz","typ":"string","leer":true,"bedeutung":"Zeitzone des Geräts bei der Buchung (nur zur Fehlersuche)"},{"name":"created_by_user_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs, der es angelegt hat"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":["Anmeldegeheimnis — gehört nicht in eine Datei, die weitergegeben wird."]},{"datei":"daten/termin_teilnehmer.json","schnittstelle":"/api/v1/daten/termin_teilnehmer","bereich":"termine","titel":"Eingeladene zu Terminen","beschreibung":"Wer aus dem Team zu einem Termin eingeladen ist und wie er geantwortet hat.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"appointment_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Termins (siehe termine.json)"},{"name":"user_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Zugangs (siehe zugaenge.json)"},{"name":"zusage","typ":"string","leer":false,"bedeutung":"offen, zugesagt oder abgesagt"},{"name":"geantwortet_am","typ":"string (date-time)","leer":true,"bedeutung":"Geantwortet am"},{"name":"eingeladen_am","typ":"string (date-time)","leer":false,"bedeutung":"Eingeladen am"},{"name":"eingeladen_von","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs, der eingeladen hat"}],"nichtEnthalten":[]},{"datei":"daten/termin_mitwirkende.json","schnittstelle":"/api/v1/daten/termin_mitwirkende","bereich":"termine","titel":"Weitere Kalender je Termin","beschreibung":"Termine, die mehrere Kalender zugleich belegen (etwa eine zweite Person oder einen Raum).","felder":[{"name":"appointment_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Termins (siehe termine.json)"},{"name":"staff_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kalenders — einer Person oder eines Raums (siehe kalender.json)"}],"nichtEnthalten":[]},{"datei":"daten/serien.json","schnittstelle":"/api/v1/daten/serien","bereich":"termine","titel":"Serien","beschreibung":"Wiederkehrende Termine: die Regel, nach der neue Termine nachgefüllt werden.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"staff_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kalenders — einer Person oder eines Raums (siehe kalender.json)"},{"name":"regel","typ":"object","leer":false,"bedeutung":"Wiederholungsregel (Takt, Wochentage, Ende)"},{"name":"letzter_tag","typ":"string","leer":false,"bedeutung":"Bis zu diesem Tag sind Termine angelegt"},{"name":"uhrzeit","typ":"string","leer":false,"bedeutung":"Uhrzeit in deutscher Ortszeit (HH:MM)"},{"name":"dauer_min","typ":"integer","leer":false,"bedeutung":"Dauer in Minuten"},{"name":"beendet_at","typ":"string (date-time)","leer":true,"bedeutung":"Serie beendet am; leer = läuft"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/umfragen.json","schnittstelle":"/api/v1/daten/umfragen","bereich":"termine","titel":"Terminumfragen","beschreibung":"Umfragen, mit denen mehrere Personen einen gemeinsamen Termin finden.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"staff_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kalenders — einer Person oder eines Raums (siehe kalender.json)"},{"name":"erstellt_von","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs, der es angelegt hat"},{"name":"titel","typ":"string","leer":false,"bedeutung":"Titel"},{"name":"dauer_min","typ":"integer","leer":false,"bedeutung":"Dauer in Minuten"},{"name":"ort","typ":"string","leer":true,"bedeutung":"Ort"},{"name":"hinweis","typ":"string","leer":true,"bedeutung":"Hinweis an die Teilnehmenden"},{"name":"status","typ":"string","leer":false,"bedeutung":"offen, entschieden oder beendet (ohne Termin)"},{"name":"gewaehlt_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des gewählten Vorschlags"},{"name":"termin_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Termins (siehe termine.json)"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"entschieden_at","typ":"string (date-time)","leer":true,"bedeutung":"Entschieden am"}],"nichtEnthalten":["Anmeldegeheimnis — gehört nicht in eine Datei, die weitergegeben wird."]},{"datei":"daten/umfrage_vorschlaege.json","schnittstelle":"/api/v1/daten/umfrage_vorschlaege","bereich":"termine","titel":"Vorschläge in Terminumfragen","beschreibung":"Die Zeiten, die in einer Umfrage zur Wahl stehen.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"umfrage_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung der Terminumfrage (siehe umfragen.json)"},{"name":"start_at","typ":"string (date-time)","leer":false,"bedeutung":"Beginn (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/umfrage_teilnehmer.json","schnittstelle":"/api/v1/daten/umfrage_teilnehmer","bereich":"termine","titel":"Teilnehmende an Terminumfragen","beschreibung":"Wer an einer Umfrage teilgenommen hat.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"umfrage_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung der Terminumfrage (siehe umfragen.json)"},{"name":"name","typ":"string","leer":false,"bedeutung":"Name"},{"name":"email","typ":"string","leer":true,"bedeutung":"E-Mail-Adresse"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":["Anmeldegeheimnis — gehört nicht in eine Datei, die weitergegeben wird."]},{"datei":"daten/umfrage_stimmen.json","schnittstelle":"/api/v1/daten/umfrage_stimmen","bereich":"termine","titel":"Stimmen in Terminumfragen","beschreibung":"Die Antwort jeder Person zu jedem Vorschlag.","felder":[{"name":"teilnehmer_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung der Person (siehe umfrage_teilnehmer.json)"},{"name":"vorschlag_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Vorschlags (siehe umfrage_vorschlaege.json)"},{"name":"antwort","typ":"string","leer":false,"bedeutung":"ja, vielleicht oder nein"}],"nichtEnthalten":[]},{"datei":"daten/kunden.json","schnittstelle":"/api/v1/daten/kunden","bereich":"kunden","titel":"Kontakte","beschreibung":"Die Kartei: alle Kontakte mit Anschrift, Geburtstag, Sprache und Sperr- oder Aufbewahrungsangaben.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"name","typ":"string","leer":false,"bedeutung":"Name"},{"name":"phone_e164","typ":"string","leer":false,"bedeutung":"Telefonnummer im internationalen Format (+49…)"},{"name":"phone_raw","typ":"string","leer":true,"bedeutung":"Telefonnummer, wie eingegeben"},{"name":"email","typ":"string","leer":true,"bedeutung":"E-Mail-Adresse"},{"name":"street","typ":"string","leer":true,"bedeutung":"Straße und Hausnummer"},{"name":"zip","typ":"string","leer":true,"bedeutung":"Postleitzahl"},{"name":"city","typ":"string","leer":true,"bedeutung":"Ort"},{"name":"geburtstag","typ":"string (date)","leer":true,"bedeutung":"Geburtstag (JJJJ-MM-TT)"},{"name":"notes","typ":"string","leer":true,"bedeutung":"Interne Notiz"},{"name":"merged_into_id","typ":"string (uuid)","leer":true,"bedeutung":"Mit diesem Kontakt zusammengeführt (Kennung); leer = eigenständig"},{"name":"blocked_at","typ":"string (date-time)","leer":true,"bedeutung":"Gesperrt am"},{"name":"blocked_reason","typ":"string","leer":true,"bedeutung":"Grund der Sperre"},{"name":"email_invalid_at","typ":"string (date-time)","leer":true,"bedeutung":"E-Mail-Adresse als unzustellbar erkannt am"},{"name":"phone_invalid_at","typ":"string (date-time)","leer":true,"bedeutung":"Telefonnummer als unerreichbar erkannt am"},{"name":"consent_sms_at","typ":"string (date-time)","leer":true,"bedeutung":"Einwilligung in SMS-Erinnerungen am (Nachweis in einwilligungen.json)"},{"name":"aufbewahren_bis","typ":"string (date-time)","leer":true,"bedeutung":"Länger aufbewahrt bis"},{"name":"aufbewahren_grund","typ":"string","leer":true,"bedeutung":"Grund der längeren Aufbewahrung"},{"name":"sprache","typ":"string","leer":false,"bedeutung":"Sprache für Nachrichten (de oder en)"},{"name":"anonymized_at","typ":"string (date-time)","leer":true,"bedeutung":"Anonymisiert am"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/einwilligungen.json","schnittstelle":"/api/v1/daten/einwilligungen","bereich":"kunden","titel":"Einwilligungen","beschreibung":"Wer wann wozu zugestimmt oder die Zustimmung widerrufen hat — der Nachweis.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"customer_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kontakts (siehe kunden.json)"},{"name":"art","typ":"string","leer":false,"bedeutung":"Wofür (etwa sms)"},{"name":"richtung","typ":"string","leer":false,"bedeutung":"erteilt oder widerrufen"},{"name":"wortlaut","typ":"string","leer":true,"bedeutung":"Der Satz, der dabei auf dem Bildschirm stand"},{"name":"fassung","typ":"string","leer":true,"bedeutung":"Fassung des Textes, als Datum"},{"name":"quelle","typ":"string","leer":false,"bedeutung":"Woher: Buchungsseite, von Hand, Verwaltungslink"},{"name":"adresse","typ":"string","leer":true,"bedeutung":"Telefonnummer oder E-Mail-Adresse, für die zugestimmt wurde"},{"name":"zeitpunkt","typ":"string (date-time)","leer":false,"bedeutung":"Zeitpunkt (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/kunden_fotos.json","schnittstelle":"/api/v1/daten/kunden_fotos","bereich":"kunden","titel":"Fotos in der Kartei","beschreibung":"Angaben zu jedem Foto. Die Bilder selbst liegen im ZIP im Ordner fotos/.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"customer_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kontakts (siehe kunden.json)"},{"name":"art","typ":"string","leer":false,"bedeutung":"vorher, nachher oder sonstig"},{"name":"notiz","typ":"string","leer":true,"bedeutung":"Notiz"},{"name":"erstellt_von","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs, der es angelegt hat"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"}],"nichtEnthalten":["Das Bild selbst — im ZIP als Datei im Ordner fotos/."]},{"datei":"daten/bewertungen.json","schnittstelle":"/api/v1/daten/bewertungen","bereich":"kunden","titel":"Bewertungen","beschreibung":"Rückmeldungen nach Terminen.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"appointment_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Termins (siehe termine.json)"},{"name":"customer_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Kontakts (siehe kunden.json)"},{"name":"sterne","typ":"integer","leer":false,"bedeutung":"Sterne von 1 bis 5"},{"name":"text","typ":"string","leer":true,"bedeutung":"Text der Bewertung"},{"name":"weiter_at","typ":"string (date-time)","leer":true,"bedeutung":"Weiter zur öffentlichen Bewertung bei Google am"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/warteliste.json","schnittstelle":"/api/v1/daten/warteliste","bereich":"kunden","titel":"Warteliste","beschreibung":"Wer auf eine frei werdende Zeit wartet.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"customer_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Kontakts (siehe kunden.json)"},{"name":"name","typ":"string","leer":false,"bedeutung":"Name"},{"name":"phone_e164","typ":"string","leer":false,"bedeutung":"Telefonnummer im internationalen Format (+49…)"},{"name":"email","typ":"string","leer":true,"bedeutung":"E-Mail-Adresse"},{"name":"sprache","typ":"string","leer":false,"bedeutung":"Sprache für Nachrichten (de oder en)"},{"name":"service_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung der Leistung (siehe leistungen.json)"},{"name":"staff_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Kalenders — einer Person oder eines Raums (siehe kalender.json)"},{"name":"von_tag","typ":"string (date)","leer":false,"bedeutung":"Erster Tag (JJJJ-MM-TT)"},{"name":"bis_tag","typ":"string (date)","leer":false,"bedeutung":"Letzter Tag (JJJJ-MM-TT)"},{"name":"zeitfenster","typ":"string","leer":false,"bedeutung":"egal, vormittag oder nachmittag"},{"name":"notiz","typ":"string","leer":true,"bedeutung":"Notiz"},{"name":"gemeldet_at","typ":"string (date-time)","leer":true,"bedeutung":"Zuletzt über eine freie Zeit benachrichtigt am"},{"name":"meldungen","typ":"integer","leer":false,"bedeutung":"Wie oft schon benachrichtigt"},{"name":"erledigt_at","typ":"string (date-time)","leer":true,"bedeutung":"Erledigt am"},{"name":"erledigt_grund","typ":"string","leer":true,"bedeutung":"Grund der Erledigung"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/belege.json","schnittstelle":"/api/v1/daten/belege","bereich":"belege","titel":"Belege","beschreibung":"Alle ausgestellten Belege mit den Angaben, wie sie auf dem Beleg stehen (Schnappschuss). Die PDFs liegen im ZIP im Ordner belege/.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"nummer","typ":"string","leer":false,"bedeutung":"Belegnummer"},{"name":"belegdatum","typ":"string (date)","leer":false,"bedeutung":"Belegdatum (JJJJ-MM-TT)"},{"name":"art","typ":"string","leer":false,"bedeutung":"leistung, gutschein (Verkauf), storno oder einloesung"},{"name":"summe_cents","typ":"integer","leer":false,"bedeutung":"Betrag in Cent"},{"name":"aussteller_name","typ":"string","leer":false,"bedeutung":"Aussteller: Name des Betriebs"},{"name":"aussteller_inhaberin","typ":"string","leer":true,"bedeutung":"Aussteller: Inhaberin oder Inhaber"},{"name":"aussteller_strasse","typ":"string","leer":true,"bedeutung":"Aussteller: Straße"},{"name":"aussteller_plz","typ":"string","leer":true,"bedeutung":"Aussteller: Postleitzahl"},{"name":"aussteller_ort","typ":"string","leer":true,"bedeutung":"Aussteller: Ort"},{"name":"aussteller_steuernummer","typ":"string","leer":true,"bedeutung":"Aussteller: Steuernummer"},{"name":"aussteller_ust_id","typ":"string","leer":true,"bedeutung":"Aussteller: Umsatzsteuer-Identifikationsnummer"},{"name":"empfaenger_name","typ":"string","leer":true,"bedeutung":"Empfänger: Name"},{"name":"empfaenger_strasse","typ":"string","leer":true,"bedeutung":"Empfänger: Straße"},{"name":"empfaenger_plz","typ":"string","leer":true,"bedeutung":"Empfänger: Postleitzahl"},{"name":"empfaenger_ort","typ":"string","leer":true,"bedeutung":"Empfänger: Ort"},{"name":"customer_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Kontakts (siehe kunden.json)"},{"name":"steuer_hinweis","typ":"string","leer":false,"bedeutung":"Steuerhinweis auf dem Beleg (etwa § 19 UStG)"},{"name":"storniert_beleg_id","typ":"string (uuid)","leer":true,"bedeutung":"Dieser Beleg storniert den Beleg mit dieser Kennung"},{"name":"storniert_durch_id","typ":"string (uuid)","leer":true,"bedeutung":"Storniert durch den Beleg mit dieser Kennung"},{"name":"storno_grund","typ":"string","leer":true,"bedeutung":"Grund des Stornos"},{"name":"erstellt_von_user_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs, der es angelegt hat"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/beleg_positionen.json","schnittstelle":"/api/v1/daten/beleg_positionen","bereich":"belege","titel":"Belegpositionen","beschreibung":"Jede Zeile auf einem Beleg.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"beleg_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Belegs (siehe belege.json)"},{"name":"position","typ":"integer","leer":false,"bedeutung":"Laufende Nummer auf dem Beleg"},{"name":"menge","typ":"integer","leer":false,"bedeutung":"Menge"},{"name":"bezeichnung","typ":"string","leer":false,"bedeutung":"Bezeichnung"},{"name":"einzel_cents","typ":"integer","leer":false,"bedeutung":"Einzelpreis in Cent"},{"name":"summe_cents","typ":"integer","leer":false,"bedeutung":"Betrag in Cent"},{"name":"termin_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Termins (siehe termine.json)"},{"name":"leistungsdatum","typ":"string (date)","leer":false,"bedeutung":"Datum der Leistung (JJJJ-MM-TT)"}],"nichtEnthalten":[]},{"datei":"daten/beleg_nummernkreise.json","schnittstelle":"/api/v1/daten/beleg_nummernkreise","bereich":"belege","titel":"Belegnummern je Jahr","beschreibung":"Die zuletzt vergebene Belegnummer je Jahr — für eine lückenlose Fortsetzung.","felder":[{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"jahr","typ":"integer","leer":false,"bedeutung":"Jahr"},{"name":"letzte_nummer","typ":"integer","leer":false,"bedeutung":"Zuletzt vergebene Nummer"}],"nichtEnthalten":[]},{"datei":"daten/gutscheine.json","schnittstelle":"/api/v1/daten/gutscheine","bereich":"belege","titel":"Gutscheine","beschreibung":"Ausgegebene Gutscheine mit Wert und Restwert.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"nummer","typ":"string","leer":false,"bedeutung":"Gutscheinnummer"},{"name":"wert_cents","typ":"integer","leer":false,"bedeutung":"Ausgabewert in Cent"},{"name":"restwert_cents","typ":"integer","leer":false,"bedeutung":"Restwert in Cent"},{"name":"gueltig_bis","typ":"string (date)","leer":true,"bedeutung":"Gültig bis (JJJJ-MM-TT)"},{"name":"ausgabe_beleg_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Belegs, mit dem er verkauft wurde"},{"name":"kaeufer_name","typ":"string","leer":true,"bedeutung":"Name der Käuferin oder des Käufers"},{"name":"customer_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Kontakts (siehe kunden.json)"},{"name":"notiz","typ":"string","leer":true,"bedeutung":"Notiz"},{"name":"entwertet_at","typ":"string (date-time)","leer":true,"bedeutung":"Entwertet am"},{"name":"entwertet_grund","typ":"string","leer":true,"bedeutung":"Grund der Entwertung"},{"name":"erstellt_von_user_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs, der es angelegt hat"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/gutschein_einloesungen.json","schnittstelle":"/api/v1/daten/gutschein_einloesungen","bereich":"belege","titel":"Gutschein-Einlösungen","beschreibung":"Wann welcher Gutschein mit welchem Betrag auf welchem Beleg eingelöst wurde.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"gutschein_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Gutscheins (siehe gutscheine.json)"},{"name":"beleg_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Belegs (siehe belege.json)"},{"name":"betrag_cents","typ":"integer","leer":false,"bedeutung":"Eingelöster Betrag in Cent"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/gutschein_nummernkreise.json","schnittstelle":"/api/v1/daten/gutschein_nummernkreise","bereich":"belege","titel":"Gutscheinnummern je Jahr","beschreibung":"Die zuletzt vergebene Gutscheinnummer je Jahr.","felder":[{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"jahr","typ":"integer","leer":false,"bedeutung":"Jahr"},{"name":"letzte_nummer","typ":"integer","leer":false,"bedeutung":"Zuletzt vergebene Nummer"}],"nichtEnthalten":[]},{"datei":"daten/kalender.json","schnittstelle":"/api/v1/daten/kalender","bereich":"zeiten","titel":"Kalender","beschreibung":"Die Kalender des Betriebs — je Person oder Raum einer.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"name","typ":"string","leer":false,"bedeutung":"Name"},{"name":"user_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs (siehe zugaenge.json)"},{"name":"color","typ":"string","leer":true,"bedeutung":"Farbe in der Anzeige"},{"name":"sort_order","typ":"integer","leer":false,"bedeutung":"Reihenfolge in Listen (kleiner = weiter oben)"},{"name":"active","typ":"boolean","leer":false,"bedeutung":"In Gebrauch"},{"name":"archived_at","typ":"string (date-time)","leer":true,"bedeutung":"Archiviert am; leer = in Gebrauch"},{"name":"standort_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Standorts (siehe standorte.json)"},{"name":"urlaubstage_jahr","typ":"integer","leer":true,"bedeutung":"Urlaubstage im Jahr"},{"name":"provision_prozent","typ":"integer","leer":true,"bedeutung":"Provision in Prozent (nur zur Auswertung)"},{"name":"buchungsseite_an","typ":"boolean","leer":false,"bedeutung":"Auf der Buchungsseite wählbar"},{"name":"buchungsseite_leistungen","typ":"array","leer":false,"bedeutung":"Kennungen der Leistungen, die über die Buchungsseite zu diesem Kalender gehen"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/leistungen.json","schnittstelle":"/api/v1/daten/leistungen","bereich":"zeiten","titel":"Leistungen","beschreibung":"Was gebucht werden kann, mit Dauer, Puffern, Preis und Buchungsregeln.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"name","typ":"string","leer":false,"bedeutung":"Name"},{"name":"category","typ":"string","leer":true,"bedeutung":"Gruppe"},{"name":"description","typ":"string","leer":true,"bedeutung":"Beschreibung"},{"name":"duration_min","typ":"integer","leer":false,"bedeutung":"Dauer in Minuten"},{"name":"buffer_before_min","typ":"integer","leer":false,"bedeutung":"Puffer davor in Minuten"},{"name":"buffer_after_min","typ":"integer","leer":false,"bedeutung":"Puffer danach in Minuten"},{"name":"price_cents","typ":"integer","leer":true,"bedeutung":"Preis in Cent"},{"name":"price_from","typ":"boolean","leer":false,"bedeutung":"Preis ist ein Ab-Preis"},{"name":"color","typ":"string","leer":true,"bedeutung":"Farbe in der Anzeige"},{"name":"online_bookable","typ":"boolean","leer":false,"bedeutung":"Online buchbar"},{"name":"lead_minutes","typ":"integer","leer":true,"bedeutung":"Mindestvorlauf in Minuten; leer = Wert des Betriebs"},{"name":"horizon_days","typ":"integer","leer":true,"bedeutung":"So viele Tage im Voraus buchbar; leer = Wert des Betriebs"},{"name":"sort_order","typ":"integer","leer":false,"bedeutung":"Reihenfolge in Listen (kleiner = weiter oben)"},{"name":"fragen","typ":"object","leer":false,"bedeutung":"Fragen vor der Buchung"},{"name":"video","typ":"boolean","leer":false,"bedeutung":"Videotermin (bekommt einen Link zum Raum)"},{"name":"kapazitaet","typ":"integer","leer":false,"bedeutung":"Plätze gleichzeitig (1 = gewöhnlich)"},{"name":"archived_at","typ":"string (date-time)","leer":true,"bedeutung":"Archiviert am; leer = in Gebrauch"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/kalender_leistungen.json","schnittstelle":"/api/v1/daten/kalender_leistungen","bereich":"zeiten","titel":"Leistungen je Kalender","beschreibung":"Welcher Kalender welche Leistung anbietet, mit abweichender Dauer oder abweichendem Preis.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"staff_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kalenders — einer Person oder eines Raums (siehe kalender.json)"},{"name":"service_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung der Leistung (siehe leistungen.json)"},{"name":"duration_min_override","typ":"integer","leer":true,"bedeutung":"Abweichende Dauer in Minuten"},{"name":"price_cents_override","typ":"integer","leer":true,"bedeutung":"Abweichender Preis in Cent"}],"nichtEnthalten":[]},{"datei":"daten/leistung_ressourcen.json","schnittstelle":"/api/v1/daten/leistung_ressourcen","bereich":"zeiten","titel":"Räume und Geräte je Leistung","beschreibung":"Welche Leistung zusätzlich einen Raum oder ein Gerät belegt.","felder":[{"name":"service_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung der Leistung (siehe leistungen.json)"},{"name":"staff_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kalenders — einer Person oder eines Raums (siehe kalender.json)"}],"nichtEnthalten":[]},{"datei":"daten/oeffnungszeiten.json","schnittstelle":"/api/v1/daten/oeffnungszeiten","bereich":"zeiten","titel":"Öffnungszeiten","beschreibung":"Die regelmäßigen Zeiten je Kalender und Wochentag.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"staff_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kalenders — einer Person oder eines Raums (siehe kalender.json)"},{"name":"weekday","typ":"integer","leer":false,"bedeutung":"Wochentag (0 = Sonntag, 1 = Montag … 6 = Samstag)"},{"name":"windows","typ":"object","leer":false,"bedeutung":"Zeitfenster als Liste von {von, bis} in deutscher Ortszeit (HH:MM)"},{"name":"valid_from","typ":"string (date)","leer":true,"bedeutung":"Gilt ab (JJJJ-MM-TT); leer = schon immer"},{"name":"valid_until","typ":"string (date)","leer":true,"bedeutung":"Gilt bis (JJJJ-MM-TT); leer = unbegrenzt"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/ausnahmen.json","schnittstelle":"/api/v1/daten/ausnahmen","bereich":"zeiten","titel":"Ausnahmen von den Öffnungszeiten","beschreibung":"Geschlossene Tage, zusätzliche oder geänderte Zeiten.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"staff_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kalenders — einer Person oder eines Raums (siehe kalender.json)"},{"name":"from_date","typ":"string (date)","leer":false,"bedeutung":"Erster Tag (JJJJ-MM-TT)"},{"name":"to_date","typ":"string (date)","leer":false,"bedeutung":"Letzter Tag (JJJJ-MM-TT)"},{"name":"type","typ":"string","werte":["closed","extra_open","modified"],"leer":false,"bedeutung":"closed = geschlossen, extra_open = zusätzlich offen, modified = geänderte Zeiten"},{"name":"windows","typ":"object","leer":false,"bedeutung":"Zeitfenster als Liste von {von, bis} in deutscher Ortszeit (HH:MM)"},{"name":"reason","typ":"string","leer":true,"bedeutung":"Grund"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/feiertage.json","schnittstelle":"/api/v1/daten/feiertage","bereich":"zeiten","titel":"Abweichungen an Feiertagen","beschreibung":"Feiertage, an denen der Betrieb anders als üblich offen oder geschlossen ist.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"day","typ":"string (date)","leer":false,"bedeutung":"Tag (JJJJ-MM-TT)"},{"name":"open","typ":"boolean","leer":false,"bedeutung":"Geöffnet"},{"name":"note","typ":"string","leer":true,"bedeutung":"Notiz"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/abwesenheiten.json","schnittstelle":"/api/v1/daten/abwesenheiten","bereich":"zeiten","titel":"Abwesenheiten","beschreibung":"Urlaub und Abwesenheit je Kalender.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"staff_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kalenders — einer Person oder eines Raums (siehe kalender.json)"},{"name":"von_tag","typ":"string (date)","leer":false,"bedeutung":"Erster Tag (JJJJ-MM-TT)"},{"name":"bis_tag","typ":"string (date)","leer":false,"bedeutung":"Letzter Tag (JJJJ-MM-TT)"},{"name":"art","typ":"string","leer":false,"bedeutung":"urlaub oder abwesend"},{"name":"status","typ":"string","leer":false,"bedeutung":"beantragt, genehmigt, abgelehnt oder zurueckgezogen"},{"name":"tage","typ":"integer","leer":true,"bedeutung":"Anzahl Urlaubstage"},{"name":"beantragt_von","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs, der beantragt hat"},{"name":"entschieden_von","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs, der entschieden hat"},{"name":"entschieden_at","typ":"string (date-time)","leer":true,"bedeutung":"Entschieden am"},{"name":"override_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung der zugehörigen Ausnahme (siehe ausnahmen.json)"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/standorte.json","schnittstelle":"/api/v1/daten/standorte","bereich":"zeiten","titel":"Standorte","beschreibung":"Standorte mit Anschrift.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"name","typ":"string","leer":false,"bedeutung":"Name"},{"name":"street","typ":"string","leer":true,"bedeutung":"Straße und Hausnummer"},{"name":"zip","typ":"string","leer":true,"bedeutung":"Postleitzahl"},{"name":"city","typ":"string","leer":true,"bedeutung":"Ort"},{"name":"phone","typ":"string","leer":true,"bedeutung":"Telefonnummer"},{"name":"sort_order","typ":"integer","leer":false,"bedeutung":"Reihenfolge in Listen (kleiner = weiter oben)"},{"name":"archived_at","typ":"string (date-time)","leer":true,"bedeutung":"Archiviert am; leer = in Gebrauch"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/zugaenge.json","schnittstelle":"/api/v1/daten/zugaenge","bereich":"team","titel":"Zugänge","beschreibung":"Wer sich anmelden darf, mit Rolle. Ohne Passwort und zweiten Faktor.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"email","typ":"string","leer":false,"bedeutung":"E-Mail-Adresse"},{"name":"name","typ":"string","leer":false,"bedeutung":"Name"},{"name":"role","typ":"string","werte":["inhaberin","helfer","mitarbeit"],"leer":false,"bedeutung":"inhaberin = Leitung, helfer = Hilfe (springt ein), mitarbeit = eingeschränkt"},{"name":"active","typ":"boolean","leer":false,"bedeutung":"Eingeschaltet"},{"name":"must_change_password","typ":"boolean","leer":false,"bedeutung":"Muss beim nächsten Anmelden ein eigenes Passwort vergeben"},{"name":"last_login_at","typ":"string (date-time)","leer":true,"bedeutung":"Zuletzt angemeldet am"},{"name":"totp_aktiv_at","typ":"string (date-time)","leer":true,"bedeutung":"Zweiter Faktor eingerichtet am; leer = keiner"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":["Anmeldegeheimnis — gehört nicht in eine Datei, die weitergegeben wird.","Anmeldegeheimnis — gehört nicht in eine Datei, die weitergegeben wird.","Anmeldegeheimnis — gehört nicht in eine Datei, die weitergegeben wird."]},{"datei":"daten/freigaben.json","schnittstelle":"/api/v1/daten/freigaben","bereich":"team","titel":"Kalenderfreigaben","beschreibung":"Wer welchen Kalender in welcher Stufe sieht.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"staff_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kalenders — einer Person oder eines Raums (siehe kalender.json)"},{"name":"user_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Zugangs (siehe zugaenge.json)"},{"name":"stufe","typ":"string","leer":false,"bedeutung":"belegt = nur belegt, sehen, bearbeiten, aendern"},{"name":"google_details","typ":"boolean","leer":false,"bedeutung":"Termine aus der Google-Anbindung mit Titel zeigen"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"created_by","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs, der es angelegt hat"}],"nichtEnthalten":[]},{"datei":"daten/kalendernamen.json","schnittstelle":"/api/v1/daten/kalendernamen","bereich":"team","titel":"Eigene Kalendernamen","beschreibung":"Wie ein Zugang einen fremden Kalender für sich benannt und eingefärbt hat.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"staff_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kalenders — einer Person oder eines Raums (siehe kalender.json)"},{"name":"user_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Zugangs (siehe zugaenge.json)"},{"name":"bezeichnung","typ":"string","leer":true,"bedeutung":"Eigener Name"},{"name":"farbe","typ":"string","leer":true,"bedeutung":"Eigene Farbe"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/freigabe_links.json","schnittstelle":"/api/v1/daten/freigabe_links","bereich":"team","titel":"Freigabe-Links","beschreibung":"Links, mit denen ein Kalender freigegeben wurde.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"staff_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kalenders — einer Person oder eines Raums (siehe kalender.json)"},{"name":"stufe","typ":"string","leer":false,"bedeutung":"Stufe, die der Link gewährt"},{"name":"created_by","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs, der es angelegt hat"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"gueltig_bis","typ":"string (date-time)","leer":false,"bedeutung":"Gültig bis"},{"name":"eingeloest_at","typ":"string (date-time)","leer":true,"bedeutung":"Eingelöst am"},{"name":"eingeloest_von","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs, der ihn eingelöst hat"},{"name":"zurueckgezogen_at","typ":"string (date-time)","leer":true,"bedeutung":"Zurückgezogen am"}],"nichtEnthalten":["Anmeldegeheimnis — gehört nicht in eine Datei, die weitergegeben wird."]},{"datei":"daten/nachrichten.json","schnittstelle":"/api/v1/daten/nachrichten","bereich":"nachrichten","titel":"Nachrichten","beschreibung":"Jede gesendete, geplante oder gescheiterte Nachricht (E-Mail, SMS, Push).","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"appointment_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Termins (siehe termine.json)"},{"name":"customer_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Kontakts (siehe kunden.json)"},{"name":"user_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs (siehe zugaenge.json)"},{"name":"channel","typ":"string","werte":["email","sms","push"],"leer":false,"bedeutung":"email, sms oder push"},{"name":"kind","typ":"string","werte":["confirmation","reminder","cancellation_by_customer","cancellation_by_owner","reschedule","owner_new_booking","daily_digest","einladung","antwort_zugesagt","antwort_abgesagt","bewertung_bitte","warteliste_frei","werbung","werbung_bestaetigen","hinweis_andere_adresse"],"leer":false,"bedeutung":"Anlass (Bestätigung, Erinnerung, Absage, Verschiebung, Einladung, Bewertungsbitte, Warteliste, Werbung …)"},{"name":"recipient","typ":"string","leer":true,"bedeutung":"Empfänger (E-Mail-Adresse oder Telefonnummer)"},{"name":"subject","typ":"string","leer":true,"bedeutung":"Betreff"},{"name":"body","typ":"string","leer":false,"bedeutung":"Text (Links zum Verwalten eines Termins und zum Bestätigen oder Abbestellen der Neuigkeiten unkenntlich: [entfernt])"},{"name":"attachment_name","typ":"string","leer":true,"bedeutung":"Name des Anhangs"},{"name":"scheduled_for","typ":"string (date-time)","leer":false,"bedeutung":"Geplant für"},{"name":"claimed_at","typ":"string (date-time)","leer":true,"bedeutung":"Versand begonnen am"},{"name":"sent_at","typ":"string (date-time)","leer":true,"bedeutung":"Gesendet am"},{"name":"zugestellt_at","typ":"string (date-time)","leer":true,"bedeutung":"Zugestellt am"},{"name":"seen_at","typ":"string (date-time)","leer":true,"bedeutung":"Gelesen am"},{"name":"failed_at","typ":"string (date-time)","leer":true,"bedeutung":"Gescheitert am"},{"name":"cancelled_at","typ":"string (date-time)","leer":true,"bedeutung":"Nicht mehr gesendet (abgebrochen) am"},{"name":"attempts","typ":"integer","leer":false,"bedeutung":"Versuche"},{"name":"last_error","typ":"string","leer":true,"bedeutung":"Letzte Fehlermeldung"},{"name":"provider_message_id","typ":"string","leer":true,"bedeutung":"Kennung beim Versanddienst"},{"name":"aussendung_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Rundschreibens (siehe aussendungen.json)"},{"name":"dedupe_key","typ":"string","leer":false,"bedeutung":"Kennung gegen doppelten Versand"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"}],"nichtEnthalten":["Der Anhang selbst (Beleg-PDF oder Kalendereintrag) — Belege liegen im ZIP im Ordner belege/."]},{"datei":"daten/aussendungen.json","schnittstelle":"/api/v1/daten/aussendungen","bereich":"nachrichten","titel":"Rundschreiben","beschreibung":"Nachrichten an viele Kontakte auf einmal.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"betreff","typ":"string","leer":false,"bedeutung":"Betreff"},{"name":"text","typ":"string","leer":false,"bedeutung":"Text"},{"name":"empfaenger","typ":"integer","leer":false,"bedeutung":"Anzahl Empfängerinnen beim Abschicken"},{"name":"erstellt_von","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs, der es angelegt hat"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/protokoll.json","schnittstelle":"/api/v1/daten/protokoll","bereich":"protokoll","titel":"Änderungsprotokoll","beschreibung":"Wer wann was geändert hat — auch der Verlauf je Termin.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"actor_type","typ":"string","werte":["user","customer","system"],"leer":false,"bedeutung":"user = Zugang, customer = Kontakt, system = automatisch oder Schnittstelle"},{"name":"actor_user_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs (bei actor_type user)"},{"name":"actor_label","typ":"string","leer":true,"bedeutung":"Name, wie er im Protokoll steht"},{"name":"action","typ":"string","leer":false,"bedeutung":"Was geschah (etwa termin.abgesagt)"},{"name":"entity_type","typ":"string","leer":true,"bedeutung":"Art des betroffenen Eintrags (etwa appointment)"},{"name":"entity_id","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des betroffenen Eintrags"},{"name":"changes","typ":"object","leer":true,"bedeutung":"Was sich geändert hat"},{"name":"ip","typ":"string","leer":true,"bedeutung":"IP-Adresse der Anfrage — bei Abrufen über die Schnittstelle (schnittstelle.abruf) nach 90 Tagen geleert; die Zeile selbst bleibt 24 Monate"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"}],"nichtEnthalten":[]},{"datei":"daten/betrieb.json","schnittstelle":"/api/v1/daten/betrieb","bereich":"betrieb","titel":"Betrieb","beschreibung":"Stammdaten und alle Einstellungen. Das Logo liegt im ZIP als Datei daten/logo.*.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"slug","typ":"string","leer":false,"bedeutung":"Kurzname in der Adresse der Buchungsseite"},{"name":"name","typ":"string","leer":false,"bedeutung":"Name"},{"name":"street","typ":"string","leer":true,"bedeutung":"Straße und Hausnummer"},{"name":"zip","typ":"string","leer":true,"bedeutung":"Postleitzahl"},{"name":"city","typ":"string","leer":true,"bedeutung":"Ort"},{"name":"phone","typ":"string","leer":true,"bedeutung":"Telefonnummer"},{"name":"email","typ":"string","leer":true,"bedeutung":"E-Mail-Adresse"},{"name":"website","typ":"string","leer":true,"bedeutung":"Webseite"},{"name":"logo_path","typ":"string","leer":true,"bedeutung":"Pfad zum Logo (ältere Ablage)"},{"name":"accent_color","typ":"string","leer":true,"bedeutung":"Akzentfarbe"},{"name":"imprint_url","typ":"string","leer":true,"bedeutung":"Adresse des Impressums"},{"name":"privacy_url","typ":"string","leer":true,"bedeutung":"Adresse der Datenschutzerklärung"},{"name":"owner_name","typ":"string","leer":true,"bedeutung":"Inhaberin oder Inhaber"},{"name":"vat_id","typ":"string","leer":true,"bedeutung":"Umsatzsteuer-Identifikationsnummer"},{"name":"tax_number","typ":"string","leer":true,"bedeutung":"Steuernummer"},{"name":"sms_sender_number","typ":"string","leer":true,"bedeutung":"Eigene Absendernummer für SMS"},{"name":"sms_sender_verified_at","typ":"string (date-time)","leer":true,"bedeutung":"Absendernummer bestätigt am"},{"name":"settings","typ":"object","leer":false,"bedeutung":"Alle Einstellungen des Betriebs (Buchungsregeln, Nachrichten, Darstellung …)"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":["Das Logo selbst — im ZIP als Datei daten/logo.*."]},{"datei":"daten/schluessel.json","schnittstelle":"/api/v1/daten/schluessel","bereich":"betrieb","titel":"Zugangsschlüssel der Schnittstelle","beschreibung":"Welche Schlüssel es gab, wer sie angelegt hat und wann sie zuletzt benutzt wurden. Ohne die Schlüssel selbst.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"name","typ":"string","leer":false,"bedeutung":"Name"},{"name":"praefix","typ":"string","leer":false,"bedeutung":"Die ersten Zeichen, zum Wiedererkennen"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"created_by","typ":"string (uuid)","leer":true,"bedeutung":"Kennung des Zugangs, der es angelegt hat"},{"name":"last_used_at","typ":"string (date-time)","leer":true,"bedeutung":"Zuletzt benutzt am"},{"name":"revoked_at","typ":"string (date-time)","leer":true,"bedeutung":"Widerrufen am; leer = gültig"},{"name":"bereiche","typ":"object","leer":true,"bedeutung":"Leserechte je Bereich; leer = Termine buchen und verwalten (Website, n8n, Agenten)"}],"nichtEnthalten":["Anmeldegeheimnis — gehört nicht in eine Datei, die weitergegeben wird."]},{"datei":"daten/rueckrufe.json","schnittstelle":"/api/v1/daten/rueckrufe","bereich":"betrieb","titel":"Rückrufe","beschreibung":"Adressen, die bei Änderungen an Terminen benachrichtigt werden. Ohne das Signatur-Geheimnis.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"name","typ":"string","leer":false,"bedeutung":"Name"},{"name":"url","typ":"string","leer":false,"bedeutung":"Adresse"},{"name":"ereignisse","typ":"object","leer":false,"bedeutung":"Bei welchen Ereignissen"},{"name":"active","typ":"boolean","leer":false,"bedeutung":"Eingeschaltet"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"last_ok_at","typ":"string (date-time)","leer":true,"bedeutung":"Zuletzt erfolgreich am"},{"name":"last_error","typ":"string","leer":true,"bedeutung":"Letzte Fehlermeldung"},{"name":"fehler_serie","typ":"integer","leer":false,"bedeutung":"Fehlschläge in Folge"}],"nichtEnthalten":["Anmeldegeheimnis — gehört nicht in eine Datei, die weitergegeben wird."]},{"datei":"daten/fremdkalender.json","schnittstelle":"/api/v1/daten/fremdkalender","bereich":"betrieb","titel":"Angebundene Kalender","beschreibung":"Google-, Outlook- oder Apple-Kalender, deren Termine hier die Zeit sperren. Ohne die geheime Kalenderadresse; die Termine selbst stehen im angebundenen Kalender.","felder":[{"name":"id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung dieser Zeile (UUID). Andere Dateien verweisen über …_id darauf."},{"name":"business_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Betriebs (siehe betrieb.json)"},{"name":"staff_id","typ":"string (uuid)","leer":false,"bedeutung":"Kennung des Kalenders — einer Person oder eines Raums (siehe kalender.json)"},{"name":"name","typ":"string","leer":false,"bedeutung":"Name"},{"name":"rechner","typ":"string","leer":false,"bedeutung":"Rechnername der Quelle (etwa calendar.google.com)"},{"name":"abgerufen_at","typ":"string (date-time)","leer":true,"bedeutung":"Zuletzt abgerufen am"},{"name":"erfolg_at","typ":"string (date-time)","leer":true,"bedeutung":"Zuletzt erfolgreich am"},{"name":"fehler","typ":"string","leer":true,"bedeutung":"Letzte Fehlermeldung"},{"name":"belegungen","typ":"integer","leer":false,"bedeutung":"Anzahl übernommener Belegungen"},{"name":"uebersprungen","typ":"integer","leer":false,"bedeutung":"Anzahl übersprungener Einträge"},{"name":"mit_titel","typ":"boolean","leer":false,"bedeutung":"Titel werden übernommen"},{"name":"created_at","typ":"string (date-time)","leer":false,"bedeutung":"Angelegt am (ISO 8601, UTC)"},{"name":"updated_at","typ":"string (date-time)","leer":false,"bedeutung":"Zuletzt geändert am (ISO 8601, UTC)"}],"nichtEnthalten":["Geheime Kalenderadresse — wer sie kennt, liest den Kalender."]}],"weitereDateien":[{"datei":"daten/paket.json","inhalt":"Diese Beschreibung, maschinenlesbar."},{"datei":"daten/logo.*","inhalt":"Das Logo des Betriebs, falls hinterlegt."},{"datei":"kalender.ics","inhalt":"Alle Termine zum Einlesen in Google-, Apple- oder Outlook-Kalender."},{"datei":"belege/*.pdf","inhalt":"Jeder Beleg als PDF, wie ausgestellt."},{"datei":"fotos/…","inhalt":"Fotos aus der Kartei, je Kontakt ein Ordner."}],"nichtImPaket":["Anmeldungen, Geräte und Einmalcodes — technische Sicherheitsdaten ohne Inhalt für den Betrieb.","Kopien aus angebundenen Kalendern. Die Quelle ist der angebundene Kalender selbst; dort liegen sie vollständig.","Interne Betriebstechnik (Zähler, Laufprotokolle der Hintergrundaufgaben) ohne Daten des Betriebs."],"bereiche":[{"key":"termine","titel":"Termine","text":"Termine, Teilnehmende, Serien und Terminumfragen"},{"key":"kunden","titel":"Kundenkartei","text":"Kontakte, Einwilligungen, Fotos (Angaben), Bewertungen, Warteliste"},{"key":"belege","titel":"Belege und Gutscheine","text":"Belege mit Positionen, Gutscheine mit Einlösungen"},{"key":"zeiten","titel":"Kalender und Zeiten","text":"Kalender, Leistungen, Öffnungszeiten, Ausnahmen, Feiertage, Abwesenheiten, Standorte"},{"key":"team","titel":"Zugänge und Freigaben","text":"Zugänge mit Rollen, Kalenderfreigaben, Freigabe-Links"},{"key":"nachrichten","titel":"Nachrichten","text":"Gesendete und geplante Nachrichten, Rundschreiben"},{"key":"protokoll","titel":"Änderungsprotokoll","text":"Wer wann was geändert hat"},{"key":"betrieb","titel":"Betrieb und Anbindungen","text":"Stammdaten, Einstellungen, Schlüssel, Rückrufe, angebundene Kalender (ohne Geheimnisse)"}]}