Aller au contenu

Administration News Banner

Contrôleur HTTP de gestion du bandeau de news global (affiché sur l'app investisseur). Source : news-banner.controller.ts.

L'endpoint d'écriture (PUT) requiert une session admin BetterAuth valide (AdminAuthGuard). L'endpoint de lecture (GET) n'a pas de guard explicite sur ce contrôleur.

PUT /administration/news-banner

Met à jour le bandeau de news global (unique enregistrement en base) et invalide le cache Redis associé. Trace l'action via AdminAction (NEWS_BANNER_UPDATE).

Source : news-banner.controller.ts#L22.

Request body

{
  "json": {
    "enabled": true,
    "message": {
      "fr": "Message en français",
      "en": "English message"
    },
    "link": "https://...",
    "requireUserIdQueryParam": false
  }
}

Validé via object({ json: newsBannerValidator }) (newsBannerValidator depuis @bricks-common/api-communication). Les messages fr et en doivent faire entre 5 et 130 caractères.

Effet

  • UPDATE news_banner SET json = $1 (table à un seul enregistrement)
  • RedisClient.setValueWithExp sur la clé newsBannerCache.key avec la nouvelle valeur

GET /administration/news-banner

Retourne le bandeau de news courant.

Source : news-banner.controller.ts#L47.

Pré-conditions

  • Aucun guard explicite sur ce handler

Response

{
  "enabled": true,
  "message": { "fr": "...", "en": "..." },
  "link": "https://...",
  "requireUserIdQueryParam": false
}

Validé via newsBannerValidator avec onlyOneRowResult (un et un seul enregistrement attendu).

Liens