Ce qui est possible — et selon quelles règles
Via l'API, vous créez, modifiez et publiez ce que vous faites d'habitude dans les outils. Les mêmes règles s'appliquent : les limites de votre forfait, votre barre IA, une marque complète avant la publication, des numéros de facture continus, sans interruption, et la vérification de chaque image téléversée. Ce qui n'est pas possible dans l'outil ne l'est pas non plus ici.
Si quelque chose est refusé, type contient un code anglais fixe sur lequel votre programme peut se baser — par exemple plan_limit_reached, brand_incomplete ou ai_quota_exhausted —, et detail contient la phrase que l'outil vous afficherait aussi.
{
"error": {
"type": "brand_incomplete",
"message": "The brand needs a name, an address and an email or phone number before anything is published.",
"detail": "Bevor diese Website online geht, muss klar sein, wer dahintersteht. Es fehlt: …"
}
}Les droits
Chaque section dispose d’un droit de lecture et d’un droit d’écriture : sites:read et sites:write pour les sites web, domains:read et dns:write pour les domaines et les enregistrements DNS, invoices:read et invoices:write pour les clients, les factures et les devis, media:read et media:write pour MediaStudio, brand:read pour vos marques. Choisissez-les lors de la création de la clé, sous « Que peut faire cette clé ? ».
Sites web
POST /v1/sites crée un site web complet à partir d'une seule phrase — sous forme de brouillon. Cela prend généralement 20 à 60 secondes et consomme du crédit IA, comme dans WebSiteBuilder. POST /v1/sites/{id}/edit modifie une page du brouillon selon vos instructions. Rien n'est mis en ligne avant POST /v1/sites/{id}/publish ; POST /v1/sites/{id}/unpublish remet le site web hors ligne sans rien perdre.
brand_id désigne la marque dont le site web affiche le logo et les informations d'entreprise. Si vous n'avez qu'une seule marque, chaque site web la suit automatiquement — brand_id contient alors son numéro et brand_assigned vaut false. Avec plusieurs marques, un site web n'affiche le logo et les informations d'entreprise que de la marque à laquelle vous l'avez associé ; sans association, brand_id vaut null.
curl https://api.kenjtec.com/v1/sites \
-H "Authorization: Bearer kt_api_…" \
-H "Idempotency-Key: cafe-lumen-2026-10" \
-H "Content-Type: application/json" \
-d '{"brief": "Café Lumen in Lissabon: Frühstück, eigene Kaffeebohnen, Tische zum Reservieren."}'Avec les routes IA, envoyez un en-tête Idempotency-Key. Si la connexion est interrompue, vous réessayez avec la même clé et vous obtenez le site web déjà créé — sans payer une deuxième fois.
Enregistrements DNS
GET /v1/domains liste vos domaines dont le DNS est chez KENJTEC. Pour ces domaines, vous créez des enregistrements (A, AAAA, CNAME, MX, TXT, NS), vous les remplacez avec PATCH et vous les supprimez — avec les mêmes vérifications que dans DomainStudio.
Les enregistrements que KENJTEC a définis pour l'une de vos réalisations portent managed: true. L'API ne les modifie pas ; cela se fait dans DomainStudio, où les conséquences sont indiquées.
Factures et devis
POST /v1/customers crée un client, POST /v1/invoices un brouillon — une facture ou un devis. KENJTEC calcule les totaux ; vous envoyez la quantité, le prix unitaire en centimes et le taux de taxe pour chaque ligne.
POST /v1/invoices/{id}/issue émet le document : il reçoit le numéro suivant, sans interruption dans la numérotation, et ne peut plus être modifié ensuite. Corriger signifie annuler — POST /v1/invoices/{id}/cancel crée une facture d'annulation avec son propre numéro. Rien n'est supprimé.
Téléverser des médias
Le téléversement se fait en deux étapes, comme dans MediaStudio. POST /v1/media/uploads vous donne une adresse et les en-têtes ; vous y envoyez le fichier avec PUT. Ensuite, POST /v1/media/{id}/confirm vérifie ce qui est arrivé, et ce n'est qu'alors que le fichier est accessible à son adresse.
Les formats autorisés sont JPEG, PNG, WebP, GIF, PDF, MP4 et WebM. Une image qui ne passe pas la vérification du contenu est refusée avec 422.
Lire votre marque
GET /v1/brands renvoie vos marques depuis BrandStudio : nom, logo, couleurs, polices, informations d'entreprise et canaux. Ainsi, vos propres programmes construisent avec la même identité visuelle que vos réalisations KENJTEC.