Aller au contenu

01IA et intégrations · module

API REST automatique et webhooks

Une API REST pilotée par les métadonnées pour chaque entité, avec documentation OpenAPI et webhooks complets

  • Webhook
  • Clé API
  • Jeton d'accès personnel
  • Journal d'accès
10
fonctionnalités
4
types d’enregistrements
3
automatisations
4
intégrations et outils IA

02Ce que fait le module

Moins de routine. Plus de valeur.

Draivix génère automatiquement une API REST pour chaque entité à partir des métadonnées, sans qu’il soit nécessaire de coder des points de terminaison individuels. Dès que vous ajoutez un champ, une relation ou une entité, l’API et sa documentation OpenAPI sont immédiatement disponibles — toujours limitées aux autorisations de l’appelant. Votre entreprise peut ainsi connecter sa boutique en ligne, ses outils de reporting ou ses applications sur mesure aux mêmes données et aux mêmes règles que celles qui régissent l’application.

  • API générée automatiquementL’API REST — l’interface permettant de connecter des systèmes externes — est créée sans code pour chaque entité, y compris pour les entités et les champs ajoutés par un administrateur. Tout nouveau champ est immédiatement disponible.
  • Opérations contrôlées sur les enregistrementsL’API prend en charge le listage, l’affichage détaillé, la création, la mise à jour et la suppression logique, où l’enregistrement est simplement marqué comme supprimé. Les autorisations sont appliquées aussi bien au niveau de l’enregistrement que du champ.
  • Aucun écrasement lors des modifications simultanéesLe verrouillage optimiste basé sur la version de l’enregistrement empêche une mise à jour d’en écraser une autre. Lorsque deux systèmes modifient le même enregistrement en même temps, ils n’écrasent jamais mutuellement leurs données.
  • Modifications en masse en une seule transactionCréez jusqu’à 100 enregistrements, mettez-en à jour jusqu’à 500 et supprimez-en jusqu’à 100 en masse. Les modifications combinées s’exécutent au sein d’une transaction unique : aucune mise à jour partielle n’est jamais enregistrée.
  • Un filtrage qui ne divulgue rienFiltrez vos requêtes à l’aide de cinq notations, avec recherche plein texte et plages de dates prédéfinies. L’API rejette les champs inconnus, les champs sans accès en lecture ou les opérateurs non autorisés, de sorte que les filtres n’exposent jamais de données non autorisées.
  • Documentation filtrée selon les autorisationsLa spécification OpenAPI 3.1.2 est générée en fonction des autorisations de l'appelant. Les développeurs ne voient que les entités et les opérations qu'ils sont autorisés à utiliser.
  • Une authentification pensée aussi pour les agentsObtenez un jeton en vous connectant avec l'authentification à deux facteurs ou en signant avec une clé SSH. Cette seconde option est idéale pour les agents en ligne de commande.
  • Limites de débit et journalisation complète des appelsLa limite de débit est de 240 requêtes par minute par entreprise et par utilisateur, et le journal d'accès enregistre chaque appel. Vous gardez une visibilité totale sur l'ensemble du trafic API.
  • Envoyez vos données là où vous en avez besoinUn workflow envoie un webhook — un message automatisé vers un système externe — à l'aide d'un modèle de corps personnalisé. Les URL cibles passent par une protection SSRF afin d'empêcher toute utilisation abusive du serveur pour des requêtes vers des adresses non autorisées.
  • Données entrantes vérifiéesUn webhook entrant reçoit des données sur un point de terminaison dédié, protégé par un secret partagé dans l'en-tête. Chaque appel est consigné avec son résultat, pour que vous sachiez toujours ce qui a été reçu.

03Comment ça marche

