Zum Hauptinhalt springen

Doing-Endpoints

Das Doing-Modul verwaltet Serviceplanung, Freiwilligeneinsatzplanung, Aufgabenverwaltung und Automatisierungen. Es bietet Werkzeuge zum Erstellen von Serviceplänen mit Zeiten und Positionen, zum Zuweisen von Freiwilligen, zum Verwalten von Sperrfristen, zum Erstellen von Service-Order-Elementen, zum Verbinden mit externen Content-Anbietern und zum Konfigurieren automatisierter Workflows mit Bedingungen und Aktionen.

Basispfad: /doing

Pläne

Basispfad: /doing/plans

MethodePfadAuthBerechtigungBeschreibung
GET/JWTAlle Pläne für die Kirche auflisten
GET/:idJWTPlan nach ID abrufen
GET/ids?ids=JWTMehrere Pläne nach komma-getrennten IDs abrufen
GET/types/:planTypeIdJWTPläne nach Plan-Typ abrufen
GET/presenterJWTPläne für die nächsten 7 Tage (Präsentatoransicht)
GET/public/current/:planTypeIdÖffentlichAktuellen Plan für einen Plan-Typ abrufen
POST/JWTPläne erstellen oder aktualisieren (akzeptiert einzelnes Objekt oder Array)
POST/copy/:idJWTEinen Plan einschließlich Positionen, Zeiten, Zuweisungen und Service-Order-Elementen kopieren. Body enthält copyMode ("none", "positions", "all") und copyServiceOrder (boolean)
POST/autofill/:idJWTFreiwilligenaufgaben für einen Plan automatisch ausfüllen. Body: { teams: [{ positionId, personIds }] }
DELETE/:idJWTPlan und alle zugehörigen Zeiten, Zuweisungen, Positionen und Planelemente löschen

Beispiel: Plan kopieren

POST /doing/plans/copy/abc-123
Authorization: Bearer <token>

{
"serviceDate": "2026-03-01T10:00:00.000Z",
"copyMode": "all",
"copyServiceOrder": true
}
{
"id": "def-456",
"churchId": "church-1",
"serviceDate": "2026-03-01T10:00:00.000Z"
}

Plan-Typen

Basispfad: /doing/planTypes

Erweitert CRUD-Basisklasse (GET /, GET /:id, POST /, DELETE /:id — keine Berechtigungsprüfungen).

MethodePfadAuthBerechtigungBeschreibung
GET/JWTAlle Plan-Typen auflisten
GET/:idJWTPlan-Typ nach ID abrufen
GET/ids?ids=JWTMehrere Plan-Typen nach komma-getrennten IDs abrufen
GET/ministryId/:ministryIdJWTPlan-Typen für einen Dienst abrufen
POST/JWTPlan-Typen erstellen oder aktualisieren
DELETE/:idJWTPlan-Typ löschen

Plan-Elemente

Basispfad: /doing/planItems

Verwaltet Service-Order-Elemente (Überschriften, Abschnitte, Lieder, etc.) organisiert in einer Eltern-Kind-Baumstruktur.

MethodePfadAuthBerechtigungBeschreibung
GET/:idJWTPlan-Element nach ID abrufen
GET/ids?ids=JWTMehrere Plan-Elemente nach komma-getrennten IDs abrufen
GET/plan/:planIdJWTAlle Plan-Elemente für einen Plan abrufen (gibt Baumstruktur zurück)
GET/presenter/:churchId/:planIdÖffentlichPlan-Elemente für Präsentatoransicht abrufen (gibt Baumstruktur zurück)
POST/JWTPlan-Elemente erstellen oder aktualisieren
POST/sortJWTSortierreihenfolge für ein Plan-Element aktualisieren (sortiert Geschwister neu)
DELETE/:idJWTPlan-Element löschen

Plan-Feed

Basispfad: /doing/planFeed

Bietet Plan-Element-Feeds für den Präsentator. Falls keine Plan-Elemente existieren, wird automatisch aus dem Lessons.church-Venue-Feed mit der Plan-contentId des Plans gefüllt.

