Alterna un registro entre estado completo e incompleto con una sola mutación.
Alternar Estado del Registro
La mutación updateTodoDoneStatus
proporciona una forma simple de alternar el estado de finalización de un registro. Si el registro está incompleto, lo marca como completo. Si está completo, lo marca como incompleto.
Ejemplo
mutation ToggleRecordStatus {
updateTodoDoneStatus(todoId: "todo_123") {
id
title
done
updatedAt
}
}
Parámetros de Entrada
Parámetro | Tipo | Requerido | Descripción |
---|---|---|---|
todoId |
String! | ✅ Sí | El ID del registro a alternar |
Respuesta
Devuelve el objeto Todo
actualizado con todos los campos disponibles. Los campos comúnmente utilizados incluyen:
id
- Identificador del registrotitle
- Título del registrodone
- Nuevo estado de finalización (verdadero/falso)updatedAt
- Marca de tiempo de la actualización- Todos los demás campos de Todo están disponibles
Permisos Requeridos
Nivel de Acceso | Puede Alternar Estado |
---|---|
OWNER |
✅ Sí |
ADMIN |
✅ Sí |
MEMBER |
✅ Sí |
CLIENT |
✅ Sí |
COMMENT_ONLY |
❌ No |
VIEW_ONLY |
❌ No |
Nota: Los roles personalizados con allowMarkRecordsAsDone: false
estarán bloqueados para usar esta mutación.
Respuestas de Error
TodoNotFoundError
{
"errors": [{
"message": "Todo was not found.",
"extensions": {
"code": "TODO_NOT_FOUND"
}
}]
}
UnauthorizedError
{
"errors": [{
"message": "You are not authorized.",
"extensions": {
"code": "UNAUTHORIZED"
}
}]
}
Notas Importantes
Efectos Secundarios
Alternar el estado de un registro desencadena varias acciones automatizadas:
- Registro de Actividad: Crea entradas para MARCAR_COMO_COMPLETO o MARCAR_COMO_INCOMPLETO
- Webhooks: Envía notificaciones a los puntos finales de webhook configurados con estados antes/después
- Automatizaciones: Desencadena reglas de automatización TODO_MARCADO_COMO_COMPLETO o TODO_MARCADO_COMO_INCOMPLETO
- Notificaciones en Tiempo Real: Envía actualizaciones a los usuarios relevantes (si está configurado)
- Publicación en Tiempo Real: Publica actualizaciones de todo a los clientes conectados
- Seguimiento de Tiempo: Actualiza automáticamente los campos personalizados de duración de tiempo
- Índice de Búsqueda: Actualiza el índice de búsqueda para mejorar la descubribilidad
- Analíticas: Actualiza gráficos e informes
- Feed de Actividad: Los registros completados aparecen en el feed de actividad de la empresa
Consejos de Uso
- La mutación es idempotente: llamarla dos veces devuelve el registro a su estado original
- La operación es atómica: o se completa por completo o falla sin cambios
- Los roles personalizados pueden restringir esta acción a través del permiso
allowMarkRecordsAsDone
Endpoints Relacionados
- Listar Registros: Usa
todoQueries.todos
para consultar y filtrar registros - Actualización Masiva: Usa
updateTodos
para modificar múltiples registros a la vez