API des plugins¶
Les points d'accès autour des plugins : les installer et les gérer (administrateur), les webhooks (administrateur), et les préférences que l'interface d'un plugin garde par utilisateur. Écrire un plugin relève d'un autre contrat, en gRPC sur un socket local : voir Écrire un plugin et la Référence de l'API des plugins.
| Spécification | Contenu |
|---|---|
| admin_plugin.swagger.json | Installer, activer, désactiver, désinstaller des plugins ; configuration, journaux, limites de ressources, environnements d'exécution ; aperçu et application d'une mise à jour ; IssuePluginToken |
| webhook.swagger.json | Créer, lister, modifier et supprimer des webhooks ; historique des envois |
| plugin_prefs.swagger.json | Les préférences par utilisateur de l'interface d'un plugin (la permission prefs) |
L'envoi d'un paquet est un POST /api/v1/admin/plugins/upload multipart
(champs plugin, sig facultatif, accept_permission_changes) ;
POST /api/v1/admin/plugins/preview analyse sans installer. Les deux sont
des routes d'administrateur.
Authentification¶
La gestion des plugins et les webhooks exigent un administrateur, comme
l'API d'administration. plugin_prefs est le seul
service conçu pour un jeton de plugin : la page hôte l'émet pour un plugin et
un utilisateur, et le service ne renvoie que les lignes de ce couple
(API du serveur).