{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/formfeed/main/json-schema/formfeed-brand-schema.json", "title": "Brand", "x-generated": "2026-09-28", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/formfeed-openapi.json#/components/schemas/Brand", "type": "object", "required": [ "version", "name", "colors", "fonts", "font_size", "logo", "legal_footer", "page_defaults" ], "properties": { "version": { "type": "integer", "description": "Grows with every change of the kit; renders record the version they used." }, "name": { "type": [ "string", "null" ] }, "colors": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Token → hex colour, e.g. `primary`, `accent`. Always an object." }, "fonts": { "type": "object", "properties": { "heading": { "type": [ "string", "null" ] }, "body": { "type": [ "string", "null" ] } } }, "font_size": { "type": [ "string", "null" ] }, "logo": { "type": "object", "description": "CDN URLs of the logos, served without a signature; a new logo gets a new URL.", "properties": { "primary": { "type": [ "string", "null" ], "format": "uri" }, "inverse": { "type": [ "string", "null" ], "format": "uri" }, "mark": { "type": [ "string", "null" ], "format": "uri" } } }, "legal_footer": { "type": [ "string", "null" ] }, "page_defaults": { "type": "object", "description": "Paper and margins new templates start from in the app; renders do not apply them. `{}` when unset.", "properties": { "paper": { "type": "object", "properties": { "format": { "type": "string" }, "landscape": { "type": "boolean" } } }, "margin": { "type": "object", "properties": { "top": { "type": "string" }, "right": { "type": "string" }, "bottom": { "type": "string" }, "left": { "type": "string" } } } } }, "updated_at": { "type": [ "string", "null" ], "format": "date-time" } } }