Skip to content

Publishing and versions

Publishing is the only action in Maiilo that changes what your application and your ESP receive. Each publish freezes your draft into a new, numbered version.

When you press Publish and confirm:

  1. Maiilo takes your current draft, including the latest content of any shared blocks it uses.
  2. It stores a frozen copy as the next version number: v1, then v2, v3, and so on.
  3. That version becomes the template’s published version. From that moment the API serves it, and it is what SendGrid push sends.

A version holds everything that ships together:

  • The rendered HTML
  • The subject line
  • The list of variables

A version never changes after it is created. Nothing can edit it:

  • Editing the draft does not touch the published version. Your changes stay in the draft until you publish again.
  • Editing a shared block does not touch the published version. Templates that use the block are flagged as needing a re-publish instead. See Staleness and re-publishing.
  • Rolling back does not edit or re-activate an old version. It copies the old version into your draft, and publishing that creates a new version. See History and rollback.

Because the API returns the stored HTML instead of rendering the template on each request, the same version returns the same bytes on every request.

Versions are only ever added, never rewritten or removed. The newest version is always the live one. The template’s details page lists every version with its number, when it was published and who published it.

  • In the builder: the Publish button in the toolbar.
  • On Needs Attention: Re-publish for templates whose shared blocks changed, one at a time or in a batch. See Needs Attention.

A template that has never been published has no version. The API returns 404 with {"error":"template_not_published"} for it, and it cannot be pushed to SendGrid. Publish it once to make it available.