Saltar al contenido principal

Puntos de Conexión de Doing

El módulo Doing gestiona la planificación de servicios, programación de voluntarios, gestión de tareas y automatizaciones. Proporciona herramientas para crear planes de servicio con horarios y posiciones, asignar voluntarios, gestionar fechas de bloqueo, construir elementos del orden del servicio, conectarse a proveedores de contenido externos y configurar flujos de trabajo automatizados con condiciones y acciones.

Ruta base: /doing

Planes​

Ruta base: /doing/plans

MétodoRutaAutenticaciónPermisoDescripción
GET/JWT—Listar todos los planes para la iglesia
GET/:idJWT—Obtener un plan por ID
GET/ids?ids=JWT—Obtener múltiples planes por IDs separados por comas
GET/types/:planTypeIdJWT—Obtener planes por tipo de plan
GET/presenterJWT—Obtener planes para los próximos 7 días (vista de presentador)
GET/public/current/:planTypeIdPúblico—Obtener el plan actual para un tipo de plan
POST/JWT—Crear o actualizar planes (acepta objeto único o matriz)
POST/copy/:idJWT—Copiar un plan incluyendo posiciones, horarios, asignaciones y elementos del orden del servicio. El cuerpo incluye copyMode ("none", "positions", "all") y copyServiceOrder (booleano)
POST/autofill/:idJWT—Rellenar automáticamente asignaciones de voluntarios para un plan. Cuerpo: { teams: [{ positionId, personIds }] }
DELETE/:idJWT—Eliminar un plan y todos los horarios, asignaciones, posiciones y elementos del plan relacionados

Ejemplo: Copiar un Plan​

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

Tipos de Plan​

Ruta base: /doing/planTypes

Extiende la clase base CRUD (GET /, GET /:id, POST /, DELETE /:id -- sin verificaciones de permisos).

MétodoRutaAutenticaciónPermisoDescripción
GET/JWT—Listar todos los tipos de plan
GET/:idJWT—Obtener un tipo de plan por ID
GET/ids?ids=JWT—Obtener múltiples tipos de plan por IDs separados por comas
GET/ministryId/:ministryIdJWT—Obtener tipos de plan para un ministerio
POST/JWT—Crear o actualizar tipos de plan
DELETE/:idJWT—Eliminar un tipo de plan

Elementos del Plan​

Ruta base: /doing/planItems

Gestiona elementos del orden del servicio (encabezados, secciones, canciones, etc.) organizados en una estructura de árbol padre-hijo.

MétodoRutaAutenticaciónPermisoDescripción
GET/:idJWT—Obtener un elemento del plan por ID
GET/ids?ids=JWT—Obtener múltiples elementos del plan por IDs separados por comas
GET/plan/:planIdJWT—Obtener todos los elementos del plan para un plan (devuelve estructura de árbol)
GET/presenter/:churchId/:planIdPúblico—Obtener elementos del plan para vista de presentador (devuelve estructura de árbol)
POST/JWT—Crear o actualizar elementos del plan
POST/sortJWT—Actualizar orden de clasificación para un elemento del plan (reordena hermanos)
DELETE/:idJWT—Eliminar un elemento del plan

Fuente de Plan​

Ruta base: /doing/planFeed

Proporciona fuentes de elementos del plan para el presentador. Si no existen elementos del plan, se rellena automáticamente desde la fuente del lugar de Lessons.church usando el contentId del plan.

MétodoRutaAutenticaciónPermisoDescripción
GET/presenter/:churchId/:planIdPúblico—Obtener fuente del plan para presentador (se rellena automáticamente desde la fuente del lugar si está vacía)

Posiciones​

Ruta base: /doing/positions

Extiende la clase base CRUD (GET /:id, POST /, DELETE /:id -- sin verificaciones de permisos).

MétodoRutaAutenticaciónPermisoDescripción
GET/:idJWT—Obtener una posición por ID
GET/ids?ids=JWT—Obtener múltiples posiciones por IDs separados por comas
GET/plan/ids?planIds=JWT—Obtener posiciones para múltiples planes por IDs de plan separados por comas
GET/plan/:planIdJWT—Obtener todas las posiciones para un plan
POST/JWT—Crear o actualizar posiciones
DELETE/:idJWT—Eliminar una posición

Horarios​

Ruta base: /doing/times

MétodoRutaAutenticaciónPermisoDescripción
GET/allJWT—Listar todos los horarios para la iglesia
GET/:idJWT—Obtener un horario por ID
GET/plans?planIds=JWT—Obtener horarios para múltiples planes por IDs de plan separados por comas
GET/plan/:planIdJWT—Obtener todos los horarios para un plan
POST/JWT—Crear o actualizar horarios
DELETE/:idJWT—Eliminar un horario

Asignaciones​

Ruta base: /doing/assignments

MétodoRutaAutenticaciónPermisoDescripción
GET/myJWT—Obtener asignaciones para el usuario actual
GET/:idJWT—Obtener una asignación por ID
GET/plan/ids?planIds=JWT—Obtener asignaciones para múltiples planes por IDs de plan separados por comas
GET/plan/:planIdJWT—Obtener todas las asignaciones para un plan
POST/JWT—Crear o actualizar asignaciones (estado predeterminado a "No Confirmado")
POST/accept/:idJWT—Aceptar una asignación (debe ser la persona asignada)
POST/decline/:idJWT—Rechazar una asignación (debe ser la persona asignada)
DELETE/:idJWT—Eliminar una asignación

