pub struct ProjectsUpdate {
pub cache_control: Option<String>,
pub description: Option<String>,
pub framework: Option<String>,
pub hidden: Option<bool>,
pub hidden_reason: Option<String>,
pub license: Option<String>,
pub name: Option<String>,
pub repo: Option<Box<ProjectsUpdateRepo>>,
pub slug: Option<String>,
pub tags: Option<HashMap<String, String>>,
pub upstream: Option<String>,
pub visibility: Option<String>,
}Fields§
§cache_control: Option<String>CacheControl replaces the Cache-Control policy the edge serves this site’s HTML under. Absent leaves it.
description: Option<String>Description replaces the one-line summary. Absent leaves it.
framework: Option<String>Framework replaces the build hint. It affects the NEXT build only — nothing already deployed is rebuilt.
Hidden is MODERATION, and the only admin-gated field on this body: it pulls a public project out of the catalogue from admin.hanzo.ai without editing the publisher’s own visibility choice, so un-hiding restores exactly what they asked for. A tenant sending it is ignored.
HiddenReason records WHY moderation hid it, so the action can be explained and reviewed later. Admin-gated like hidden itself.
license: Option<String>License is the terms that upstream work carries, with the same clear-versus- leave rule.
name: Option<String>Name replaces the display name. Absent leaves it; the slug never moves with it.
repo: Option<Box<ProjectsUpdateRepo>>§slug: Option<String>Slug is the project to update, from the path. The URL is the addressing authority — a slug in the body cannot move the write to another project.
Tags sets the site’s browser tag config: platform slug → non-secret pixel id (e.g. {"ga4":"G-…","meta":"…"}). track.js injects these first-party and the server CAPI reads them, per site. Absent LEAVES them; a present object REPLACES the set (send {} to clear). The ids are public — they ship in the page — so this is not the SECRET path (a CAPI token is sealed via POST /v1/destination).
upstream: Option<String>Upstream credits the third-party work this project was published from, and is settable after the fact because the live demos are the ones that most need crediting. An explicit empty string CLEARS the credit; absent leaves it.
visibility: Option<String>Visibility flips an existing project between "public" and "private". Same ONE rule as at create: public is free, private needs a paid plan.
Implementations§
Source§impl ProjectsUpdate
impl ProjectsUpdate
pub fn new() -> ProjectsUpdate
Trait Implementations§
Source§impl Clone for ProjectsUpdate
impl Clone for ProjectsUpdate
Source§fn clone(&self) -> ProjectsUpdate
fn clone(&self) -> ProjectsUpdate
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more