mirror of
https://github.com/siop-spelev/siop2.git
synced 2026-08-08 12:41:54 +00:00
Écran Voix R5 (maquetté, jamais construit) implémenté sur décision du référent : open-source et local, pas d'API externe. - apps/ai : faster-whisper (CTranslate2, CPU, MIT) opt-in (AI_TRANSCRIPTION=off|locale|deterministe, défaut off) ; endpoint /internal/transcrire — l'audio ne survit JAMAIS à l'appel (fichier temporaire supprimé quoi qu'il arrive) ; indexer_bilans inclut désormais InterventionReport.note anonymisée (champ existant depuis R2, jamais eu d'écran jusqu'ici) ; 29 pytest. - Contrat (77 opérations) : POST /assistant/transcribe (multipart). - API : proxy multipart vers siop2-ai (WORK_ORDERS.edit — même droit que la saisie du bilan) ; 2 tests e2e (80 tests API au total). - Mobile : expo-audio + expo-file-system, bouton dicter/terminer sur l'écran de clôture, purge locale après transcription, « Joindre la description à l'OT » (corrige un bug latent : enfilerBilan ignorait silencieusement les mises à jour de note). - Docker : siop2-ai embarque le modèle Whisper au build (1,54→2,19 Go), construit et vérifié (transcription réelle en conteneur, non-root). - Vérifié réellement : transcription fidèle (voix de synthèse française) en direct, bout en bout via l'API, dans le conteneur Docker construit, et chaîne corpus complète (note → clôture → réindexation → recherche sémantique). - Base de dev locale réinitialisée avec accord explicite du référent (prisma migrate reset, bloqué par défaut pour un agent IA) après pollution par les tests manuels de la recette terrain précédente. Reste : test tactile sur iPhone physique (bouton dicter) — bloqué par une connexion USB qui ne s'est pas rétablie malgré câble/port/ redémarrage essayés à plusieurs reprises, reporté comme la recette Android. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
4418 lines
123 KiB
TypeScript
4418 lines
123 KiB
TypeScript
/**
|
||
* This file was auto-generated by openapi-typescript.
|
||
* Do not make direct changes to the file.
|
||
*/
|
||
|
||
export interface paths {
|
||
"/auth/login": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Connexion par e-mail et mot de passe */
|
||
post: operations["login"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/auth/demo-accounts": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/**
|
||
* Comptes de démonstration (ADR-002 — jamais de secret)
|
||
* @description ADR-002 : cette route est absente (404) quand DEMO_MODE n’est pas actif.
|
||
*/
|
||
get: operations["listDemoAccounts"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/auth/demo-login": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/**
|
||
* Connexion 1 clic sur un compte de démonstration (ADR-002)
|
||
* @description ADR-002 : cette route est absente (404) quand DEMO_MODE n’est pas actif.
|
||
*/
|
||
post: operations["demoLogin"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/users/me": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Profil courant + matrice de permissions du rôle */
|
||
get: operations["getMe"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/auth/activate": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Activer un compte invité (lien 7 jours) — connecte directement */
|
||
post: operations["activateAccount"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/categories": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Référentiels administrables (catégories d’équipement, types d’organes) */
|
||
get: operations["listCategories"];
|
||
put?: never;
|
||
/** Ajouter une catégorie */
|
||
post: operations["createCategory"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/categories/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** Renommer ou (dés)activer — jamais de suppression si utilisée */
|
||
patch: operations["updateCategory"];
|
||
trace?: never;
|
||
};
|
||
"/locations": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Sites et zones (liste plate, le client construit l’arbre) */
|
||
get: operations["listLocations"];
|
||
put?: never;
|
||
/** Créer un site (sans parent) ou une zone (profondeur max 2) */
|
||
post: operations["createLocation"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/locations/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** Modifier un emplacement */
|
||
patch: operations["updateLocation"];
|
||
trace?: never;
|
||
};
|
||
"/assets": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Inventaire des appareils */
|
||
get: operations["listAssets"];
|
||
put?: never;
|
||
/** Créer un appareil (avec ses organes) — le QR découle de la référence */
|
||
post: operations["createAsset"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/assets/options": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Options d’appareils pour le signalement (tout rôle authentifié) */
|
||
get: operations["listAssetOptions"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/assets/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Fiche appareil (identité + organes) */
|
||
get: operations["getAsset"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** Modifier un appareil (dont son statut d’équipement) */
|
||
patch: operations["updateAsset"];
|
||
trace?: never;
|
||
};
|
||
"/assets/{id}/components": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Ajouter un organe (jamais d’emplacement propre) */
|
||
post: operations["addAssetComponent"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/assets/{id}/components/{componentId}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
/** Retirer un organe */
|
||
delete: operations["removeAssetComponent"];
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/teams": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Équipes et leurs membres */
|
||
get: operations["listTeams"];
|
||
put?: never;
|
||
/** Créer une équipe */
|
||
post: operations["createTeam"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/teams/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** Modifier une équipe (nom, description, membres) */
|
||
patch: operations["updateTeam"];
|
||
trace?: never;
|
||
};
|
||
"/users": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Personnes (statut dérivé : actif / invité / désactivé) */
|
||
get: operations["listUsers"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/roles": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Les 7 rôles (pour l’invitation) */
|
||
get: operations["listRoles"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/users/invitations": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Inviter — crée le compte inactif et émet le lien d’activation (7 j) */
|
||
post: operations["inviteUser"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/users/{id}/invitation": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Régénérer le lien d’activation d’un compte non activé */
|
||
post: operations["resendInvitation"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/users/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** Modifier une personne (rôle, équipes, activation du compte) */
|
||
patch: operations["updateUser"];
|
||
trace?: never;
|
||
};
|
||
"/documents": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Bibliothèque (filtrable par appareil ou OT) */
|
||
get: operations["listDocuments"];
|
||
put?: never;
|
||
/** Téléverser (PDF/JPG/PNG, 20 Mo max, rattachement appareil OU OT requis) */
|
||
post: operations["uploadDocument"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/documents/{id}/download": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Télécharger — streamé par l’API (MinIO jamais exposé) */
|
||
get: operations["downloadDocument"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/documents/{id}/corpus": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** Inclure/exclure du corpus IA (D3 — réversible, effectif à la prochaine réindexation) */
|
||
patch: operations["updateDocumentCorpus"];
|
||
trace?: never;
|
||
};
|
||
"/documents/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
/** Supprimer (permission d’édition sur la cible) */
|
||
delete: operations["deleteDocument"];
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/analytics/summary": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Le tableau de la direction : coûts, pannes par organe (bilans), préventif, top équipements */
|
||
get: operations["getAnalyticsSummary"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/assistant/ask": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Assistant R5 — sourcé ou silencieux : extraits cités ou refus honnête (D2) */
|
||
post: operations["askAssistant"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/assistant/suggest-bilan": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Suggérer des codes de bilan depuis une description libre (D1 — l’humain valide) */
|
||
post: operations["suggestBilan"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/assistant/reindex": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Réindexer le corpus (bibliothèque PDF + bilans clôturés, anonymisés à l’ingestion — D4) */
|
||
post: operations["reindexAssistant"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/assistant/transcribe": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Dictée (R5 D5, opt-in) — l’audio est transcrit puis JAMAIS conservé, à relire avant tout usage */
|
||
post: operations["transcribeAudio"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/search": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Recherche globale (OT, ascenseurs, sites) — chaque famille filtrée par la matrice */
|
||
get: operations["globalSearch"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/partners": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Tiers (fournisseurs, syndics) — permission PURCHASE_ORDERS */
|
||
get: operations["listPartners"];
|
||
put?: never;
|
||
/** Créer un tiers */
|
||
post: operations["createPartner"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/partners/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** Modifier / (dés)activer un tiers */
|
||
patch: operations["updatePartner"];
|
||
trace?: never;
|
||
};
|
||
"/parts": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Stock de pièces — quantités DÉRIVÉES des mouvements */
|
||
get: operations["listParts"];
|
||
put?: never;
|
||
/** Créer une pièce (référence P-#### générée) */
|
||
post: operations["createPart"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/parts/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Fiche pièce : les mouvements SONT le stock */
|
||
get: operations["getPart"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** Modifier une pièce (désignation, seuil, fournisseur…) */
|
||
patch: operations["updatePart"];
|
||
trace?: never;
|
||
};
|
||
"/parts/{id}/movements": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Entrée manuelle (+) ou ajustement (± motif REQUIS) — jamais de saisie de stock */
|
||
post: operations["addStockMovement"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/purchase-orders": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Bons de commande */
|
||
get: operations["listPurchaseOrders"];
|
||
put?: never;
|
||
/** Créer un BC (brouillon) */
|
||
post: operations["createPurchaseOrder"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/purchase-orders/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Fiche BC (lignes, total) */
|
||
get: operations["getPurchaseOrder"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/purchase-orders/{id}/transition": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Envoyer / réceptionner (→ entrées de stock, PU figés) / annuler */
|
||
post: operations["transitionPurchaseOrder"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/work-orders/{id}/consume-part": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Consommer une pièce sur l’OT — stock décrémenté, PRIX FIGÉ */
|
||
post: operations["consumePart"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/work-orders/{id}/labor": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Saisir de la main-d’œuvre — TAUX FIGÉ à la saisie */
|
||
post: operations["addLaborTime"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/portal/assets/{reference}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Résoudre le QR scanné (référence → appareil, préremplissage) */
|
||
get: operations["getPortalAsset"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/portal/requests": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Signaler sans compte — renvoie le jeton de suivi (à garder sur le téléphone) */
|
||
post: operations["createPortalRequest"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/portal/requests/{reference}/{token}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Suivi sans jargon (Reçu → Intervention → Résolu) — jeton requis */
|
||
get: operations["getPortalRequestStatus"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/preventive/templates": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Gabarits de tâches du préventif (périodicité en mois) */
|
||
get: operations["listTaskTemplates"];
|
||
put?: never;
|
||
/** Ajouter un gabarit */
|
||
post: operations["createTaskTemplate"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/preventive/templates/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** Modifier / (dés)activer un gabarit — jamais de suppression si utilisé */
|
||
patch: operations["updateTaskTemplate"];
|
||
trace?: never;
|
||
};
|
||
"/preventive/generate": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Générer la grille du mois — IDEMPOTENT (regénérer ne double rien) */
|
||
post: operations["generatePreventive"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/preventive/status": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** État du mois courant (générées, terminées, en retard, premiers contrôles) */
|
||
get: operations["getPreventiveStatus"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/assets/{id}/meters": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Compteurs de l’appareil (relevés récents d’abord) */
|
||
get: operations["getAssetMeters"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/assets/{id}/meter-readings": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Enregistrer un relevé — strictement croissant */
|
||
post: operations["addMeterReading"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/work-orders": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Ordres de travail (sans « voir autre » : seulement les siens) */
|
||
get: operations["listWorkOrders"];
|
||
put?: never;
|
||
/** Créer un OT (statut Ouvert) */
|
||
post: operations["createWorkOrder"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/work-orders/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Fiche OT (activité, checklist, bilan, transitions autorisées, blocages de clôture) */
|
||
get: operations["getWorkOrder"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/work-orders/{id}/transition": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Changer l’état (machine à états stricte ; DONE exige bilan + checklist) */
|
||
post: operations["transitionWorkOrder"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/work-orders/{id}/comments": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Commenter (activité chronologique) */
|
||
post: operations["commentWorkOrder"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/work-orders/{id}/assignees": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
/** Assigner (remplace la liste) */
|
||
put: operations["setWorkOrderAssignees"];
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/work-orders/{id}/report": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
/** Renseigner le bilan codé (null efface un champ) */
|
||
put: operations["upsertWorkOrderReport"];
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/work-orders/{id}/checklist/{itemId}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** Régler une tâche de la grille (Fait / N-A / à faire) */
|
||
patch: operations["patchChecklistItem"];
|
||
trace?: never;
|
||
};
|
||
"/requests": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Demandes (sans « voir autre » : seulement les siennes) */
|
||
get: operations["listRequests"];
|
||
put?: never;
|
||
/** Signaler (interne — le portail public QR arrive en R2.4) */
|
||
post: operations["createRequest"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/requests/{id}/approve": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Approuver → crée l’OT lié (1-1, jamais de doublon) */
|
||
post: operations["approveRequest"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/requests/{id}/reject": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
/** Rejeter — motif obligatoire, lisible côté demandeur */
|
||
post: operations["rejectRequest"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/reference-values": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** Référentiels du bilan codé (6 champs) */
|
||
get: operations["listReferenceValues"];
|
||
put?: never;
|
||
/** Ajouter une valeur de référentiel */
|
||
post: operations["createReferenceValue"];
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
"/reference-values/{id}": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
get?: never;
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
/** Renommer ou (dés)activer — jamais de suppression si utilisée */
|
||
patch: operations["updateReferenceValue"];
|
||
trace?: never;
|
||
};
|
||
"/health": {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
/** État des dépendances (base, Redis, stockage) */
|
||
get: operations["getHealth"];
|
||
put?: never;
|
||
post?: never;
|
||
delete?: never;
|
||
options?: never;
|
||
head?: never;
|
||
patch?: never;
|
||
trace?: never;
|
||
};
|
||
}
|
||
export type webhooks = Record<string, never>;
|
||
export interface components {
|
||
schemas: {
|
||
AuthResponse: {
|
||
accessToken: string;
|
||
user: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: email */
|
||
email: string;
|
||
displayName: string;
|
||
role: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
name: "Administrateur" | "Dispatcher" | "Technicien" | "Technicien limité" | "Gestionnaire" | "Demandeur" | "Vue seule";
|
||
};
|
||
isDemo: boolean;
|
||
};
|
||
};
|
||
LoginRequest: {
|
||
/** Format: email */
|
||
email: string;
|
||
password: string;
|
||
};
|
||
DemoAccountsResponse: {
|
||
accounts: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
displayName: string;
|
||
/** @enum {string} */
|
||
roleName: "Administrateur" | "Dispatcher" | "Technicien" | "Technicien limité" | "Gestionnaire" | "Demandeur" | "Vue seule";
|
||
initials: string;
|
||
}[];
|
||
};
|
||
DemoLoginRequest: {
|
||
/** Format: uuid */
|
||
userId: string;
|
||
};
|
||
MeResponse: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: email */
|
||
email: string;
|
||
displayName: string;
|
||
role: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
name: "Administrateur" | "Dispatcher" | "Technicien" | "Technicien limité" | "Gestionnaire" | "Demandeur" | "Vue seule";
|
||
};
|
||
isDemo: boolean;
|
||
permissions: {
|
||
/** @enum {string} */
|
||
objectCategory: "WORK_ORDERS" | "REQUESTS" | "ASSETS" | "LOCATIONS" | "METERS" | "PARTS" | "PURCHASE_ORDERS" | "PEOPLE_TEAMS" | "ANALYTICS" | "SETTINGS";
|
||
canView: boolean;
|
||
canViewOther: boolean;
|
||
canCreate: boolean;
|
||
canEdit: boolean;
|
||
canDelete: boolean;
|
||
}[];
|
||
};
|
||
ActivateRequest: {
|
||
token: string;
|
||
password: string;
|
||
};
|
||
CategoriesResponse: {
|
||
categories: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
kind: "EQUIPMENT" | "COMPONENT_TYPE";
|
||
name: string;
|
||
isActive: boolean;
|
||
usageCount: number;
|
||
}[];
|
||
};
|
||
Category: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
kind: "EQUIPMENT" | "COMPONENT_TYPE";
|
||
name: string;
|
||
isActive: boolean;
|
||
usageCount: number;
|
||
};
|
||
CategoryCreate: {
|
||
/** @enum {string} */
|
||
kind: "EQUIPMENT" | "COMPONENT_TYPE";
|
||
name: string;
|
||
};
|
||
CategoryUpdate: {
|
||
name?: string;
|
||
isActive?: boolean;
|
||
};
|
||
LocationsResponse: {
|
||
locations: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
name: string;
|
||
parentId: string | null;
|
||
address: string | null;
|
||
city: string | null;
|
||
guardianName: string | null;
|
||
guardianPhone: string | null;
|
||
latitude: number | null;
|
||
longitude: number | null;
|
||
partnerId: string | null;
|
||
partnerName: string | null;
|
||
assetCount: number;
|
||
}[];
|
||
};
|
||
Location: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
name: string;
|
||
parentId: string | null;
|
||
address: string | null;
|
||
city: string | null;
|
||
guardianName: string | null;
|
||
guardianPhone: string | null;
|
||
latitude: number | null;
|
||
longitude: number | null;
|
||
partnerId: string | null;
|
||
partnerName: string | null;
|
||
assetCount: number;
|
||
};
|
||
LocationCreate: {
|
||
name: string;
|
||
/** Format: uuid */
|
||
parentId?: string;
|
||
address?: string;
|
||
city?: string;
|
||
guardianName?: string;
|
||
guardianPhone?: string;
|
||
latitude?: number;
|
||
longitude?: number;
|
||
partnerId?: string | null;
|
||
};
|
||
LocationUpdate: {
|
||
name?: string;
|
||
/** Format: uuid */
|
||
parentId?: string;
|
||
address?: string;
|
||
city?: string;
|
||
guardianName?: string;
|
||
guardianPhone?: string;
|
||
latitude?: number;
|
||
longitude?: number;
|
||
partnerId?: string | null;
|
||
};
|
||
AssetsResponse: {
|
||
assets: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
brand: string;
|
||
model: string | null;
|
||
serialNumber: string | null;
|
||
commissionedAt: string | null;
|
||
loadKg: number | null;
|
||
floors: number | null;
|
||
/** @enum {string} */
|
||
status: "IN_SERVICE" | "OUT_OF_SERVICE" | "UNDER_MAINTENANCE";
|
||
/** Format: uuid */
|
||
categoryId: string;
|
||
categoryName: string;
|
||
/** Format: uuid */
|
||
locationId: string;
|
||
locationName: string;
|
||
siteName: string;
|
||
componentCount: number;
|
||
}[];
|
||
};
|
||
AssetOptionsResponse: {
|
||
options: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
siteName: string;
|
||
}[];
|
||
};
|
||
AssetDetail: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
brand: string;
|
||
model: string | null;
|
||
serialNumber: string | null;
|
||
commissionedAt: string | null;
|
||
loadKg: number | null;
|
||
floors: number | null;
|
||
/** @enum {string} */
|
||
status: "IN_SERVICE" | "OUT_OF_SERVICE" | "UNDER_MAINTENANCE";
|
||
/** Format: uuid */
|
||
categoryId: string;
|
||
categoryName: string;
|
||
/** Format: uuid */
|
||
locationId: string;
|
||
locationName: string;
|
||
siteName: string;
|
||
componentCount: number;
|
||
components: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
typeId: string;
|
||
typeName: string;
|
||
designation: string | null;
|
||
}[];
|
||
};
|
||
AssetCreate: {
|
||
reference: string;
|
||
brand: string;
|
||
model?: string;
|
||
serialNumber?: string;
|
||
/** Format: date-time */
|
||
commissionedAt?: string;
|
||
loadKg?: number;
|
||
floors?: number;
|
||
/** Format: uuid */
|
||
categoryId: string;
|
||
/** Format: uuid */
|
||
locationId: string;
|
||
components?: {
|
||
/** Format: uuid */
|
||
typeId: string;
|
||
designation?: string;
|
||
}[];
|
||
};
|
||
AssetUpdate: {
|
||
reference?: string;
|
||
brand?: string;
|
||
model?: string;
|
||
serialNumber?: string;
|
||
/** Format: date-time */
|
||
commissionedAt?: string;
|
||
loadKg?: number;
|
||
floors?: number;
|
||
/** Format: uuid */
|
||
categoryId?: string;
|
||
/** Format: uuid */
|
||
locationId?: string;
|
||
/** @enum {string} */
|
||
status?: "IN_SERVICE" | "OUT_OF_SERVICE" | "UNDER_MAINTENANCE";
|
||
};
|
||
AssetComponent: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
typeId: string;
|
||
typeName: string;
|
||
designation: string | null;
|
||
};
|
||
AssetComponentCreate: {
|
||
/** Format: uuid */
|
||
typeId: string;
|
||
designation?: string;
|
||
};
|
||
TeamsResponse: {
|
||
teams: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
name: string;
|
||
description: string | null;
|
||
members: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
displayName: string;
|
||
roleName: string;
|
||
initials: string;
|
||
}[];
|
||
}[];
|
||
};
|
||
Team: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
name: string;
|
||
description: string | null;
|
||
members: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
displayName: string;
|
||
roleName: string;
|
||
initials: string;
|
||
}[];
|
||
};
|
||
TeamCreate: {
|
||
name: string;
|
||
description?: string;
|
||
memberIds?: string[];
|
||
};
|
||
TeamUpdate: {
|
||
name?: string;
|
||
description?: string;
|
||
memberIds?: string[];
|
||
};
|
||
UsersResponse: {
|
||
users: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: email */
|
||
email: string;
|
||
displayName: string;
|
||
phone: string | null;
|
||
role: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
name: "Administrateur" | "Dispatcher" | "Technicien" | "Technicien limité" | "Gestionnaire" | "Demandeur" | "Vue seule";
|
||
};
|
||
teams: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
name: string;
|
||
}[];
|
||
/** @enum {string} */
|
||
status: "active" | "invited" | "disabled";
|
||
isDemo: boolean;
|
||
hourlyRate: number | null;
|
||
}[];
|
||
};
|
||
RolesResponse: {
|
||
roles: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
name: "Administrateur" | "Dispatcher" | "Technicien" | "Technicien limité" | "Gestionnaire" | "Demandeur" | "Vue seule";
|
||
}[];
|
||
};
|
||
InvitationResponse: {
|
||
/** Format: uuid */
|
||
userId: string;
|
||
activationToken: string;
|
||
/** Format: date-time */
|
||
expiresAt: string;
|
||
};
|
||
InvitationCreate: {
|
||
/** Format: email */
|
||
email: string;
|
||
displayName: string;
|
||
/** Format: uuid */
|
||
roleId: string;
|
||
teamIds?: string[];
|
||
phone?: string;
|
||
};
|
||
UserAdmin: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: email */
|
||
email: string;
|
||
displayName: string;
|
||
phone: string | null;
|
||
role: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
name: "Administrateur" | "Dispatcher" | "Technicien" | "Technicien limité" | "Gestionnaire" | "Demandeur" | "Vue seule";
|
||
};
|
||
teams: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
name: string;
|
||
}[];
|
||
/** @enum {string} */
|
||
status: "active" | "invited" | "disabled";
|
||
isDemo: boolean;
|
||
hourlyRate: number | null;
|
||
};
|
||
UserUpdate: {
|
||
displayName?: string;
|
||
phone?: string;
|
||
/** Format: uuid */
|
||
roleId?: string;
|
||
teamIds?: string[];
|
||
isActive?: boolean;
|
||
hourlyRate?: number | null;
|
||
};
|
||
DocumentsResponse: {
|
||
documents: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
kind: "NOTICE" | "CERTIFICATE" | "PHOTO" | "OTHER";
|
||
fileName: string;
|
||
size: number;
|
||
contentType: string;
|
||
assetReference: string | null;
|
||
workOrderReference: string | null;
|
||
uploadedByName: string | null;
|
||
/** Format: date-time */
|
||
createdAt: string;
|
||
inCorpus: boolean;
|
||
indexedAt: string | null;
|
||
chunkCount: number;
|
||
}[];
|
||
};
|
||
Document: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
kind: "NOTICE" | "CERTIFICATE" | "PHOTO" | "OTHER";
|
||
fileName: string;
|
||
size: number;
|
||
contentType: string;
|
||
assetReference: string | null;
|
||
workOrderReference: string | null;
|
||
uploadedByName: string | null;
|
||
/** Format: date-time */
|
||
createdAt: string;
|
||
inCorpus: boolean;
|
||
indexedAt: string | null;
|
||
chunkCount: number;
|
||
};
|
||
DocumentCorpusUpdate: {
|
||
inCorpus: boolean;
|
||
};
|
||
AnalyticsSummary: {
|
||
months: number;
|
||
monthCost: number;
|
||
previousMonthCost: number;
|
||
closed: {
|
||
total: number;
|
||
preventive: number;
|
||
};
|
||
preventiveRate: number | null;
|
||
avgResolutionDays: number | null;
|
||
failuresByComponent: {
|
||
label: string;
|
||
count: number;
|
||
}[];
|
||
costsByMonth: {
|
||
month: string;
|
||
total: number;
|
||
}[];
|
||
topAssets: {
|
||
reference: string;
|
||
siteName: string;
|
||
correctives: number;
|
||
partsCost: number;
|
||
laborCost: number;
|
||
total: number;
|
||
}[];
|
||
};
|
||
AssistantAnswer: {
|
||
/** @enum {string} */
|
||
mode: "EXTRACTIVE" | "GENERATED" | "REFUSAL";
|
||
answer: string | null;
|
||
excerpts: {
|
||
/** @enum {string} */
|
||
sourceType: "DOCUMENT" | "WORK_ORDER";
|
||
documentId: string | null;
|
||
workOrderId: string | null;
|
||
title: string;
|
||
locator: string;
|
||
content: string;
|
||
score: number;
|
||
}[];
|
||
corpus: {
|
||
documents: number;
|
||
reports: number;
|
||
};
|
||
};
|
||
AssistantAsk: {
|
||
question: string;
|
||
};
|
||
BilanSuggestions: {
|
||
suggestions: {
|
||
/** @enum {string} */
|
||
field: "DOOR_STATE" | "CABIN_POSITION" | "ANOMALY" | "EXTERNAL_CAUSE" | "ACTION_TAKEN" | "COMPONENT_CONCERNED";
|
||
/** Format: uuid */
|
||
valueId: string;
|
||
label: string;
|
||
/** @enum {string} */
|
||
confidence: "HIGH" | "MEDIUM";
|
||
similarReports: number;
|
||
score: number;
|
||
}[];
|
||
};
|
||
SuggestBilan: {
|
||
description: string;
|
||
};
|
||
ReindexResult: {
|
||
documentsIndexed: number;
|
||
documentsSkipped: number;
|
||
reportsIndexed: number;
|
||
chunks: number;
|
||
};
|
||
TranscriptionResult: {
|
||
text: string;
|
||
};
|
||
SearchResponse: {
|
||
workOrders: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
title: string;
|
||
/** @enum {string} */
|
||
status: "OPEN" | "IN_PROGRESS" | "ON_HOLD" | "DONE" | "CANCELLED";
|
||
}[];
|
||
assets: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
brand: string;
|
||
model: string | null;
|
||
siteName: string;
|
||
}[];
|
||
sites: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
name: string;
|
||
city: string | null;
|
||
}[];
|
||
};
|
||
PartnersResponse: {
|
||
partners: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
name: string;
|
||
/** @enum {string} */
|
||
kind: "SUPPLIER" | "CLIENT";
|
||
contactName: string | null;
|
||
phone: string | null;
|
||
email: string | null;
|
||
city: string | null;
|
||
isActive: boolean;
|
||
openOrders: number;
|
||
siteNames: string[];
|
||
}[];
|
||
};
|
||
Partner: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
name: string;
|
||
/** @enum {string} */
|
||
kind: "SUPPLIER" | "CLIENT";
|
||
contactName: string | null;
|
||
phone: string | null;
|
||
email: string | null;
|
||
city: string | null;
|
||
isActive: boolean;
|
||
openOrders: number;
|
||
siteNames: string[];
|
||
};
|
||
PartnerCreate: {
|
||
name: string;
|
||
/** @enum {string} */
|
||
kind: "SUPPLIER" | "CLIENT";
|
||
contactName?: string;
|
||
phone?: string;
|
||
/** Format: email */
|
||
email?: string;
|
||
city?: string;
|
||
};
|
||
PartnerUpdate: {
|
||
name?: string;
|
||
/** @enum {string} */
|
||
kind?: "SUPPLIER" | "CLIENT";
|
||
contactName?: string;
|
||
phone?: string;
|
||
/** Format: email */
|
||
email?: string;
|
||
city?: string;
|
||
isActive?: boolean;
|
||
};
|
||
PartsResponse: {
|
||
parts: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
designation: string;
|
||
threshold: number;
|
||
lastUnitPrice: number | null;
|
||
compatible: string | null;
|
||
supplierId: string | null;
|
||
supplierName: string | null;
|
||
isActive: boolean;
|
||
stock: number;
|
||
belowThreshold: boolean;
|
||
}[];
|
||
};
|
||
PartDetail: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
designation: string;
|
||
threshold: number;
|
||
lastUnitPrice: number | null;
|
||
compatible: string | null;
|
||
supplierId: string | null;
|
||
supplierName: string | null;
|
||
isActive: boolean;
|
||
stock: number;
|
||
belowThreshold: boolean;
|
||
movements: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
kind: "RECEIPT" | "ENTRY" | "CONSUMPTION" | "ADJUSTMENT";
|
||
quantity: number;
|
||
unitPrice: number | null;
|
||
reason: string | null;
|
||
workOrderReference: string | null;
|
||
purchaseOrderReference: string | null;
|
||
byName: string | null;
|
||
/** Format: date-time */
|
||
createdAt: string;
|
||
}[];
|
||
};
|
||
PartCreate: {
|
||
designation: string;
|
||
threshold?: number;
|
||
/** Format: uuid */
|
||
supplierId?: string;
|
||
compatible?: string;
|
||
initialPrice?: number;
|
||
};
|
||
PartUpdate: {
|
||
designation?: string;
|
||
threshold?: number;
|
||
supplierId?: string | null;
|
||
compatible?: string | null;
|
||
isActive?: boolean;
|
||
};
|
||
StockMovementCreate: {
|
||
/** @enum {string} */
|
||
kind: "ENTRY" | "ADJUSTMENT";
|
||
quantity: number;
|
||
reason?: string;
|
||
};
|
||
PurchaseOrdersResponse: {
|
||
purchaseOrders: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
/** @enum {string} */
|
||
status: "DRAFT" | "SENT" | "RECEIVED" | "CANCELLED";
|
||
/** Format: uuid */
|
||
supplierId: string;
|
||
supplierName: string;
|
||
lines: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
partId: string;
|
||
partReference: string;
|
||
designation: string;
|
||
quantity: number;
|
||
unitPrice: number;
|
||
}[];
|
||
total: number;
|
||
sentAt: string | null;
|
||
receivedAt: string | null;
|
||
/** Format: date-time */
|
||
createdAt: string;
|
||
}[];
|
||
};
|
||
PurchaseOrder: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
/** @enum {string} */
|
||
status: "DRAFT" | "SENT" | "RECEIVED" | "CANCELLED";
|
||
/** Format: uuid */
|
||
supplierId: string;
|
||
supplierName: string;
|
||
lines: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** Format: uuid */
|
||
partId: string;
|
||
partReference: string;
|
||
designation: string;
|
||
quantity: number;
|
||
unitPrice: number;
|
||
}[];
|
||
total: number;
|
||
sentAt: string | null;
|
||
receivedAt: string | null;
|
||
/** Format: date-time */
|
||
createdAt: string;
|
||
};
|
||
PurchaseOrderCreate: {
|
||
/** Format: uuid */
|
||
supplierId: string;
|
||
lines: {
|
||
/** Format: uuid */
|
||
partId: string;
|
||
quantity: number;
|
||
unitPrice: number;
|
||
}[];
|
||
};
|
||
PurchaseOrderTransition: {
|
||
/** @enum {string} */
|
||
to: "SENT" | "RECEIVED" | "CANCELLED";
|
||
};
|
||
WorkOrderDetail: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
title: string;
|
||
/** @enum {string} */
|
||
type: "CORRECTIVE" | "PREVENTIVE" | "WORKS";
|
||
/** @enum {string} */
|
||
status: "OPEN" | "IN_PROGRESS" | "ON_HOLD" | "DONE" | "CANCELLED";
|
||
/** @enum {string} */
|
||
priority: "NONE" | "LOW" | "MEDIUM" | "HIGH" | "PERSON_TRAPPED";
|
||
/** Format: uuid */
|
||
assetId: string;
|
||
assetReference: string;
|
||
siteName: string;
|
||
dueDate: string | null;
|
||
assignees: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
displayName: string;
|
||
initials: string;
|
||
}[];
|
||
/** Format: date-time */
|
||
createdAt: string;
|
||
description: string | null;
|
||
locationName: string;
|
||
startedAt: string | null;
|
||
completedAt: string | null;
|
||
cancelledAt: string | null;
|
||
createdBy: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
displayName: string;
|
||
initials: string;
|
||
} | null;
|
||
request: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
requesterLabel: string;
|
||
} | null;
|
||
events: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
kind: string;
|
||
message: string | null;
|
||
by: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
displayName: string;
|
||
initials: string;
|
||
} | null;
|
||
/** Format: date-time */
|
||
createdAt: string;
|
||
}[];
|
||
checklist: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
label: string;
|
||
/** @enum {string} */
|
||
state: "PENDING" | "DONE" | "NA";
|
||
doneBy: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
displayName: string;
|
||
initials: string;
|
||
} | null;
|
||
doneAt: string | null;
|
||
}[];
|
||
report: {
|
||
note: string | null;
|
||
doorState: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
label: string;
|
||
} | null;
|
||
cabinPosition: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
label: string;
|
||
} | null;
|
||
anomaly: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
label: string;
|
||
} | null;
|
||
externalCause: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
label: string;
|
||
} | null;
|
||
actionTaken: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
label: string;
|
||
} | null;
|
||
componentConcerned: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
label: string;
|
||
} | null;
|
||
} | null;
|
||
costs: {
|
||
parts: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
designation: string;
|
||
quantity: number;
|
||
unitPrice: number;
|
||
total: number;
|
||
}[];
|
||
labor: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
displayName: string;
|
||
minutes: number;
|
||
hourlyRate: number;
|
||
total: number;
|
||
note: string | null;
|
||
}[];
|
||
total: number;
|
||
};
|
||
allowedTransitions: ("OPEN" | "IN_PROGRESS" | "ON_HOLD" | "DONE" | "CANCELLED")[];
|
||
closureBlockers: string[];
|
||
/** Format: date-time */
|
||
updatedAt: string;
|
||
};
|
||
ConsumePart: {
|
||
/** Format: uuid */
|
||
partId: string;
|
||
quantity: number;
|
||
};
|
||
LaborTimeCreate: {
|
||
minutes: number;
|
||
/** Format: uuid */
|
||
userId?: string;
|
||
note?: string;
|
||
};
|
||
PortalAsset: {
|
||
reference: string;
|
||
siteName: string;
|
||
locationName: string;
|
||
};
|
||
PortalRequestCreated: {
|
||
reference: string;
|
||
description: string;
|
||
isPersonTrapped: boolean;
|
||
/** @enum {string} */
|
||
status: "RECEIVED" | "APPROVED" | "REJECTED";
|
||
/** @enum {string} */
|
||
step: "RECEIVED" | "IN_PROGRESS" | "RESOLVED";
|
||
rejectionReason: string | null;
|
||
/** Format: date-time */
|
||
createdAt: string;
|
||
publicToken: string;
|
||
};
|
||
PortalRequestCreate: {
|
||
assetReference: string;
|
||
description: string;
|
||
isPersonTrapped?: boolean;
|
||
requesterName?: string;
|
||
};
|
||
PortalRequestStatus: {
|
||
reference: string;
|
||
description: string;
|
||
isPersonTrapped: boolean;
|
||
/** @enum {string} */
|
||
status: "RECEIVED" | "APPROVED" | "REJECTED";
|
||
/** @enum {string} */
|
||
step: "RECEIVED" | "IN_PROGRESS" | "RESOLVED";
|
||
rejectionReason: string | null;
|
||
/** Format: date-time */
|
||
createdAt: string;
|
||
};
|
||
TaskTemplatesResponse: {
|
||
templates: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
label: string;
|
||
periodMonths: number;
|
||
isRegulatory: boolean;
|
||
isActive: boolean;
|
||
componentTypeId: string | null;
|
||
componentTypeName: string | null;
|
||
}[];
|
||
};
|
||
TaskTemplate: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
label: string;
|
||
periodMonths: number;
|
||
isRegulatory: boolean;
|
||
isActive: boolean;
|
||
componentTypeId: string | null;
|
||
componentTypeName: string | null;
|
||
};
|
||
TaskTemplateCreate: {
|
||
label: string;
|
||
periodMonths: number;
|
||
/** Format: uuid */
|
||
componentTypeId?: string;
|
||
isRegulatory?: boolean;
|
||
};
|
||
TaskTemplateUpdate: {
|
||
label?: string;
|
||
periodMonths?: number;
|
||
componentTypeId?: string | null;
|
||
isRegulatory?: boolean;
|
||
isActive?: boolean;
|
||
};
|
||
PreventiveGenerationResult: {
|
||
month: string;
|
||
created: number;
|
||
skipped: number;
|
||
firstControls: number;
|
||
references: string[];
|
||
};
|
||
PreventiveGenerate: {
|
||
month?: string;
|
||
};
|
||
PreventiveStatus: {
|
||
month: string;
|
||
assetsUnderContract: number;
|
||
generated: number;
|
||
done: number;
|
||
late: number;
|
||
firstControls: number;
|
||
};
|
||
MetersResponse: {
|
||
meters: {
|
||
/** @enum {string} */
|
||
kind: "RUNNING_HOURS" | "STARTS";
|
||
readings: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
value: number;
|
||
readBy: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
displayName: string;
|
||
} | null;
|
||
/** Format: date-time */
|
||
createdAt: string;
|
||
}[];
|
||
}[];
|
||
};
|
||
MeterReadingCreate: {
|
||
/** @enum {string} */
|
||
kind: "RUNNING_HOURS" | "STARTS";
|
||
value: number;
|
||
};
|
||
WorkOrdersResponse: {
|
||
workOrders: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
title: string;
|
||
/** @enum {string} */
|
||
type: "CORRECTIVE" | "PREVENTIVE" | "WORKS";
|
||
/** @enum {string} */
|
||
status: "OPEN" | "IN_PROGRESS" | "ON_HOLD" | "DONE" | "CANCELLED";
|
||
/** @enum {string} */
|
||
priority: "NONE" | "LOW" | "MEDIUM" | "HIGH" | "PERSON_TRAPPED";
|
||
/** Format: uuid */
|
||
assetId: string;
|
||
assetReference: string;
|
||
siteName: string;
|
||
dueDate: string | null;
|
||
assignees: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
displayName: string;
|
||
initials: string;
|
||
}[];
|
||
/** Format: date-time */
|
||
createdAt: string;
|
||
}[];
|
||
};
|
||
WorkOrderCreate: {
|
||
title: string;
|
||
description?: string;
|
||
/** @enum {string} */
|
||
type: "CORRECTIVE" | "PREVENTIVE" | "WORKS";
|
||
/** @enum {string} */
|
||
priority?: "NONE" | "LOW" | "MEDIUM" | "HIGH" | "PERSON_TRAPPED";
|
||
/** Format: uuid */
|
||
assetId: string;
|
||
/** Format: date-time */
|
||
dueDate?: string;
|
||
assigneeIds?: string[];
|
||
};
|
||
TransitionRequest: {
|
||
/** @enum {string} */
|
||
to: "OPEN" | "IN_PROGRESS" | "ON_HOLD" | "DONE" | "CANCELLED";
|
||
comment?: string;
|
||
/** Format: date-time */
|
||
baseUpdatedAt?: string;
|
||
};
|
||
CommentCreate: {
|
||
message: string;
|
||
};
|
||
AssigneesUpdate: {
|
||
assigneeIds: string[];
|
||
};
|
||
ReportUpsert: {
|
||
note?: string | null;
|
||
doorStateId?: string | null;
|
||
cabinPositionId?: string | null;
|
||
anomalyId?: string | null;
|
||
externalCauseId?: string | null;
|
||
actionTakenId?: string | null;
|
||
componentConcernedId?: string | null;
|
||
/** Format: date-time */
|
||
baseUpdatedAt?: string;
|
||
};
|
||
ChecklistItem: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
label: string;
|
||
/** @enum {string} */
|
||
state: "PENDING" | "DONE" | "NA";
|
||
doneBy: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
displayName: string;
|
||
initials: string;
|
||
} | null;
|
||
doneAt: string | null;
|
||
};
|
||
ChecklistPatch: {
|
||
/** @enum {string} */
|
||
state: "PENDING" | "DONE" | "NA";
|
||
/** Format: date-time */
|
||
baseUpdatedAt?: string;
|
||
};
|
||
RequestsResponse: {
|
||
requests: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
description: string;
|
||
isPersonTrapped: boolean;
|
||
/** @enum {string} */
|
||
status: "RECEIVED" | "APPROVED" | "REJECTED";
|
||
rejectionReason: string | null;
|
||
/** Format: uuid */
|
||
assetId: string;
|
||
assetReference: string;
|
||
siteName: string;
|
||
requesterLabel: string;
|
||
workOrder: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
/** @enum {string} */
|
||
status: "OPEN" | "IN_PROGRESS" | "ON_HOLD" | "DONE" | "CANCELLED";
|
||
} | null;
|
||
/** Format: date-time */
|
||
createdAt: string;
|
||
}[];
|
||
};
|
||
RequestSummary: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
description: string;
|
||
isPersonTrapped: boolean;
|
||
/** @enum {string} */
|
||
status: "RECEIVED" | "APPROVED" | "REJECTED";
|
||
rejectionReason: string | null;
|
||
/** Format: uuid */
|
||
assetId: string;
|
||
assetReference: string;
|
||
siteName: string;
|
||
requesterLabel: string;
|
||
workOrder: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
reference: string;
|
||
/** @enum {string} */
|
||
status: "OPEN" | "IN_PROGRESS" | "ON_HOLD" | "DONE" | "CANCELLED";
|
||
} | null;
|
||
/** Format: date-time */
|
||
createdAt: string;
|
||
};
|
||
RequestCreate: {
|
||
/** Format: uuid */
|
||
assetId: string;
|
||
description: string;
|
||
isPersonTrapped?: boolean;
|
||
};
|
||
RequestApprove: {
|
||
title?: string;
|
||
/** @enum {string} */
|
||
priority?: "NONE" | "LOW" | "MEDIUM" | "HIGH" | "PERSON_TRAPPED";
|
||
assigneeIds?: string[];
|
||
/** Format: date-time */
|
||
dueDate?: string;
|
||
};
|
||
RequestReject: {
|
||
reason: string;
|
||
};
|
||
ReferenceValuesResponse: {
|
||
referenceValues: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
field: "DOOR_STATE" | "CABIN_POSITION" | "ANOMALY" | "EXTERNAL_CAUSE" | "ACTION_TAKEN" | "COMPONENT_CONCERNED";
|
||
label: string;
|
||
isActive: boolean;
|
||
usageCount: number;
|
||
}[];
|
||
};
|
||
ReferenceValue: {
|
||
/** Format: uuid */
|
||
id: string;
|
||
/** @enum {string} */
|
||
field: "DOOR_STATE" | "CABIN_POSITION" | "ANOMALY" | "EXTERNAL_CAUSE" | "ACTION_TAKEN" | "COMPONENT_CONCERNED";
|
||
label: string;
|
||
isActive: boolean;
|
||
usageCount: number;
|
||
};
|
||
ReferenceValueCreate: {
|
||
/** @enum {string} */
|
||
field: "DOOR_STATE" | "CABIN_POSITION" | "ANOMALY" | "EXTERNAL_CAUSE" | "ACTION_TAKEN" | "COMPONENT_CONCERNED";
|
||
label: string;
|
||
};
|
||
ReferenceValueUpdate: {
|
||
label?: string;
|
||
isActive?: boolean;
|
||
};
|
||
HealthResponse: {
|
||
/** @enum {string} */
|
||
status: "ok" | "degraded";
|
||
services: {
|
||
/** @enum {string} */
|
||
database: "up" | "down";
|
||
/** @enum {string} */
|
||
redis: "up" | "down";
|
||
/** @enum {string} */
|
||
storage: "up" | "down";
|
||
};
|
||
};
|
||
};
|
||
responses: never;
|
||
parameters: never;
|
||
requestBodies: never;
|
||
headers: never;
|
||
pathItems: never;
|
||
}
|
||
export type $defs = Record<string, never>;
|
||
export interface operations {
|
||
login: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["LoginRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Jeton émis */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AuthResponse"];
|
||
};
|
||
};
|
||
/** @description Identifiants invalides ou compte inactif */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listDemoAccounts: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Comptes isDemo actifs */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DemoAccountsResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
demoLogin: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["DemoLoginRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Jeton émis */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AuthResponse"];
|
||
};
|
||
};
|
||
/** @description Le compte n’est pas un compte de démonstration */
|
||
403: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description Compte inconnu */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
getMe: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Profil */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["MeResponse"];
|
||
};
|
||
};
|
||
/** @description Non authentifié */
|
||
401: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
activateAccount: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["ActivateRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Compte activé et connecté */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AuthResponse"];
|
||
};
|
||
};
|
||
/** @description Lien invalide ou expiré */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listCategories: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Liste */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["CategoriesResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
createCategory: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CategoryCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Créée */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["Category"];
|
||
};
|
||
};
|
||
/** @description Nom déjà utilisé pour ce type */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
updateCategory: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CategoryUpdate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Mise à jour */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["Category"];
|
||
};
|
||
};
|
||
/** @description Inconnue */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listLocations: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Liste */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["LocationsResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
createLocation: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["LocationCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Créé */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["Location"];
|
||
};
|
||
};
|
||
/** @description Hiérarchie trop profonde */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
updateLocation: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["LocationUpdate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Mis à jour */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["Location"];
|
||
};
|
||
};
|
||
/** @description Inconnu */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listAssets: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Liste */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AssetsResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
createAsset: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["AssetCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Créé */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AssetDetail"];
|
||
};
|
||
};
|
||
/** @description Référence déjà utilisée */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listAssetOptions: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Options */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AssetOptionsResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
getAsset: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Fiche */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AssetDetail"];
|
||
};
|
||
};
|
||
/** @description Inconnu */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
updateAsset: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["AssetUpdate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Mis à jour */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AssetDetail"];
|
||
};
|
||
};
|
||
/** @description Inconnu */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
addAssetComponent: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["AssetComponentCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Ajouté */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AssetComponent"];
|
||
};
|
||
};
|
||
/** @description Le type choisi n’est pas un type d’organe */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
removeAssetComponent: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
componentId: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Retiré */
|
||
204: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description Inconnu */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listTeams: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Liste */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["TeamsResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
createTeam: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["TeamCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Créée */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["Team"];
|
||
};
|
||
};
|
||
/** @description Nom déjà utilisé */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
updateTeam: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["TeamUpdate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Mise à jour */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["Team"];
|
||
};
|
||
};
|
||
/** @description Inconnue */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listUsers: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Liste */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["UsersResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
listRoles: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Liste */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["RolesResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
inviteUser: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["InvitationCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Invitation émise */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["InvitationResponse"];
|
||
};
|
||
};
|
||
/** @description Email déjà utilisé */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
resendInvitation: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Nouveau lien */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["InvitationResponse"];
|
||
};
|
||
};
|
||
/** @description Compte déjà activé */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
updateUser: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["UserUpdate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Mise à jour */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["UserAdmin"];
|
||
};
|
||
};
|
||
/** @description Inconnue */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listDocuments: {
|
||
parameters: {
|
||
query?: {
|
||
assetId?: string;
|
||
workOrderId?: string;
|
||
kind?: string;
|
||
};
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Liste */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["DocumentsResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
uploadDocument: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"multipart/form-data": {
|
||
/** Format: binary */
|
||
file: string;
|
||
kind?: string;
|
||
assetId?: string;
|
||
workOrderId?: string;
|
||
};
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Document rangé */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["Document"];
|
||
};
|
||
};
|
||
/** @description Type/taille refusé ou rattachement manquant */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
downloadDocument: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Fichier */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description Inconnu */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
updateDocumentCorpus: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["DocumentCorpusUpdate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Document mis à jour */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["Document"];
|
||
};
|
||
};
|
||
/** @description Inconnu */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
deleteDocument: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Supprimé */
|
||
204: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description Inconnu */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
getAnalyticsSummary: {
|
||
parameters: {
|
||
query?: {
|
||
months?: string;
|
||
};
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Synthèse */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AnalyticsSummary"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
askAssistant: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["AssistantAsk"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Réponse sourcée ou refus */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["AssistantAnswer"];
|
||
};
|
||
};
|
||
/** @description Service IA indisponible */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
suggestBilan: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["SuggestBilan"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Suggestions (codes existants seulement) */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["BilanSuggestions"];
|
||
};
|
||
};
|
||
/** @description Service IA indisponible */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
reindexAssistant: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Bilan d’indexation */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ReindexResult"];
|
||
};
|
||
};
|
||
/** @description Service IA indisponible */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
transcribeAudio: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"multipart/form-data": {
|
||
/** Format: binary */
|
||
file: string;
|
||
};
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Texte transcrit — à relire (D1) */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["TranscriptionResult"];
|
||
};
|
||
};
|
||
/** @description Dictée non activée ou service IA indisponible */
|
||
503: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
globalSearch: {
|
||
parameters: {
|
||
query: {
|
||
q: string;
|
||
};
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Résultats (5 max par famille) */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["SearchResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
listPartners: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Liste */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PartnersResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
createPartner: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["PartnerCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Créé */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["Partner"];
|
||
};
|
||
};
|
||
/** @description Nom déjà utilisé */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
updatePartner: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["PartnerUpdate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Mis à jour */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["Partner"];
|
||
};
|
||
};
|
||
/** @description Inconnu */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listParts: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Liste */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PartsResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
createPart: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["PartCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Créée */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PartDetail"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
getPart: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Fiche */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PartDetail"];
|
||
};
|
||
};
|
||
/** @description Inconnue */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
updatePart: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["PartUpdate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Mise à jour */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PartDetail"];
|
||
};
|
||
};
|
||
/** @description Inconnue */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
addStockMovement: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["StockMovementCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Mouvement tracé */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PartDetail"];
|
||
};
|
||
};
|
||
/** @description Le stock ne peut pas devenir négatif */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listPurchaseOrders: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Liste */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PurchaseOrdersResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
createPurchaseOrder: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["PurchaseOrderCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Créé */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PurchaseOrder"];
|
||
};
|
||
};
|
||
/** @description Fournisseur ou pièce invalide */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
getPurchaseOrder: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Fiche */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PurchaseOrder"];
|
||
};
|
||
};
|
||
/** @description Inconnu */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
transitionPurchaseOrder: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["PurchaseOrderTransition"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description État changé */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PurchaseOrder"];
|
||
};
|
||
};
|
||
/** @description Transition interdite */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
consumePart: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["ConsumePart"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Consommée */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["WorkOrderDetail"];
|
||
};
|
||
};
|
||
/** @description Stock insuffisant ou prix inconnu */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
addLaborTime: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["LaborTimeCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Saisie */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["WorkOrderDetail"];
|
||
};
|
||
};
|
||
/** @description Taux horaire non défini pour cette personne */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
getPortalAsset: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
reference: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Appareil */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PortalAsset"];
|
||
};
|
||
};
|
||
/** @description Référence inconnue */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
createPortalRequest: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["PortalRequestCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Signalement enregistré */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PortalRequestCreated"];
|
||
};
|
||
};
|
||
/** @description Référence inconnue */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
/** @description Trop de signalements — réessayez dans une minute */
|
||
429: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
getPortalRequestStatus: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
reference: string;
|
||
token: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Avancement */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PortalRequestStatus"];
|
||
};
|
||
};
|
||
/** @description Signalement inconnu ou jeton invalide */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listTaskTemplates: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Liste */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["TaskTemplatesResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
createTaskTemplate: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["TaskTemplateCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Créé */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["TaskTemplate"];
|
||
};
|
||
};
|
||
/** @description Libellé déjà utilisé */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
updateTaskTemplate: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["TaskTemplateUpdate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Mis à jour */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["TaskTemplate"];
|
||
};
|
||
};
|
||
/** @description Inconnu */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
generatePreventive: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["PreventiveGenerate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Résumé de génération */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PreventiveGenerationResult"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
getPreventiveStatus: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description État */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["PreventiveStatus"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
getAssetMeters: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Compteurs */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["MetersResponse"];
|
||
};
|
||
};
|
||
/** @description Appareil inconnu */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
addMeterReading: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["MeterReadingCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Relevé enregistré */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["MetersResponse"];
|
||
};
|
||
};
|
||
/** @description Relevé inférieur ou égal au précédent */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listWorkOrders: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Liste */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["WorkOrdersResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
createWorkOrder: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["WorkOrderCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Créé */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["WorkOrderDetail"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
getWorkOrder: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Fiche */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["WorkOrderDetail"];
|
||
};
|
||
};
|
||
/** @description Inconnu (ou hors de son périmètre) */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
transitionWorkOrder: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["TransitionRequest"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description État changé */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["WorkOrderDetail"];
|
||
};
|
||
};
|
||
/** @description Transition interdite ou clôture bloquée (garde) */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
commentWorkOrder: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["CommentCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Commentaire ajouté */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["WorkOrderDetail"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
setWorkOrderAssignees: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["AssigneesUpdate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Assignés */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["WorkOrderDetail"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
upsertWorkOrderReport: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["ReportUpsert"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Bilan enregistré */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["WorkOrderDetail"];
|
||
};
|
||
};
|
||
/** @description Valeur hors référentiel du champ */
|
||
400: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
patchChecklistItem: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
itemId: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["ChecklistPatch"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Tâche réglée */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ChecklistItem"];
|
||
};
|
||
};
|
||
/** @description Tâche inconnue */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listRequests: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Liste */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["RequestsResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
createRequest: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["RequestCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Demande créée */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["RequestSummary"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
approveRequest: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["RequestApprove"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description OT créé et lié */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["WorkOrderDetail"];
|
||
};
|
||
};
|
||
/** @description Demande déjà traitée */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
rejectRequest: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["RequestReject"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Rejetée */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["RequestSummary"];
|
||
};
|
||
};
|
||
/** @description Demande déjà traitée */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
listReferenceValues: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description Liste */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ReferenceValuesResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
createReferenceValue: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["ReferenceValueCreate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Créée */
|
||
201: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ReferenceValue"];
|
||
};
|
||
};
|
||
/** @description Libellé déjà présent pour ce champ */
|
||
409: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
updateReferenceValue: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path: {
|
||
id: string;
|
||
};
|
||
cookie?: never;
|
||
};
|
||
requestBody: {
|
||
content: {
|
||
"application/json": components["schemas"]["ReferenceValueUpdate"];
|
||
};
|
||
};
|
||
responses: {
|
||
/** @description Mise à jour */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["ReferenceValue"];
|
||
};
|
||
};
|
||
/** @description Inconnue */
|
||
404: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content?: never;
|
||
};
|
||
};
|
||
};
|
||
getHealth: {
|
||
parameters: {
|
||
query?: never;
|
||
header?: never;
|
||
path?: never;
|
||
cookie?: never;
|
||
};
|
||
requestBody?: never;
|
||
responses: {
|
||
/** @description État agrégé */
|
||
200: {
|
||
headers: {
|
||
[name: string]: unknown;
|
||
};
|
||
content: {
|
||
"application/json": components["schemas"]["HealthResponse"];
|
||
};
|
||
};
|
||
};
|
||
};
|
||
}
|