Intelligence artificielle
Générer un site complet à partir d'un questionnaire et réécrire un texte (plus court, plus chaleureux, corrigé, optimisé pour Google) via l'API.
Deux routes donnent accès à l'IA de Monsiteo : la génération d'un site complet à partir de quelques réponses, et la réécriture d'un texte.
Générer un site#
POST /v1/ai/generate · Jeton · 5 requêtes par minute
L'IA rédige les textes, choisit les sections adaptées au métier, crée les pages demandées et applique un thème. Le site est créé en brouillon : relisez-le avant de le publier.
| Paramètre | Type | Obligatoire | Règles |
|---|---|---|---|
business_name |
chaîne | oui | nom du commerce, 150 caractères max. |
activity |
chaîne | oui | métier, 60 caractères max. ; de préférence une clé de activities du catalogue : restaurant, friterie, boulangerie, cafe, fleuriste, coiffeur, beaute, artisan, garage, commerce, sante, sport, consultant, association, photographe, autre |
city |
chaîne | non | ville, 120 caractères max. (utile pour le référencement local) |
description |
chaîne | non | présentation libre de l'activité, 1 500 caractères max. |
services |
chaîne | non | services ou produits phares, 1 500 caractères max. |
tone |
chaîne | non | chaleureux, professionnel, fun ou premium |
primary_color |
chaîne | non | couleur principale #RRGGBB |
pages |
tableau | non | 8 pages max. parmi accueil, services, carte, galerie, a-propos, tarifs, avis, contact, faq |
phone |
chaîne | non | 40 caractères max. |
email |
chaîne | non | e-mail de contact, 190 caractères max. |
address |
chaîne | non | adresse, 190 caractères max. |
slug |
chaîne | non | adresse souhaitée, 63 caractères max. (règles des adresses) |
site_id |
entier | non | un de vos sites à régénérer au lieu d'en créer un nouveau (ses pages sont remplacées) |
curl -X POST https://api.monsiteo.com/v1/ai/generate \
-H "Accept: application/json" -H "Content-Type: application/json" \
-H "Authorization: Bearer 1|AbCdEfGhIjKlMnOpQrStUvWxYz0123456789abcd" \
-d '{
"business_name": "Friterie William",
"activity": "friterie",
"city": "Namur",
"description": "Friterie familiale depuis 1987, frites fraîches cuites à la graisse de bœuf.",
"services": "Frites, fricadelles, mitraillettes, sauces maison, commandes pour groupes",
"tone": "chaleureux",
"primary_color": "#E63946",
"pages": ["accueil", "carte", "a-propos", "contact"],
"phone": "+32 81 12 34 56",
"email": "william@friterie-william.be",
"address": "Rue de Fer 12, 5000 Namur",
"slug": "friterie-william"
}'
Réponse 201 : l'objet site complet dans data, avec ses pages et leurs sections (même forme que Lire un site).
La génération prend en général de quelques secondes à une minute : prévoyez un délai d'attente HTTP d'au moins 120 secondes.
Fonctionnement#
- Moteur : si une clé d'IA est configurée côté serveur, les textes, le thème et le plan des pages sont rédigés par le modèle d'IA de Monsiteo. Sinon, ou si l'appel échoue, Monsiteo bascule automatiquement sur des modèles par métier (déterministes, sans IA) remplis avec vos réponses : la requête aboutit quand même avec un
201. - Ce qui est écrit : le nom, l'activité (une clé inconnue devient
autre), le thème (couleurs vérifiées : si le contraste texte/fond est insuffisant, les couleurs du modèle du métier sont reprises),settings.business(nom, slogan, téléphone, e-mail, adresse, ville, paysBE),settings.seo(titre et description), puis une page par entrée depages(la pageaccueildevient la page d'accueil, les autres ont pour adresse leur clé, toutes dans le menu, avec titre et description pour Google). - Sections : elles passent par le même nettoyage que l'éditeur (voir Format des sections). Les tirets cadratins et demi-cadratins sont retirés des textes.
- Statut : un nouveau site est créé en
draft; avecsite_id, l'adresse est conservée sauf sislugest fourni, et toutes les pages existantes sont supprimées puis recréées.
Quota mensuel#
Chaque génération compte dans le quota du mois calendaire en cours : 3 en Gratuit, 50 en Site, 200 en Site + Novadesko. Le compteur repart à zéro le 1er de chaque mois.
Erreurs :
402: « Vous avez atteint le nombre de générations IA de votre formule ce mois-ci. » ;402: « Votre formule ne permet pas de créer un site supplémentaire. » (sanssite_id, quand la limite de sites est atteinte) ;422: paramètres invalides (métier manquant, couleur mal formée, page inconnue,site_idinexistant ou appartenant à un autre compte, adressesluginvalide ou déjà prise...) ;429: plus de 5 demandes par minute.
Réécrire un texte#
POST /v1/ai/rewrite · Jeton · 30 requêtes par minute
Propose une nouvelle version d'un texte. Rien n'est enregistré : c'est à vous de placer le résultat dans la section voulue. Cette route ne consomme pas le quota mensuel de générations.
Si l'IA n'est pas configurée ou ne répond pas, une réécriture locale simple est appliquée à la place (typographie corrigée ; shorter garde environ la moitié des phrases ; friendlier et longer ajoutent une phrase d'invitation ; professional retire les points d'exclamation ; seo ajoute le context s'il n'apparaît pas). Le texte HTML reste en HTML (paragraphes).
| Paramètre | Type | Obligatoire | Règles |
|---|---|---|---|
text |
chaîne | oui | texte d'origine, 4 000 caractères max. |
instruction |
chaîne | oui | voir le tableau ci-dessous |
context |
chaîne | non | contexte pour l'IA (nom du commerce, section...), 300 caractères max. |
instruction |
Effet |
|---|---|
shorter |
Plus court. |
longer |
Plus développé. |
friendlier |
Plus chaleureux. |
professional |
Plus professionnel. |
fix |
Corrige l'orthographe et la grammaire. |
seo |
Optimisé pour le référencement (mots-clés naturels). |
curl -X POST https://api.monsiteo.com/v1/ai/rewrite \
-H "Accept: application/json" -H "Content-Type: application/json" \
-H "Authorization: Bearer 1|AbCdEfGhIjKlMnOpQrStUvWxYz0123456789abcd" \
-d '{"text":"On fait des frites depuis longtemps a Namur, venez.","instruction":"fix","context":"Friterie William, bannière d accueil"}'
{ "text": "Nous faisons des frites depuis longtemps à Namur : venez nous voir !" }
Erreurs : 422 (instruction inconnue, texte trop long), 429.
Mis à jour le 26 octobre 2026