MethodePfadAuthBerechtigungBeschreibung
GET/presenter/:churchId/:planIdÖffentlichPlan-Feed für Präsentator abrufen (füllt automatisch aus Venue-Feed, wenn leer)

Positionen

Basispfad: /doing/positions

Erweitert CRUD-Basisklasse (GET /:id, POST /, DELETE /:id — keine Berechtigungsprüfungen).

MethodePfadAuthBerechtigungBeschreibung
GET/:idJWTPosition nach ID abrufen
GET/ids?ids=JWTMehrere Positionen nach komma-getrennten IDs abrufen
GET/plan/ids?planIds=JWTPositionen für mehrere Pläne nach komma-getrennten Plan-IDs abrufen
GET/plan/:planIdJWTAlle Positionen für einen Plan abrufen
POST/JWTPositionen erstellen oder aktualisieren
DELETE/:idJWTPosition löschen

Zeiten

Basispfad: /doing/times

MethodePfadAuthBerechtigungBeschreibung
GET/allJWTAlle Zeiten für die Kirche auflisten
GET/:idJWTZeit nach ID abrufen
GET/plans?planIds=JWTZeiten für mehrere Pläne nach komma-getrennten Plan-IDs abrufen
GET/plan/:planIdJWTAlle Zeiten für einen Plan abrufen
POST/JWTZeiten erstellen oder aktualisieren
DELETE/:idJWTZeit löschen

Zuweisungen

Basispfad: /doing/assignments

MethodePfadAuthBerechtigungBeschreibung
GET/myJWTZuweisungen für den aktuellen Benutzer abrufen
GET/:idJWTZuweisung nach ID abrufen
GET/plan/ids?planIds=JWTZuweisungen für mehrere Pläne nach komma-getrennten Plan-IDs abrufen
GET/plan/:planIdJWTAlle Zuweisungen für einen Plan abrufen
POST/JWTZuweisungen erstellen oder aktualisieren (setzt Status standardmäßig auf "Unconfirmed")
POST/accept/:idJWTZuweisung akzeptieren (muss die zugewiesene Person sein)
POST/decline/:idJWTZuweisung ablehnen (muss die zugewiesene Person sein)
DELETE/:idJWTZuweisung löschen

Beispiel: Zuweisung akzeptieren

POST /doing/assignments/accept/assign-123
Authorization: Bearer <token>
{
"id": "assign-123",
"personId": "person-456",
"positionId": "pos-789",
"planId": "plan-abc",
"status": "Accepted"
}

Sperrfristen

Basispfad: /doing/blockoutDates

Erweitert CRUD-Basisklasse (GET /:id, DELETE /:id — keine Berechtigungsprüfungen).

MethodePfadAuthBerechtigungBeschreibung
GET/:idJWTSperrfrist nach ID abrufen
GET/ids?ids=JWTMehrere Sperrfristen nach komma-getrennten IDs abrufen
GET/myJWTSperrfristen für den aktuellen Benutzer abrufen
GET/upcomingJWTAlle bevorstehenden Sperrfristen für die Kirche abrufen
POST/JWTSperrfristen erstellen oder aktualisieren (setzt personId standardmäßig auf aktuellen Benutzer, falls nicht angegeben)
DELETE/:idJWTSperrfrist löschen

Aufgaben

Basispfad: /doing/tasks

MethodePfadAuthBerechtigungBeschreibung
GET/JWTOffene Aufgaben für den aktuellen Benutzer abrufen
GET/:idJWTAufgabe nach ID abrufen
GET/closedJWTAbgeschlossene Aufgaben für den aktuellen Benutzer abrufen
GET/timeline?taskIds=JWTTimeline-Daten für Aufgaben nach komma-getrennten Aufgaben-IDs abrufen
GET/directoryUpdate/:personIdJWTVerzeichnis-Update-Aufgabe für eine Person abrufen
POST/JWTAufgaben erstellen oder aktualisieren. Fügen Sie ?type=directoryUpdate hinzu, um Verzeichnis-Update-Aufgaben zu verarbeiten (lädt Fotos automatisch hoch)
POST/loadForGroupsJWTAufgaben für bestimmte Gruppen laden. Body: { groupIds: [], status: "Open" }

