{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "#/components/schemas/TemplateComponent", "title": "TemplateComponent", "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "description": "The type of template component.", "enum": [ "HEADER", "BODY", "FOOTER", "BUTTONS" ] }, "format": { "type": "string", "description": "The format of the component, applicable to HEADER type.", "enum": [ "TEXT", "IMAGE", "DOCUMENT", "VIDEO" ] }, "text": { "type": "string", "description": "The text content of the component. Use {{n}} for variables." }, "buttons": { "type": "array", "description": "Button definitions, applicable to BUTTONS type.", "items": { "type": "object", "properties": { "type": { "type": "string", "description": "The type of button.", "enum": [ "PHONE_NUMBER", "URL", "QUICK_REPLY" ] }, "text": { "type": "string", "description": "The button label text." }, "phone_number": { "type": "string", "description": "The phone number for PHONE_NUMBER buttons." }, "url": { "type": "string", "format": "uri", "description": "The URL for URL buttons." } } } } } }