Comment ça marche étape par étape.

  1. Fonctionnement de l’API automatique

    L’API ne comporte aucun code spécifique à une entité. Un jeu unique de routes génériques dessert toutes les entités connues du système. Lorsqu’un administrateur ajoute une entité, un champ ou une relation — ou lors du déploiement d’un nouveau module — l’API, la validation et la documentation existent immédiatement, circonscrites à cette entreprise et aux autorisations de l’appelant.

    Lire en détail

    Trois vérifications déterminent si une entité est accessible : l’indicateur API sur l’entité, le module activé pour l’entreprise et les autorisations de l’appelant, y compris la politique de la clé API. Une entité masquée renvoie « introuvable » sans même révéler son existence. Le coffre-fort de mots de passe et les préférences utilisateur ne sont pas accessibles via l’API. Une session de navigateur connectée et un jeton passé en en-tête fonctionnent selon les mêmes règles et la même journalisation d’audit que l’application.

  2. Ce que permet l’API

    Chaque entité prend en charge le listage, la récupération du détail, la création, la mise à jour complète ou partielle et la suppression logique (soft delete). Les mises à jour partielles gèrent le verrouillage optimiste par version d’enregistrement, empêchant deux modifications simultanées de s’écraser mutuellement. Vous pouvez également interroger la description de l’entité (champs, relations, actions), récupérer une liste d’identifiants pour un jeu filtré (jusqu’à 500) et exporter des enregistrements (jusqu’à 1 000).

    Lire en détail

    En masse, vous pouvez créer jusqu’à 100 enregistrements, en mettre à jour jusqu’à 500 et en supprimer jusqu’à 100 ; un lot combinant créations, mises à jour et suppressions s’exécute au sein d’une seule transaction. Les agrégations renvoient des sommes, des moyennes et d’autres indicateurs ou comptages regroupés par champ. L’API gère aussi les relations (attacher, détacher, synchroniser), les panneaux d’enregistrements liés, l’historique des modifications, les journaux d’audit, les pièces jointes, les actions unitaires ou sur sélection, les conversions d’enregistrements avec aperçu, les listes de valeurs et la recherche globale.

    Les statuts gérés ne peuvent être modifiés que par le biais d’actions.

  3. Requêtes et filtres

    Les filtres peuvent s’écrire de plusieurs façons : notation par crochets, groupes OR, arborescence imbriquée, expressions abrégées telles que amount>=10000, JSON ou filtre enregistré. La recherche plein texte, le tri, la pagination (20 par défaut, jusqu’à 200 enregistrements par page), la sélection de champs et le chargement anticipé (eager loading) des enregistrements liés sont tous pris en charge.

    Lire en détail

    Les opérateurs couvrent les comparaisons, « contient », « commence par », les plages, les valeurs vides, la sélection à valeurs multiples, les plages de dates prédéfinies comme ce mois-ci ou les 30 derniers jours, ainsi que les liens vers l’utilisateur courant ou son équipe. L’API rejette les champs inconnus, les champs sans droit de lecture ou les opérateurs non autorisés, de sorte que les filtres ne peuvent pas servir à sonder des données que l’appelant n’a pas le droit de voir.

  4. Documentation, authentification et limites de débit

    La spécification OpenAPI 3.1.2 est générée à l’exécution à partir des métadonnées et selon le point de vue de l’appelant : les entités et opérations qu’il n’est pas autorisé à utiliser sont omises. Les administrateurs peuvent la parcourir dans le panneau d’administration grâce à la visionneuse Scalar. La validation et la documentation partagent les mêmes définitions : elles ne divergent donc jamais sur les routes couvertes.

    Lire en détail

    Vous obtenez un jeton en vous connectant (y compris avec un code de second facteur s’il est activé) ou en signant avec une clé SSH pour les agents en ligne de commande. Les utilisateurs gèrent leurs clés API et leurs jetons MCP dans leur profil. La limite de débit est de 240 requêtes par minute par entreprise et par utilisateur ; après 10 tentatives de jeton échouées par minute, l’adresse IP est restreinte. Chaque appel authentifié par jeton est consigné dans le journal d’accès.

  5. Webhooks

    Un webhook sortant est une action au sein d’un flux d’automatisation. Il se déclenche lorsqu’un enregistrement est modifié ou supprimé, selon une planification, manuellement ou lors d’un événement métier. Il envoie une requête POST, PUT ou PATCH avec des en-têtes personnalisés et un modèle de corps (body template). L’URL cible est vérifiée par une protection anti-SSRF, les redirections sont désactivées et le délai d’expiration est de 30 secondes. Les requêtes ne sont pas signées ; les appels échoués sont journalisés et relancés uniquement pour les flux atomiques ou les actions configurées pour s’arrêter en cas d’erreur.

    Lire en détail

    Un webhook entrant reçoit des données sur un point de terminaison dédié, protégé par un secret partagé dans l’en-tête. Il est traité par un gestionnaire enregistré par le module, par exemple pour capturer des prospects CRM, des enregistrements d’appels ou des événements push Mattermost. Chaque appel est journalisé avec son résultat.

