Référence APIPromo configs

Promo configs

Configuration métier d’une promotion : titre, dates de début/fin, fenêtres de piscine JS/Rust, projet courant, et l’eventId 01 Edu associé.

La clé primaire est un key libre (ex. p1-2024, p2-2023).

Source : src/api/v1/promo_config.ts, src/db/schema/promo_config.schema.ts, src/services/dto/promo_config.dto.ts.

Voir aussi le schéma PromoConfig.


Lister toutes les configs

GET/api/v1/promo-configssource ↗

Réponse 200

[
  {
    "key": "p1-2024",
    "eventId": 72,
    "title": "Promotion 1 — 2024",
    "start": "2024-09-02",
    "piscineJsStart": "2024-11-04",
    "piscineJsEnd": "2024-11-29",
    "piscineRustStart": "2025-03-03",
    "piscineRustEnd": "2025-03-28",
    "end": "2026-07-31",
    "currentProject": "graphql"
  }
]

Récupérer une config

GET/api/v1/promo-configs/:keysource ↗
NomTypeLocalisationDescription
keystringpathClé de la config (ex. p1-2024)

Erreurs

CodeCause
404key introuvable

Créer une config

POST/api/v1/promo-configssource ↗

Body (JSON)

{
  "key": "p1-2025",
  "eventId": 85,
  "title": "Promotion 1 — 2025",
  "start": "2025-09-01",
  "piscineJsStart": "2025-11-03",
  "piscineJsEnd": "2025-11-28",
  "piscineRustStart": "2026-03-02",
  "piscineRustEnd": "2026-03-27",
  "end": "2027-07-30",
  "currentProject": "lets-travel"
}
ChampTypeRequisDescription
keystringIdentifiant unique
eventIdnumberID d’event 01 Edu
titlestringTitre affiché
startdateDate de début (YYYY-MM-DD)
enddateDate de fin (YYYY-MM-DD)
piscineJsStartdate⛔︎Début piscine JS
piscineJsEnddate⛔︎Fin piscine JS
piscineRustStartdate⛔︎Début piscine Rust
piscineRustEnddate⛔︎Fin piscine Rust
currentProjectstring⛔︎Projet courant (slug en minuscules)

Réponse 201

L’objet créé, identique à la requête GET /:key.

Erreurs

CodeCause
409Une config avec cette key existe déjà

Mettre à jour une config

PUT/api/v1/promo-configs/:keysource ↗

Tous les champs du body sont optionnels (cf. UpdatePromoConfigDTO). La clé n’est pas modifiable — supprimer puis recréer si besoin.

Erreurs

CodeCause
404key introuvable

Supprimer une config

DELETE/api/v1/promo-configs/:keysource ↗

Réponse

204 No Content.

Erreurs

CodeCause
404key introuvable