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/JWT—Alle Pläne für die Kirche auflisten
GET/:idJWT—Plan nach ID abrufen
GET/ids?ids=JWT—Mehrere Pläne nach komma-getrennten IDs abrufen
GET/types/:planTypeIdJWT—Pläne nach Plan-Typ abrufen
GET/presenterJWT—Pläne für die nächsten 7 Tage (Präsentatoransicht)
GET/public/current/:planTypeIdÖffentlich—Aktuellen Plan für einen Plan-Typ abrufen
POST/JWT—Pläne erstellen oder aktualisieren (akzeptiert einzelnes Objekt oder Array)
POST/copy/:idJWT—Einen Plan einschließlich Positionen, Zeiten, Zuweisungen und Service-Order-Elementen kopieren. Body enthält copyMode ("none", "positions", "all") und copyServiceOrder (boolean)
POST/autofill/:idJWT—Freiwilligenaufgaben für einen Plan automatisch ausfüllen. Body: { teams: [{ positionId, personIds }] }
DELETE/:idJWT—Plan 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/JWT—Alle Plan-Typen auflisten
GET/:idJWT—Plan-Typ nach ID abrufen
GET/ids?ids=JWT—Mehrere Plan-Typen nach komma-getrennten IDs abrufen
GET/ministryId/:ministryIdJWT—Plan-Typen für einen Dienst abrufen
POST/JWT—Plan-Typen erstellen oder aktualisieren
DELETE/:idJWT—Plan-Typ löschen

Plan-Elemente​

Basispfad: /doing/planItems

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

MethodePfadAuthBerechtigungBeschreibung
GET/:idJWT—Plan-Element nach ID abrufen
GET/ids?ids=JWT—Mehrere Plan-Elemente nach komma-getrennten IDs abrufen
GET/plan/:planIdJWT—Alle Plan-Elemente für einen Plan abrufen (gibt Baumstruktur zurück)
GET/presenter/:churchId/:planIdÖffentlich—Plan-Elemente für Präsentatoransicht abrufen (gibt Baumstruktur zurück)
POST/JWT—Plan-Elemente erstellen oder aktualisieren
POST/sortJWT—Sortierreihenfolge für ein Plan-Element aktualisieren (sortiert Geschwister neu)
DELETE/:idJWT—Plan-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Öffentlich—Plan-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/:idJWT—Position nach ID abrufen
GET/ids?ids=JWT—Mehrere Positionen nach komma-getrennten IDs abrufen
GET/plan/ids?planIds=JWT—Positionen für mehrere Pläne nach komma-getrennten Plan-IDs abrufen
GET/plan/:planIdJWT—Alle Positionen für einen Plan abrufen
POST/JWT—Positionen erstellen oder aktualisieren
DELETE/:idJWT—Position löschen

Zeiten​

Basispfad: /doing/times

MethodePfadAuthBerechtigungBeschreibung
GET/allJWT—Alle Zeiten für die Kirche auflisten
GET/:idJWT—Zeit nach ID abrufen
GET/plans?planIds=JWT—Zeiten für mehrere Pläne nach komma-getrennten Plan-IDs abrufen
GET/plan/:planIdJWT—Alle Zeiten für einen Plan abrufen
POST/JWT—Zeiten erstellen oder aktualisieren
DELETE/:idJWT—Zeit löschen

Zuweisungen​

Basispfad: /doing/assignments

MethodePfadAuthBerechtigungBeschreibung
GET/myJWT—Zuweisungen für den aktuellen Benutzer abrufen
GET/:idJWT—Zuweisung nach ID abrufen
GET/plan/ids?planIds=JWT—Zuweisungen für mehrere Pläne nach komma-getrennten Plan-IDs abrufen
GET/plan/:planIdJWT—Alle Zuweisungen für einen Plan abrufen
POST/JWT—Zuweisungen erstellen oder aktualisieren (setzt Status standardmäßig auf "Unconfirmed")
POST/accept/:idJWT—Zuweisung akzeptieren (muss die zugewiesene Person sein)
POST/decline/:idJWT—Zuweisung ablehnen (muss die zugewiesene Person sein)
DELETE/:idJWT—Zuweisung 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/:idJWT—Sperrfrist nach ID abrufen
GET/ids?ids=JWT—Mehrere Sperrfristen nach komma-getrennten IDs abrufen
GET/myJWT—Sperrfristen für den aktuellen Benutzer abrufen
GET/upcomingJWT—Alle bevorstehenden Sperrfristen für die Kirche abrufen
POST/JWT—Sperrfristen erstellen oder aktualisieren (setzt personId standardmäßig auf aktuellen Benutzer, falls nicht angegeben)
DELETE/:idJWT—Sperrfrist löschen