Automatisierungen

Basispfad: /doing/automations

MethodePfadAuthBerechtigungBeschreibung
GET/JWTAlle Automatisierungen für die Kirche auflisten
GET/:idJWTAutomatisierung nach ID abrufen
GET/checkÖffentlichÜberprüfung aller Automatisierungen auslösen
POST/JWTAutomatisierungen erstellen oder aktualisieren
DELETE/:idJWTAutomatisierung löschen

Aktionen

Basispfad: /doing/actions

Aktionen definieren, was geschieht, wenn eine Automatisierung ausgelöst wird.

MethodePfadAuthBerechtigungBeschreibung
GET/:idJWTAktion nach ID abrufen
GET/automation/:idJWTAlle Aktionen für eine Automatisierung abrufen
POST/JWTAktionen erstellen oder aktualisieren
DELETE/:idJWTAktion löschen

Bedingungen

Basispfad: /doing/conditions

Bedingungen definieren die Kriterien, die eine Automatisierung auslösen.

MethodePfadAuthBerechtigungBeschreibung
GET/:idJWTBedingung nach ID abrufen
GET/automation/:idJWTAlle Bedingungen für eine Automatisierung abrufen
POST/JWTBedingungen erstellen oder aktualisieren
DELETE/:idJWTBedingung löschen

Verbindungen

Basispfad: /doing/conjunctions

Verbindungen verknüpfen mehrere Bedingungen in einer Automatisierung (AND/OR-Logik).

MethodePfadAuthBerechtigungBeschreibung
GET/:idJWTVerbindung nach ID abrufen
GET/automation/:idJWTAlle Verbindungen für eine Automatisierung abrufen
POST/JWTVerbindungen erstellen oder aktualisieren
DELETE/:idJWTVerbindung löschen

Content-Provider-Authentifizierungen

Basispfad: /doing/contentProviderAuths

Erweitert CRUD-Basisklasse (GET /, GET /:id, POST /, DELETE /:id — keine Berechtigungsprüfungen).

Verwaltet OAuth-Authentifizierungsdatensätze für externe Content-Provider (z.B. Präsentationssoftware-Integrationen).

MethodePfadAuthBerechtigungBeschreibung
GET/JWTAlle Content-Provider-Auths auflisten
GET/:idJWTContent-Provider-Auth nach ID abrufen
GET/ids?ids=JWTMehrere Content-Provider-Auths nach komma-getrennten IDs abrufen
GET/ministry/:ministryIdJWTAlle Content-Provider-Auths für einen Dienst abrufen
GET/ministry/:ministryId/:providerIdJWTAuth-Datensatz für einen bestimmten Dienst und Provider abrufen
POST/JWTContent-Provider-Auths erstellen oder aktualisieren
DELETE/:idJWTContent-Provider-Auth löschen

Provider-Proxy

Basispfad: /doing/providerProxy

Leitet Anfragen an externe Content-Provider weiter (z.B. ProPresenter, EasyWorship). Handhabt Token-Aktualisierung automatisch, wenn Tokens ablaufen.

MethodePfadAuthBerechtigungBeschreibung
POST/browseJWTContent-Provider-Dateien durchsuchen. Body: { ministryId, providerId, path }
POST/getPresentationsJWTPräsentationen von Content-Provider abrufen. Body: { ministryId, providerId, path }
POST/getPlaylistJWTPlaylist von Content-Provider abrufen. Body: { ministryId, providerId, path, resolution }
POST/getInstructionsJWTAnweisungen für ein Content-Element abrufen. Body: { ministryId, providerId, path }
POST/getExpandedInstructionsJWTErweiterte Anweisungen für ein Content-Element abrufen. Body: { ministryId, providerId, path }

Verwandte Seiten