Vai al contenuto principale

Endpoint Doing

Il modulo Doing gestisce la pianificazione dei servizi, la programmazione dei volontari, la gestione delle attività e le automazioni. Fornisce strumenti per creare piani di servizio con orari e posizioni, assegnare volontari, gestire le date di indisponibilità, costruire elementi dell'ordine del servizio, collegarsi a fornitori di contenuti esterni e configurare flussi di lavoro automatizzati con condizioni e azioni.

Percorso base: /doing

Piani​

Percorso base: /doing/plans

MetodoPercorsoAuthPermessoDescrizione
GET/JWT—Elenca tutti i piani per la chiesa
GET/:idJWT—Ottieni un piano per ID
GET/ids?ids=JWT—Ottieni più piani per ID separati da virgola
GET/types/:planTypeIdJWT—Ottieni i piani per tipo di piano
GET/presenterJWT—Ottieni i piani per i prossimi 7 giorni (vista presentatore)
GET/public/current/:planTypeIdPubblico—Ottieni il piano corrente per un tipo di piano
POST/JWT—Crea o aggiorna piani (accetta oggetto singolo o array)
POST/copy/:idJWT—Copia un piano includendo posizioni, orari, assegnazioni ed elementi dell'ordine del servizio. Il body include copyMode ("none", "positions", "all") e copyServiceOrder (booleano)
POST/autofill/:idJWT—Compila automaticamente le assegnazioni dei volontari per un piano. Body: { teams: [{ positionId, personIds }] }
DELETE/:idJWT—Elimina un piano e tutti gli orari, assegnazioni, posizioni ed elementi correlati

Esempio: Copia un Piano​

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"
}

Tipi di Piano​

Percorso base: /doing/planTypes

Estende la classe base CRUD (GET /, GET /:id, POST /, DELETE /:id — nessun controllo dei permessi).

MetodoPercorsoAuthPermessoDescrizione
GET/JWT—Elenca tutti i tipi di piano
GET/:idJWT—Ottieni un tipo di piano per ID
GET/ids?ids=JWT—Ottieni più tipi di piano per ID separati da virgola
GET/ministryId/:ministryIdJWT—Ottieni i tipi di piano per un ministero
POST/JWT—Crea o aggiorna tipi di piano
DELETE/:idJWT—Elimina un tipo di piano

Elementi del Piano​

Percorso base: /doing/planItems

Gestisce gli elementi dell'ordine del servizio (intestazioni, sezioni, canti, ecc.) organizzati in una struttura ad albero padre-figlio.

MetodoPercorsoAuthPermessoDescrizione
GET/:idJWT—Ottieni un elemento del piano per ID
GET/ids?ids=JWT—Ottieni più elementi del piano per ID separati da virgola
GET/plan/:planIdJWT—Ottieni tutti gli elementi del piano per un piano (restituisce struttura ad albero)
GET/presenter/:churchId/:planIdPubblico—Ottieni gli elementi del piano per la vista presentatore (restituisce struttura ad albero)
POST/JWT—Crea o aggiorna elementi del piano
POST/sortJWT—Aggiorna l'ordine di ordinamento per un elemento del piano (riordina i fratelli)
DELETE/:idJWT—Elimina un elemento del piano

Feed del Piano​

Percorso base: /doing/planFeed

Fornisce i feed degli elementi del piano per il presentatore. Se non esistono elementi del piano, popola automaticamente dal feed della sede Lessons.church utilizzando il contentId del piano.

MetodoPercorsoAuthPermessoDescrizione
GET/presenter/:churchId/:planIdPubblico—Ottieni il feed del piano per il presentatore (popola automaticamente dal feed della sede se vuoto)

Posizioni​

Percorso base: /doing/positions

Estende la classe base CRUD (GET /:id, POST /, DELETE /:id — nessun controllo dei permessi).

MetodoPercorsoAuthPermessoDescrizione
GET/:idJWT—Ottieni una posizione per ID
GET/ids?ids=JWT—Ottieni più posizioni per ID separati da virgola
GET/plan/ids?planIds=JWT—Ottieni le posizioni per più piani per ID piano separati da virgola
GET/plan/:planIdJWT—Ottieni tutte le posizioni per un piano
POST/JWT—Crea o aggiorna posizioni
DELETE/:idJWT—Elimina una posizione

Orari​

Percorso base: /doing/times

MetodoPercorsoAuthPermessoDescrizione
GET/allJWT—Elenca tutti gli orari per la chiesa
GET/:idJWT—Ottieni un orario per ID
GET/plans?planIds=JWT—Ottieni gli orari per più piani per ID piano separati da virgola
GET/plan/:planIdJWT—Ottieni tutti gli orari per un piano
POST/JWT—Crea o aggiorna orari
DELETE/:idJWT—Elimina un orario

Assegnazioni​

Percorso base: /doing/assignments

MetodoPercorsoAuthPermessoDescrizione
GET/myJWT—Ottieni le assegnazioni per l'utente corrente
GET/:idJWT—Ottieni un'assegnazione per ID
GET/plan/ids?planIds=JWT—Ottieni le assegnazioni per più piani per ID piano separati da virgola
GET/plan/:planIdJWT—Ottieni tutte le assegnazioni per un piano
POST/JWT—Crea o aggiorna assegnazioni (lo stato predefinito è "Non confermato")
POST/accept/:idJWT—Accetta un'assegnazione (deve essere la persona assegnata)
POST/decline/:idJWT—Rifiuta un'assegnazione (deve essere la persona assegnata)
DELETE/:idJWT—Elimina un'assegnazione