Aufgaben​

Basispfad: /doing/tasks

MethodePfadAuthBerechtigungBeschreibung
GET/JWT—Offene Aufgaben für den aktuellen Benutzer abrufen
GET/:idJWT—Aufgabe nach ID abrufen
GET/closedJWT—Abgeschlossene Aufgaben für den aktuellen Benutzer abrufen
GET/timeline?taskIds=JWT—Timeline-Daten für Aufgaben nach komma-getrennten Aufgaben-IDs abrufen
GET/directoryUpdate/:personIdJWT—Verzeichnis-Update-Aufgabe für eine Person abrufen
POST/JWT—Aufgaben erstellen oder aktualisieren. Fügen Sie ?type=directoryUpdate hinzu, um Verzeichnis-Update-Aufgaben zu verarbeiten (lädt Fotos automatisch hoch)
POST/loadForGroupsJWT—Aufgaben für bestimmte Gruppen laden. Body: { groupIds: [], status: "Open" }

Automatisierungen​

Basispfad: /doing/automations

MethodePfadAuthBerechtigungBeschreibung
GET/JWT—Alle Automatisierungen für die Kirche auflisten
GET/:idJWT—Automatisierung nach ID abrufen
GET/checkÖffentlich—Überprüfung aller Automatisierungen auslösen
POST/JWT—Automatisierungen erstellen oder aktualisieren
DELETE/:idJWT—Automatisierung löschen

Aktionen​

Basispfad: /doing/actions

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

MethodePfadAuthBerechtigungBeschreibung
GET/:idJWT—Aktion nach ID abrufen
GET/automation/:idJWT—Alle Aktionen für eine Automatisierung abrufen
POST/JWT—Aktionen erstellen oder aktualisieren
DELETE/:idJWT—Aktion löschen

Bedingungen​

Basispfad: /doing/conditions

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

MethodePfadAuthBerechtigungBeschreibung
GET/:idJWT—Bedingung nach ID abrufen
GET/automation/:idJWT—Alle Bedingungen für eine Automatisierung abrufen
POST/JWT—Bedingungen erstellen oder aktualisieren
DELETE/:idJWT—Bedingung löschen

Verbindungen​

Basispfad: /doing/conjunctions

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

MethodePfadAuthBerechtigungBeschreibung
GET/:idJWT—Verbindung nach ID abrufen
GET/automation/:idJWT—Alle Verbindungen für eine Automatisierung abrufen
POST/JWT—Verbindungen erstellen oder aktualisieren
DELETE/:idJWT—Verbindung 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/JWT—Alle Content-Provider-Auths auflisten
GET/:idJWT—Content-Provider-Auth nach ID abrufen
GET/ids?ids=JWT—Mehrere Content-Provider-Auths nach komma-getrennten IDs abrufen
GET/ministry/:ministryIdJWT—Alle Content-Provider-Auths für einen Dienst abrufen
GET/ministry/:ministryId/:providerIdJWT—Auth-Datensatz für einen bestimmten Dienst und Provider abrufen
POST/JWT—Content-Provider-Auths erstellen oder aktualisieren
DELETE/:idJWT—Content-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/browseJWT—Content-Provider-Dateien durchsuchen. Body: { ministryId, providerId, path }
POST/getPresentationsJWT—Präsentationen von Content-Provider abrufen. Body: { ministryId, providerId, path }
POST/getPlaylistJWT—Playlist von Content-Provider abrufen. Body: { ministryId, providerId, path, resolution }
POST/getInstructionsJWT—Anweisungen für ein Content-Element abrufen. Body: { ministryId, providerId, path }
POST/getExpandedInstructionsJWT—Erweiterte Anweisungen für ein Content-Element abrufen. Body: { ministryId, providerId, path }

Verwandte Seiten​