Rolebase Développeurs
Référence API

news

Une vue unifiée des activités récentes agrégeant les discussions actives, les décisions et les réunions terminées. Fournit un fil d'actualité centralisé à travers l'organisation.

Champs

Champ Type Description
id uuid Identifiant unique de l'élément d'actualité (généré automatiquement)
orgId uuid Référence à l'organisation
circleId uuid Référence au cercle (optionnel)
threadId uuid Référence à la discussion source (le cas échéant)
decisionId uuid Référence à la décision source (le cas échéant)
meetingId uuid Référence à la réunion source (le cas échéant)
createdAt Timestamp Date de création de l'élément d'actualité

Implémentation

L’entité news est implémentée sous forme de vue SQL qui combine :

  1. Discussions hors préparation — Toutes les discussions non archivées sauf celles avec le statut “Preparation”
  2. Décisions non archivées — Toutes les décisions qui n’ont pas été archivées
  3. Réunions terminées — Réunions qui sont terminées et non archivées

Relations

Relations objet

  • org — L’organisation à laquelle cet élément d’actualité appartient
  • circle — Le cercle associé à cet élément d’actualité (le cas échéant)
  • thread — La discussion source (si l’actualité provient d’une discussion)
  • decision — La décision source (si l’actualité provient d’une décision)
  • meeting — La réunion source (si l’actualité provient d’une réunion)

Exemples de requêtes

Lister les actualités récentes

query GetRecentNews($orgId: uuid!) {
  news(
    where: { orgId: { _eq: $orgId } }
    order_by: { createdAt: desc }
    limit: 10
  ) {
    id
    createdAt
    thread {
      title
      status
    }
    decision {
      title
      description
    }
    meeting {
      title
      summary
    }
    circle {
      role {
        name
      }
    }
  }
}

Requête d’actualités avec filtres et agrégation

query GetFilteredNews($where: news_bool_exp!) {
  news(
    where: { _and: [{ orgId: { _eq: $orgId } }, $where] }
    order_by: { createdAt: desc }
  ) {
    id
    createdAt
    threadId
    decisionId
    meetingId
    org {
      name
    }
  }
  news_aggregate(where: { _and: [{ orgId: { _eq: $orgId } }, $where] }) {
    aggregate {
      count
    }
  }
}

Permissions

L’accès aux actualités est contrôlé en fonction de l’appartenance à l’organisation :

  • Les membres de l’organisation peuvent consulter toutes les entrées d’actualité de leur organisation. Chaque entrée contient uniquement des références (UUID) vers l’entité source. L’accès aux données de la discussion, décision ou réunion dépend des permissions de chaque entité liée

Les éléments d’actualité sont générés automatiquement à partir des entités sources. Chaque élément d’actualité représente exactement une source (une discussion, une décision ou une réunion). Cette entité est en lecture seule car il s’agit d’une vue SQL.