04Ce qui s’exécute automatiquement

Des automatisations qui font gagner du temps.

  1. Une documentation toujours synchronisée avec l'API

    La documentation OpenAPI est générée à l'exécution à partir des métadonnées et des autorisations de l'appelant. La validation et la documentation partagent les mêmes définitions : les points de terminaison couverts ne divergent jamais.

  2. Journalisation automatique des accès

    Chaque appel authentifié par jeton est automatiquement consigné dans le journal d'accès. En cas de dépannage d'une intégration, vous disposez d'une piste d'audit fiable.

  3. Des webhooks déclenchés au bon moment

    Un workflow du module Automatisation envoie un webhook lors d'événements tels que la mise à jour ou la suppression d'une fiche, selon une planification ou manuellement — informant ainsi les systèmes externes en temps réel.

Intégrations externes

  • Connectez vos propres systèmesTout système externe peut se connecter via l'API REST sur HTTPS chiffré à l'aide d'un jeton. Votre boutique en ligne, vos outils de reporting ou vos applications sur mesure travaillent avec exactement les mêmes données et les mêmes règles que l'application principale.
  • Recevez des données de systèmes tiersLes systèmes tiers envoient des données vers un webhook entrant, où un gestionnaire déclaré par le module les traite — par exemple des prospects CRM entrants, des enregistrements d'appels ou des notifications push provenant de Mattermost.
  • Les workflows appellent les systèmes ciblesUn workflow envoie une requête POST, PUT ou PATCH à un système cible avec des en-têtes personnalisés et un modèle de corps, notifiant le système externe dès qu'un changement pertinent se produit.

Ce que l’agent IA prend en charge

  • Les mêmes règles pour l'IA

    Tant l'assistant IA intégré que les agents connectés via MCP (Model Context Protocol) utilisent les mêmes opérations génériques sur les entités que l'API REST, en appliquant exactement les mêmes contrôles d'autorisations.

Une personne valide dès qu’il s’agit d’argent, d’un client ou d’une exception.

05Questions fréquentes

Draivix dispose-t-il d'une API REST ?

Oui. L'API est générée automatiquement pour chaque entité à partir des métadonnées, y compris les champs et entités personnalisés ajoutés par un administrateur, et respecte toujours les autorisations de l'appelant.

Où puis-je trouver la documentation de l'API ?

Le point de terminaison /api/openapi.json renvoie une spécification OpenAPI 3.1.2, que les administrateurs peuvent également consulter dans le panneau d'administration. Elle n'inclut que les entités et opérations que l'appelant est autorisé à utiliser.

Draivix prend-il en charge les webhooks ?

Oui. Les webhooks sortants sont envoyés par des workflows du module Automatisation, tandis que les webhooks entrants sont reçus sur un point de terminaison dédié protégé par un secret partagé.

Quelles sont les limites de débit de l'API ?

La limite est de 240 requêtes par minute par entreprise et par utilisateur, une page de liste renvoie jusqu'à 200 enregistrements et un export renvoie jusqu'à 1 000 enregistrements.

Commençons ensemble

Expliquez-nous comment fonctionne votre entreprise.

Nous vous montrerons à quoi pourrait ressembler un système qui prend en charge une partie de ce travail.

Réserver une consultation