The SabNode template library is the source of truth for every WhatsApp message that leaves your account. Every template is a versioned object with a category (Marketing, Utility, Authentication), language variants, header (text, image, video or document), body with typed variables, optional footer and buttons (quick reply, URL, phone). When you edit a template, we create a new draft version — the live version keeps serving broadcasts and flows until the new draft is approved.
Authoring includes a real-time preview that renders exactly how the message will look on iOS and Android, with sample values plugged into every variable. Buttons render with character counts, URLs are validated, and media headers are previewed at the right aspect ratio. Before you submit, we lint the template against common rejection patterns — promotional language inside Utility, missing opt-in references, broken variable indices — and explain each warning in plain English so you can fix issues pre-submission.
Submission is one click. The library tracks status (pending, approved, rejected, paused, disabled) and surfaces rejection reasons translated from Meta's policy codes into actionable language: not just "policy violation" but "Utility templates cannot contain promotional offers — line 3 mentions a discount." You can resubmit a fix without losing history; every version, every rejection, every approver is logged.
Templates are not just for broadcasts. The flow builder, AI Studio responses, scheduled campaigns and chatbot rules all pull from the same library. Pause a template here and it stops sending everywhere. Roll back a variant here and every downstream surface updates. This is the contract that keeps a large WhatsApp practice from drifting out of compliance one rogue copy edit at a time.