clave docs

Site settings

A site's settings live in its repository, in a file named clave.site.json at the root. A publish reads the file, and the live site does what it says. A draft reads its own copy, so a change can be tried on a draft first. It is not .clave/clave.json, which is the skill's own record.

{
  "payment_return_path": "/thank-you",
  "badge": false,
  "code_refunds": false,
  "egress": ["api.example.com"]
}
Key What it sets
forms The site's contact forms, by name. See Forms.
payment_return_path The page a payer lands on after paying. "" is Clave's own plain page. See Payments.
badge Whether the live site shows "Made with Clave". Only the owner may change it.
code_refunds Whether the site's code may give money back with the site key alone, with nobody signed in. Only the owner may change it. Needs code.
egress The hostnames the site's code may send requests to. Needs code.
events, schedules, private What the site's code asks of the platform. See Code in a site.

The file is the only place to change these. The API, the connector and the Clave app show them and do not change them.

A key the file does not name keeps the value the site has. A fault in the file stops the publish, and the message says which key. A site with no code that names a key only code can use is refused, not skipped.

Collaborators can change any file. A publish that changes badge or code_refunds works only when the owner publishes it. For anybody else it stops, and the live site stays as it is.