Esempio: Accetta un'Assegnazione​

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

Date di Indisponibilità​

Percorso base: /doing/blockoutDates

Estende la classe base CRUD (GET /:id, DELETE /:id — nessun controllo dei permessi).

MetodoPercorsoAuthPermessoDescrizione
GET/:idJWT—Ottieni una data di indisponibilità per ID
GET/ids?ids=JWT—Ottieni più date di indisponibilità per ID separati da virgola
GET/myJWT—Ottieni le date di indisponibilità per l'utente corrente
GET/upcomingJWT—Ottieni tutte le prossime date di indisponibilità per la chiesa
POST/JWT—Crea o aggiorna date di indisponibilità (imposta personId sull'utente corrente se non fornito)
DELETE/:idJWT—Elimina una data di indisponibilità

Attività​

Percorso base: /doing/tasks

MetodoPercorsoAuthPermessoDescrizione
GET/JWT—Ottieni le attività aperte per l'utente corrente
GET/:idJWT—Ottieni un'attività per ID
GET/closedJWT—Ottieni le attività chiuse per l'utente corrente
GET/timeline?taskIds=JWT—Ottieni i dati della timeline per le attività per ID attività separati da virgola
GET/directoryUpdate/:personIdJWT—Ottieni l'attività di aggiornamento directory per una persona
POST/JWT—Crea o aggiorna attività. Aggiungi ?type=directoryUpdate per gestire le attività di aggiornamento directory (carica automaticamente le foto)
POST/loadForGroupsJWT—Carica le attività per gruppi specifici. Body: { groupIds: [], status: "Open" }

Automazioni​

Percorso base: /doing/automations

MetodoPercorsoAuthPermessoDescrizione
GET/JWT—Elenca tutte le automazioni per la chiesa
GET/:idJWT—Ottieni un'automazione per ID
GET/checkPubblico—Attiva un controllo di tutte le automazioni
POST/JWT—Crea o aggiorna automazioni
DELETE/:idJWT—Elimina un'automazione

Azioni​

Percorso base: /doing/actions

Le azioni definiscono cosa succede quando un'automazione viene attivata.

MetodoPercorsoAuthPermessoDescrizione
GET/:idJWT—Ottieni un'azione per ID
GET/automation/:idJWT—Ottieni tutte le azioni per un'automazione
POST/JWT—Crea o aggiorna azioni
DELETE/:idJWT—Elimina un'azione

Condizioni​

Percorso base: /doing/conditions

Le condizioni definiscono i criteri che attivano un'automazione.

MetodoPercorsoAuthPermessoDescrizione
GET/:idJWT—Ottieni una condizione per ID
GET/automation/:idJWT—Ottieni tutte le condizioni per un'automazione
POST/JWT—Crea o aggiorna condizioni
DELETE/:idJWT—Elimina una condizione

Congiunzioni​

Percorso base: /doing/conjunctions

Le congiunzioni collegano più condizioni insieme in un'automazione (logica AND/OR).

MetodoPercorsoAuthPermessoDescrizione
GET/:idJWT—Ottieni una congiunzione per ID
GET/automation/:idJWT—Ottieni tutte le congiunzioni per un'automazione
POST/JWT—Crea o aggiorna congiunzioni
DELETE/:idJWT—Elimina una congiunzione

Autenticazioni Fornitori di Contenuti​

Percorso base: /doing/contentProviderAuths

Estende la classe base CRUD (GET /, GET /:id, POST /, DELETE /:id — nessun controllo dei permessi).

Gestisce i record di autenticazione OAuth per fornitori di contenuti esterni (es. integrazioni con software di presentazione).

MetodoPercorsoAuthPermessoDescrizione
GET/JWT—Elenca tutte le autenticazioni dei fornitori di contenuti
GET/:idJWT—Ottieni un'autenticazione del fornitore di contenuti per ID
GET/ids?ids=JWT—Ottieni più autenticazioni dei fornitori di contenuti per ID separati da virgola
GET/ministry/:ministryIdJWT—Ottieni tutte le autenticazioni dei fornitori di contenuti per un ministero
GET/ministry/:ministryId/:providerIdJWT—Ottieni il record di autenticazione per un ministero e fornitore specifici
POST/JWT—Crea o aggiorna autenticazioni dei fornitori di contenuti
DELETE/:idJWT—Elimina un'autenticazione del fornitore di contenuti

Proxy Fornitore​

Percorso base: /doing/providerProxy

Esegue il proxy delle richieste verso fornitori di contenuti esterni (es. ProPresenter, EasyWorship). Gestisce automaticamente l'aggiornamento dei token quando scadono.

MetodoPercorsoAuthPermessoDescrizione
POST/browseJWT—Sfoglia i file del fornitore di contenuti. Body: { ministryId, providerId, path }
POST/getPresentationsJWT—Ottieni le presentazioni da un fornitore di contenuti. Body: { ministryId, providerId, path }
POST/getPlaylistJWT—Ottieni una playlist da un fornitore di contenuti. Body: { ministryId, providerId, path, resolution }
POST/getInstructionsJWT—Ottieni le istruzioni per un elemento di contenuto. Body: { ministryId, providerId, path }
POST/getExpandedInstructionsJWT—Ottieni le istruzioni espanse per un elemento di contenuto. Body: { ministryId, providerId, path }

Pagine Correlate​