Clustraly
Plugins & API interne

Automatisez vos opérations articles avec l'API JSON admin

API JSON admin opérations articles une fonctionnalité du module Plugins & API interne de Clustraly. L'API JSON admin des opérations articles expose des endpoints /admin/api pour lister, lire, créer et autosauvegarder vos articles, avec contrôle d'accès au niveau objet.

Un accès programmatique propre au même moteur d'articles que l'admin : lister, lire, créer, autosauvegarder en JSON, sous /admin/api, sans jamais desserrer vos droits.

Endpoints /admin/api

Vos articles pilotés en JSON, pas à la main

Quatre opérations couvrent le cycle courant d'un article : lister, lire, créer et autosauvegarder. Chacune répond en JSON sous /admin/api, avec des codes HTTP explicites de quoi brancher vos propres scripts, intégrations ou outils internes sur le même moteur que l'interface admin.

  • Lister, lire, créer, autosauvegarder
  • Réponses JSON, codes HTTP adaptés (403, 404, 422, 500)
  • Le même moteur d'articles que l'admin
Lister & lire

Retrouvez exactement les articles qui vous reviennent

GET articles pagine vos articles (page et per_page, plafonné à 50) et filtre par statut ; GET article/{id} renvoie le détail. Un contrôle au niveau objet s'applique par-dessus : sans la permission articles.edit_others, vous ne listez et ne lisez que vos propres articles.

Au-delà de vos droits, la réponse est un 403 JSON net jamais une fuite silencieuse d'un contenu qui ne vous appartient pas.

  • Pagination page / per_page (plafond 50)
  • Filtre par statut
  • Contrôle au niveau objet via ownsOrCan
  • 403 JSON sur accès non autorisé
Créer

Créez un article déjà propre et déjà valide

createArticle attend un titre, désinfecte le contenu par HtmlSanitizer, puis génère un slug unique automatiquement. Le statut et la visibilité passent une liste blanche stricte contre leurs valeurs ENUM, ce qui empêche MySQL non strict de coercer un champ inconnu en valeur vide.

À la clé, un 201 et un article qui arrive assaini, sans collision de slug ni statut douteux.

  • Titre requis
  • Contenu désinfecté (HtmlSanitizer)
  • Slug unique généré automatiquement
  • Statut / visibilité en liste blanche ENUM
Autosauvegarder

Une autosauvegarde qui n'écrase jamais votre travail

autosaveArticle enregistre une version de brouillon dédiée, de type autosave, et vous renvoie son horodatage. Votre article courant n'est pas modifié : chaque autosave devient une version distincte, prête à être retrouvée.

Vous gardez le fil de vos brouillons en continu, sans jamais perdre l'état publié sous vos pieds.

  • Version de brouillon de type autosave
  • Horodatage renvoyé à chaque sauvegarde
  • L'article courant reste intact
Garde-fous

Chaque requête traverse les mêmes garde-fous que l'admin

Ces endpoints ne sont pas exposés au grand large. Ils vivent derrière l'authentification de session admin, une limitation de débit par seau « api », des permissions fines (articles.view, articles.create) et un jeton CSRF sur toutes les mutations.

Le contrôle au niveau objet reste actif au-dessus de tout : l'API applique vos droits, elle ne les contourne pas.

  • Session admin + limitation de débit
  • Permissions fines par endpoint
  • CSRF exigé sur les écritures (POST)
  • Contrôle au niveau objet superposé
Pourquoi ça compte

Vous décidez, l'API applique

Contrôle au niveau objet, permissions fines, CSRF et versions d'autosave : chaque opération d'article respecte vos droits et garde une trace. L'API exécute vos décisions, elle n'en prend aucune à votre place.

FAQ

Questions fréquentes

Quelles opérations d'articles l'API JSON admin couvre-t-elle ?
Quatre : lister (GET articles, paginé et filtrable par statut), lire (GET article/{id}), créer (POST createArticle) et autosauvegarder (POST /{id}/autosave). Toutes répondent en JSON sous /admin/api.
Puis-je voir les articles des autres utilisateurs via l'API ?
Seulement si votre rôle possède la permission articles.edit_others. Sinon, le contrôle au niveau objet (ownsOrCan) limite la liste et la lecture à vos propres articles, et renvoie un 403 JSON au-delà.
Que se passe-t-il si je crée un article sans slug ou avec un statut inconnu ?
Le slug est généré automatiquement et rendu unique. Le statut et la visibilité sont validés contre une liste blanche ENUM ; une valeur hors liste est écartée, ce qui évite qu'un champ inconnu soit coercé en valeur vide.
L'autosauvegarde remplace-t-elle mon article ?
Non. autosaveArticle crée une version de brouillon distincte, de type autosave, et renvoie son horodatage. Votre article courant n'est pas modifié.
Prêt à commencer ?

Des opérations articles cadrées, du premier appel à la dernière autosave

Listez, lisez, créez et autosauvegardez vos articles en JSON, sous /admin/api, avec contrôle au niveau objet, slug unique, contenu assaini et garde-fous de session, de permissions et de CSRF. L'API JSON admin des opérations articles vous donne un accès programmatique propre au même moteur d'articles que l'interface sans jamais desserrer vos droits.