Ejemplo: Aceptar una Asignación​

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

Fechas de Bloqueo​

Ruta base: /doing/blockoutDates

Extiende la clase base CRUD (GET /:id, DELETE /:id -- sin verificaciones de permisos).

MétodoRutaAutenticaciónPermisoDescripción
GET/:idJWT—Obtener una fecha de bloqueo por ID
GET/ids?ids=JWT—Obtener múltiples fechas de bloqueo por IDs separados por comas
GET/myJWT—Obtener fechas de bloqueo para el usuario actual
GET/upcomingJWT—Obtener todas las fechas de bloqueo próximas para la iglesia
POST/JWT—Crear o actualizar fechas de bloqueo (estado predeterminado a personId actual si no se proporciona)
DELETE/:idJWT—Eliminar una fecha de bloqueo

Tareas​

Ruta base: /doing/tasks

MétodoRutaAutenticaciónPermisoDescripción
GET/JWT—Obtener tareas abiertas para el usuario actual
GET/:idJWT—Obtener una tarea por ID
GET/closedJWT—Obtener tareas cerradas para el usuario actual
GET/timeline?taskIds=JWT—Obtener datos de cronología para tareas por IDs de tarea separados por comas
GET/directoryUpdate/:personIdJWT—Obtener tarea de actualización de directorio para una persona
POST/JWT—Crear o actualizar tareas. Agregue ?type=directoryUpdate para manejar tareas de actualización de directorio (carga automática de fotos)
POST/loadForGroupsJWT—Cargar tareas para grupos específicos. Cuerpo: { groupIds: [], status: "Open" }

Automatizaciones​

Ruta base: /doing/automations

MétodoRutaAutenticaciónPermisoDescripción
GET/JWT—Listar todas las automatizaciones para la iglesia
GET/:idJWT—Obtener una automatización por ID
GET/checkPúblico—Activar una verificación de todas las automatizaciones
POST/JWT—Crear o actualizar automatizaciones
DELETE/:idJWT—Eliminar una automatización

Acciones​

Ruta base: /doing/actions

Las acciones definen qué ocurre cuando se dispara una automatización.

MétodoRutaAutenticaciónPermisoDescripción
GET/:idJWT—Obtener una acción por ID
GET/automation/:idJWT—Obtener todas las acciones para una automatización
POST/JWT—Crear o actualizar acciones
DELETE/:idJWT—Eliminar una acción

Condiciones​

Ruta base: /doing/conditions

Las condiciones definen los criterios que disparan una automatización.

MétodoRutaAutenticaciónPermisoDescripción
GET/:idJWT—Obtener una condición por ID
GET/automation/:idJWT—Obtener todas las condiciones para una automatización
POST/JWT—Crear o actualizar condiciones
DELETE/:idJWT—Eliminar una condición

Conjunciones​

Ruta base: /doing/conjunctions

Las conjunciones vinculan múltiples condiciones en una automatización (lógica AND/OR).

MétodoRutaAutenticaciónPermisoDescripción
GET/:idJWT—Obtener una conjunción por ID
GET/automation/:idJWT—Obtener todas las conjunciones para una automatización
POST/JWT—Crear o actualizar conjunciones
DELETE/:idJWT—Eliminar una conjunción

Autorizaciones del Proveedor de Contenido​

Ruta base: /doing/contentProviderAuths

Extiende la clase base CRUD (GET /, GET /:id, POST /, DELETE /:id -- sin verificaciones de permisos).

Gestiona registros de autenticación de OAuth para proveedores de contenido externo (p. ej., integraciones de software de presentación).

MétodoRutaAutenticaciónPermisoDescripción
GET/JWT—Listar todas las autorizaciones del proveedor de contenido
GET/:idJWT—Obtener una autorización del proveedor de contenido por ID
GET/ids?ids=JWT—Obtener múltiples autorizaciones del proveedor de contenido por IDs separados por comas
GET/ministry/:ministryIdJWT—Obtener todas las autorizaciones del proveedor de contenido para un ministerio
GET/ministry/:ministryId/:providerIdJWT—Obtener registro de autenticación para un ministerio y proveedor específicos
POST/JWT—Crear o actualizar autorizaciones del proveedor de contenido
DELETE/:idJWT—Eliminar una autorización del proveedor de contenido

Proxy del Proveedor​

Ruta base: /doing/providerProxy

Proxifica solicitudes a proveedores de contenido externos (p. ej., ProPresenter, EasyWorship). Maneja la actualización de tokens automáticamente cuando vencen.

MétodoRutaAutenticaciónPermisoDescripción
POST/browseJWT—Examinar archivos del proveedor de contenido. Cuerpo: { ministryId, providerId, path }
POST/getPresentationsJWT—Obtener presentaciones de un proveedor de contenido. Cuerpo: { ministryId, providerId, path }
POST/getPlaylistJWT—Obtener una lista de reproducción de un proveedor de contenido. Cuerpo: { ministryId, providerId, path, resolution }
POST/getInstructionsJWT—Obtener instrucciones para un elemento de contenido. Cuerpo: { ministryId, providerId, path }
POST/getExpandedInstructionsJWT—Obtener instrucciones expandidas para un elemento de contenido. Cuerpo: { ministryId, providerId, path }

Páginas Relacionadas​