Authentification
Envoyez une clé API en tant que jeton du porteur. La clé doit posséder l'autorisation sites.create ; une clé qui ne l'a pas est refusée avec le code 403, et non 404.
Cet endpoint ne prend aucun identifiant d'organisation. Votre clé identifie déjà l'organisation à laquelle elle appartient, et la réponse y est limitée.
Essayer
Remplacez tout ce qui se trouve entre crochets par vos propres valeurs, et le espace réservé à la clé par une clé de votre tableau de bord.
curl -X POST https://api.zinndigital.com/v1/ai/site-builds \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "brief": <string> }'Connecté ? La console d'API de votre tableau de bord saisit votre véritable ID d'organisation ainsi que votre propre clé, et exécute la requête sur l'API de production afin que vous puissiez voir la réponse réelle. Ouvrir ce point de terminaison dans la console API
Détails
Accepts a brief and returns the new draft **at once, in `generating`, with no files yet**. A durable workflow writes the site — a real multi-page site takes one to three minutes, which no request can hold (D20191) — and the row settles to `drafted`, or to `failed` with a reason in `error`. Poll `listSiteBuilds` or `getSiteBuild` to watch it. Nothing is public until `publishSiteBuild` is called. The model is the **cheapest priced one the catalogue has verified** for the funding provider unless `model` names another (§2.45); the choice is recorded on the row. **The first build on an organization posts its one-time free allowance before the spend is authorised**, so a brand-new customer's first build succeeds rather than being refused and then handed credit they cannot retroactively use. The grant is made one-time by a database constraint, not by application code. Billed on **actual** token usage against the ordinary AI credit balance, or against the customer's own provider key when they have one — the same one meter every other AI surface uses. Refuses rather than truncating: a site that overran the size cap, that named an unusable file path, or that came back without a home page is reported as a `422` with a reason, because a half-written site that renders is worse than none — the customer would publish it. Requires `sites.create`, which is a stronger authority than reading a draft needs: this call spends the organization's money.
Corps de la requête
| Nom | Type | Obligatoire | Qu'est-ce que c'est |
|---|---|---|---|
brief | string | Oui | What the site is for, who it is for, and which pages it needs. A tighter brief produces a better site than a longer one. |
provider | string | Non | Force a provider. Omit for the cheapest route this organization's funding allows, resolved exactly as every other customer-funded AI surface resolves it. |
model | string | Non | Force a model. Omit to let the resolver choose. |
Réponse
| Nom | Type | Obligatoire | Qu'est-ce que c'est |
|---|---|---|---|
build | SiteBuild | Oui | One "describe a site and we build it" run. `files` is present on the **detail** and create responses and absent from the **list**, deliberately: a generated tree can be a hundre… |
trial | SiteBuilderTrial | Non | The **one-time** free allowance for the AI site builder. One grant per organization, for ever — not monthly, and not per site. `granted` is true because the credit was actually… |
Erreurs que cet point de terminaison peut renvoyer
401 · 403 · 422 · 429