Développeurs
Référence technique : concepts, tutoriels d'intégration, guides de référence et API de chaque module.
Prise en main de l'API
Prise en main de l'API L'API Puwapi est REST sur HTTPS, en JSON. Chaque module expose sa propre API, mais toutes suivent les mêmes conventions : même authentification, mêmes codes d'erreur, même isola…
Authentification (JWT Identity Hub)
Authentification (JWT Identity Hub) Toutes les API applicatives de Puwapi acceptent le même JWT, émis par l'Identity Hub et signé par un secret partagé (HMAC). Le jeton identifie l'utilisateur et son…
Clés API serveur
Clés API serveur Pour les intégrations machine-à-machine (scripts, serveurs, MCP), Puwapi propose des clés API liées à une organisation et à un module — sans utilisateur ni JWT. Quatre modules exposen…
Gating par module
Gating par module L'accès à un module dépend de l'abonnement de l'organisation. Ce contrôle s'appelle le gating, et il est appliqué côté serveur. Comment ça marche Chaque route protégée porte l'attrib…
Ponts internes M2M
Ponts internes M2M Quand un module doit en déclencher un autre — un formulaire qui crée une tâche dans Work, une candidature retenue qui provisionne un employé dans RH — l'appel passe par une route in…
Temps réel (Convex)
Temps réel (Convex) Puwapi pousse les mises à jour aux interfaces en temps réel via Convex. C'est une couche d'accélération : l'API REST reste la source de vérité ; le temps réel évite de recharger la…
Conventions REST, erreurs et multi-tenant
Conventions REST, erreurs et multi-tenant Les API de tous les modules partagent les mêmes conventions. Format JSON en entrée et en sortie ; Content-Type: application/json. Les identifiants de ressourc…
Environnements, domaines et ports
Environnements, domaines et ports Chaque module a sa propre base URL. En production, l'API du Hub est sur api.puwapi.com et la plupart des modules sur <module>.api.puwapi.com ou un domaine direct. En…
Un formulaire public qui crée des tickets
Un formulaire public qui crée des tickets Objectif : un formulaire de contact que n'importe qui remplit sur votre site, et qui crée automatiquement un ticket (ou une tâche) dans Projets/Support. Prére…
Publier de la documentation par l'API
Publier de la documentation par l'API Objectif : créer un espace, une collection et des articles Markdown dans Knowledge, par programme. C'est exactement ainsi que cette documentation a été publiée. P…
Envoyer un e-mail transactionnel
Envoyer un e-mail transactionnel Objectif : envoyer un e-mail depuis votre domaine (confirmation, notification, reçu) via le module Send, depuis un serveur — sans utilisateur connecté. Prérequis : mod…
Synchroniser Work avec GitHub
Synchroniser Work avec GitHub Objectif : relier une tâche à une issue GitHub et refléter automatiquement son statut (issue fermée → tâche « terminée »). Prérequis : module Projets ; un dépôt GitHub ;…
Lancer une inférence IA
Lancer une inférence IA Objectif : appeler une feature IA (ex. rédiger la description d'un ticket) et récupérer le résultat. Le pipeline est asynchrone : on lance, puis on récupère. Prérequis : module…
Piloter Knowledge avec le serveur MCP
Piloter Knowledge avec le serveur MCP Objectif : lire et écrire dans Knowledge depuis un client MCP (Model Context Protocol) — par exemple un assistant IA — sans écrire d'appels HTTP. Prérequis : une…
Importer des données avec le serveur MCP Puwapi (Work & CRM)
Importer des données avec le serveur MCP Puwapi (Work & CRM) En plus du serveur MCP dédié à Knowledge (voir Piloter Knowledge avec le serveur MCP), Puwapi fournit un serveur MCP transversal (@puwapi/m…
S'abonner au temps réel
S'abonner au temps réel Objectif : rafraîchir une interface automatiquement quand un module écrit une donnée (nouvel item Work, soumission de formulaire, inférence IA terminée…), via Convex. Prérequis…
Webhooks (GitHub, Stripe, entrants)
Webhooks (GitHub, Stripe, entrants) Puwapi reçoit des webhooks (entrants) et émet des notifications internes vers Convex. Voici les webhooks entrants exposés et comment ils se sécurisent. Principe com…
Limites de débit, quotas et pagination
Limites de débit, quotas et pagination Quotas fonctionnels Certains modules imposent des quotas métier, distincts d'un simple débit HTTP : Module Quota Où le lire Cloud Stockage (5 / 50 / 200 Go…
Bonnes pratiques de sécurité
Bonnes pratiques de sécurité Comment intégrer Puwapi sans exposer vos données ni vos secrets. Jetons et clés JWT : de courte durée, à garder en mémoire côté client, jamais dans un cookie persistant ni…
Recettes cURL & multi-langages
Recettes cURL & multi-langages Extraits prêts à l'emploi pour les opérations les plus courantes. Adaptez la base URL au module (voir Environnements, domaines et ports). Se connecter et appeler (cURL)…
Versionnement & journal des changements
Versionnement & journal des changements Philosophie de compatibilité Puwapi vise la stabilité des surfaces publiques. En pratique : Les records DTO sont positionnels côté serveur : l'ajout d'un champ…
Référence API — Work
Référence API — Work (Projets & Support) Work est le moteur commun de deux modules du Hub : Projets (tâches) et Support (tickets). Un même type d'objet, le WorkItem, porte type = task ticket. Base U…
Référence API — Forms
Référence API — Forms Forms gère des formulaires modulaires. Un formulaire publie une surface publique (anonyme, identifiée par un slug) et, à la soumission, peut **créer automatiquement une tâche/tic…
Référence API — IA
Référence API — IA Puwapi IA est la couche d'intelligence transversale. C'est le seul service autorisé à appeler l'API du modèle sous-jacent : aucun autre module n'appelle un fournisseur d'IA directem…
Référence API — Knowledge
Référence API — Knowledge Knowledge est le module de contenu : wiki interne, base de connaissance publique et blog. Il expose une gestion membre (JWT), une surface publique anonyme (lecture par slug),…
Référence API — Careers
Référence API — Careers Careers est un ATS (suivi des candidatures) : offres d'emploi, portail candidat public, pipeline de recrutement. Base URL — prod : https://careers.api.puwapi.com · dev : http:/…
Référence API — Fidélité
Référence API — Fidélité Fidélité gère les programmes de fidélité : comptes de points, récompenses, règles de gain, paliers (tiers), segments clients, et une surface membre (/me) pour l'appli client f…
Référence API — Send, Domaines & Mail
Référence API — Send, Domaines & Mail Send est la brique de messagerie multi-canal de la plateforme : e-mail (transactionnel et applicatif), mais aussi push mobile, SMS et WhatsApp — voir Notification…
Notifications multi-canal (push, SMS, WhatsApp)
Notifications multi-canal (push, SMS, WhatsApp) Send ne se limite plus à l'e-mail : c'est la brique de messagerie multi-canal de la plateforme. Un seul service centralise 4 canaux, avec la même traçab…
Référence API — RH
Référence API — RH RH gère le temps de travail et les congés : pointage immuable, **conformité configurable, **congés en grand livre, et fournit les disponibilités lues par le module Rendez-vous. Base…
Référence API — Cloud
Référence API — Cloud Cloud est le stockage de fichiers de la plateforme : fichiers et dossiers, corbeille, favoris, partage, et un stockage objet (S3) sous-jacent. Il est **inclus dès le premier pali…
Référence API — Docs
Référence API — Docs Docs est le traitement de texte collaboratif (type Google Docs) : arborescence de documents, édition collaborative temps réel (Yjs), commentaires, partage par lien, IA. Base URL —…
Référence API — Slides
Référence API — Slides Slides est l'outil de présentations collaboratives (type Google Slides) : arborescence de présentations, éditeur canvas libre, thèmes, mode présentateur, collaboration temps rée…
Référence API — Chat
Référence API — Chat Chat est la messagerie d'équipe : organisations, canaux, messages, fichiers, recherche, annuaire et intégrations entrantes (webhooks). Base URL — prod : https://chat.api.puwapi.co…
Référence API — Connect
Référence API — Connect Connect est la couche de recherche transverse et d'export inter-modules : une seule barre de recherche qui interroge tous les modules, et un registre qui agrège leurs données i…
Référence API — Billing
Référence API — Billing Billing gère les abonnements, les paliers, les add-ons, les promotions et — surtout — les droits (entitlements) qui pilotent le gating de tous les modules. Il s'intègre à Strip…
Référence API — Hub (RDV, CRM, Facturation, Agenda)
Référence API — Hub (RDV, CRM, Facturation, Agenda) Le Hub porte les briques cœur de la plateforme : rendez-vous, contacts & pipeline (CRM), facturation, agenda, tableaux de bord, ainsi que la barre l…
CRM — contacts, timeline, pipeline & scoring
CRM — contacts, timeline, pipeline & scoring Le CRM du Hub a été refondu autour d'un party model : la fiche « client » devient un contact — personne ou organisation — porteur de rôles multiples (clien…
Référence API — Identity Hub
Référence API — Identity Hub L'Identity Hub est le service d'identité partagé : comptes, connexions, organisations, rôles/permissions (RBAC) et administration. C'est lui qui émet le JWT accepté par to…
Formation VR — l'application Unity (training-vr-app)
Formation VR — l'application Unity (training-vr-app) L'application de Formation VR est un projet Unity 6 (URP + XR Interaction Toolkit + XR Hands, multijoueur Netcode for GameObjects). Elle embarque l…
Formation VR — salons, sessions & assistant IA
Formation VR — salons, sessions & assistant IA Le serveur compagnon /vr (Node/TS, PostgreSQL puwapi_vr) orchestre trois choses : la gestion des salons pilotée par le hub, le reporting des sessions, et…
Référence — Formation VR
Référence — Formation VR Formation VR est le module de simulations de formation en réalité virtuelle. Il combine une application Unity (casque, avec version bureau) et un serveur compagnon (/vr) qui g…