Basculer un enregistrement entre un statut complet et incomplet avec une seule mutation.


Basculer le statut d'enregistrement

La mutation updateTodoDoneStatus fournit un moyen simple de basculer le statut de complétion d'un enregistrement. Si l'enregistrement est incomplet, il le marque comme complet. S'il est complet, il le marque comme incomplet.

Exemple

mutation ToggleRecordStatus {
  updateTodoDoneStatus(todoId: "todo_123") {
    id
    title
    done
    updatedAt
  }
}

Paramètres d'entrée

Paramètre Type Requis Description
todoId String! ✅ Oui L'ID de l'enregistrement à basculer

Réponse

Renvoie l'objet Todo mis à jour avec tous les champs disponibles. Les champs couramment utilisés incluent :

  • id - Identifiant de l'enregistrement
  • title - Titre de l'enregistrement
  • done - Nouveau statut de complétion (vrai/faux)
  • updatedAt - Horodatage de la mise à jour
  • Tous les autres champs Todo sont disponibles

Permissions requises

Niveau d'accès Peut basculer le statut
OWNER ✅ Oui
ADMIN ✅ Oui
MEMBER ✅ Oui
CLIENT ✅ Oui
COMMENT_ONLY ❌ Non
VIEW_ONLY ❌ Non

Remarque : Les rôles personnalisés avec allowMarkRecordsAsDone: false seront bloqués pour utiliser cette mutation.

Réponses d'erreur

TodoNotFoundError

{
  "errors": [{
    "message": "Todo was not found.",
    "extensions": {
      "code": "TODO_NOT_FOUND"
    }
  }]
}

UnauthorizedError

{
  "errors": [{
    "message": "You are not authorized.",
    "extensions": {
      "code": "UNAUTHORIZED"
    }
  }]
}

Remarques importantes

Effets secondaires

Basculer le statut d'un enregistrement déclenche plusieurs actions automatisées :

  • Journal d'activité : Crée des entrées pour MARK_AS_COMPLETE ou MARK_AS_INCOMPLETE
  • Webhooks : Envoie des notifications aux points de terminaison de webhook configurés avec des états avant/après
  • Automatisations : Déclenche des règles d'automatisation TODO_MARKED_AS_COMPLETE ou TODO_MARKED_AS_INCOMPLETE
  • Notifications en temps réel : Envoie des mises à jour aux utilisateurs concernés (si configuré)
  • Publication en temps réel : Publie des mises à jour todo aux clients connectés
  • Suivi du temps : Met à jour automatiquement les champs personnalisés de durée
  • Index de recherche : Met à jour l'index de recherche pour une meilleure découvrabilité
  • Analytique : Met à jour les graphiques et les rapports
  • Fil d'activité : Les enregistrements complétés apparaissent dans le fil d'activité de l'entreprise

Conseils d'utilisation

  • La mutation est idempotente - l'appeler deux fois renvoie l'enregistrement à son état d'origine
  • L'opération est atomique - soit elle réussit complètement, soit elle échoue sans changements
  • Les rôles personnalisés peuvent restreindre cette action via la permission allowMarkRecordsAsDone

Points de terminaison associés

  • Lister les enregistrements : Utilisez todoQueries.todos pour interroger et filtrer les enregistrements
  • Mise à jour en masse : Utilisez updateTodos pour modifier plusieurs enregistrements à la fois

Assistant IA

Les réponses sont générées par l'IA et peuvent contenir des erreurs.

Comment puis-je vous aider ?

Posez-moi toutes vos questions sur Blue ou cette documentation.

Entrez pour envoyer • Maj+Entrée pour une nouvelle ligne • ⌘I pour ouvrir