FR
EUR
Édition gratuiteGratuit Installer

API et CLI

Tout ce que fait la console est aussi disponible par une API REST et par l'outil en ligne de commande toutwafctl, avec des jetons à portée limitée : de quoi scripter, intégrer à un SOAR ou piloter depuis la CI.

Toutes les fonctions

Où le trouver dans la console : Console : Administration > Utilisateurs et accès (jetons d'API) ; API : /api/v1 ; outil : toutwafctl.

À quoi ça sert

Une seule API

La console et toutwafctl n'utilisent que l'API REST du plan de contrôle : ce que vous faites dans l'interface existe aussi en appel d'API.

Des jetons à portée limitée

Un jeton porte une liste de permissions (ressource:action), peut être limité à certains sites et expirer. Il ne dépasse jamais les droits de son créateur.

Des erreurs lisibles

Chaque erreur a un code TW-xxxx, un message dans la langue demandée et, dans la documentation, une cause et un remède.

Dans vos scripts et votre CI

toutwafctl a une sortie JSON, des codes de retour utilisables en CI et des messages en dix langues.

Ce que fait toutwafctl

Il parle à l'API avec un jeton ; la référence complète est dans la documentation.

Se connecter

login (avec le code TOTP si l'authentification à deux facteurs est active) échange la session contre un jeton longue durée, ou enregistre un jeton existant.

Sites et politique

apps (liste, création, mode détection/blocage) ; policy (export, validation, diff, application, publication, retour arrière).

Tester et simuler

test exécute des tests de règles avec une sortie JUnit ; simulate rejoue du trafic enregistré contre une politique.

Bannir, enrôler, jeton

ban et unban pour une adresse ; nodes pour les nœuds et leurs jetons d'enrôlement ; token pour créer, lister et révoquer des jetons d'API.

Sauvegarder et restaurer

backup (création, liste, téléchargement, destinations) et restore, y compris hors ligne, service arrêté.

Diagnostiquer

doctor lit l'installation locale même quand la console ne répond pas, ou interroge la console avec un jeton ; le code de retour est 1 si un contrôle échoue.

L'API REST

Chemin de base /api/v1.

  • Authentification : session par cookie avec en-tête CSRF pour les requêtes qui modifient, ou jeton porteur (Authorization: Bearer).
  • Les listes renvoient des éléments et un total ; la langue des messages suit Accept-Language ou le paramètre lang.
  • Les points de terminaison du plan de données sont servis à part, sur un port interne, avec un jeton de nœud.
  • La référence est générée à partir du contrat OpenAPI du produit.

Bonnes pratiques de jeton

Un jeton de CI n'a pas besoin de tout.

  • Créez un jeton dédié par usage, avec seulement les permissions nécessaires et une expiration.
  • Évitez le jeton « * » créé par une connexion interactive pour la CI.
  • Un jeton peut être limité à des sites précis et révoqué à tout moment.

Ce qui n'est pas fait, ou pas prouvé

Nous préférons le dire clairement.

  • L'option --insecure de toutwafctl désactive la vérification du certificat TLS de la console : réservez-la à un laboratoire.
  • La référence de l'API est générée d'un instantané du produit ; en cas de doute, le contrat OpenAPI du produit installé fait foi.
  • Un jeton ne dépasse jamais les droits de son créateur, et un rôle sans une permission ne l'obtient pas par l'API.

Cas d'usage

Bannir depuis un SOAR

Un scénario appelle l'API pour bannir une adresse un temps donné, avec une raison tracée dans l'audit.

Un script d'exploitation

Un script crée un site, le met en détection puis le publie avec toutwafctl.

Une CI qui teste les règles

Les tests de règles tournent à chaque changement, avec un compte rendu JUnit.

Ce qui est inclus, par édition

La base est gratuite ; les options avancées demandent une offre payante. Une option sous licence reste visible dans la console, verrouillée, jamais cachée.

ÉditionGratuit Inclus dans toutes les offres, dont les deux offres gratuites (Free et Free +)Pro et plus Offres payantes : visible dans la console, verrouillé sans licence. À partir de Pro, sauf mention Agency ou Enterprise
  • API REST pour tout ce que fait la console, avec des jetons à portée limitéeGratuit
  • Outil en ligne de commande : politique, tests, simulation, sauvegardes, diagnosticGratuit
  • Page de la flotte : nœuds, versions, jetons d'enrôlement et mises à jour orchestrées des nœudsGratuit

Revenir à la valeur par défaut d'une option avancée est toujours possible. Ce qui se passe à la fin d'une licence payante est décrit dans la FAQ des tarifs : 48 h de grâce, 48 h de lecture seule, puis protection WAF désactivée jusqu'au renouvellement.

Tarifs Lire la documentation

Placez un bouclier devant vos applications dès aujourd'hui

Installez-le sur votre propre serveur, ou écrivez-nous pour parler de licences.

En savoir plus dans la documentation