Hanzo
OpenapiTemplate

Overwrites the caller org's OWN starter kit at the path slug, answering the…

Overwrites the caller org's OWN starter kit at the path slug, answering the stored kit.

PUT /v1/template/{slug}

Addresshttps://api.hanzo.ai/v1/template/{slug}
MethodPUT
Operationput_template_by_slug
AuthAuthorization: Bearer $HANZO_API_KEY

Overwrites the caller org's OWN starter kit at the path slug, answering the stored kit. A slug they do not own is 404, never a create: the UPDATE binds org, so a PUT can never reach another org's kit.

Request

17 fields, body application/json (required).

FieldInTypeRequiredDescription
slugpathstringyesSlug is the kit to replace, from the path.
categorybodystringCategory groups the kit in the gallery browser.
demobodystringDemo is the deployed site itself, when there is one.
descriptionbodystringDescription is the browse-card blurb, max 4096 characters.
featuresbodystring[]Features are the highlights the card lists, at most 32.
frameworkbodystringFramework is the stack the kit is built on ("Next.js 14").
previewbodystringPreview is the still image the browse card renders, max 4096 characters.
slugbodystringSlug is the kit to replace, from the path.
sourcebodystringSource is the repository the kit is forked from, max 4096 characters.
titlebodystringTitle is the display name.
useCasebodystringUseCase is what the kit is for, in a phrase.
variantsbodyVariant[]Variants are the shapes this kit ships in, at most 32; the fork picks one.
variants[].frameworkbodystringonly when it differs from the template's
variants[].idbodystringselector, unique within the template ("react", "grid-3-fluid")
variants[].kindbodystringthe axis it varies: format | page | theme
variants[].labelbodystringhuman label for the picker
variants[].sourcebodystringthe repository this shape is forked from; the synthesized default shape carries the template's own

Response

StatusBodyMeaning
200StarterKitok

200 body — 19 fields.

FieldInTypeAlwaysDescription
categorybodystringgroups the kit in the gallery browser ("Portfolio", "SaaS")
demobodystringlive demo (<slug>.hanzo.app), when deployed
descriptionbodystringthe browse-card blurb
featuresbodystring[]the highlights the card lists, at most 32
frameworkbodystringthe stack the kit is built on ("Next.js 14.2 + TS")
orgbodystringowner of a PRIVATE template; empty in the public catalog
previewbodystringthe still image the browse card renders
ratingbodynumberRating is public-gallery curation, on the same terms as Tier: catalog-only, never accepted from a request, absent on a customer's own kit.
slugbodystringthe kit's identity — lowercase alphanumeric with dashes, max 40
sourcebodystringthe repository the kit is forked from
tierbodyintegerTier is public-gallery curation, carried verbatim from the embedded catalog.
titlebodystringdisplay name
useCasebodystringwhat the kit is for, in a phrase
variantsbodyVariant[]the shapes this template ships in
variants[].frameworkbodystringonly when it differs from the template's
variants[].idbodystringselector, unique within the template ("react", "grid-3-fluid")
variants[].kindbodystringthe axis it varies: format | page | theme
variants[].labelbodystringhuman label for the picker
variants[].sourcebodystringthe repository this shape is forked from; the synthesized default shape carries the template's own

Failure carries the platform error shape — see Errors.

Examples

hanzo templates set <slug>

Template API · All Hanzo APIs · Interactive reference

How is this guide?

On this page