Author transactional templates
Transactional templates separate application code from message copy and delivery configuration. Your backend calls a stable template key; Engage resolves a published version, validates variables, localizes content, and enqueues push.

Define the contract
Choose a key such as order_shipped. Once published, the key is immutable because server code depends on it. Add a name and description for operators, then select target apps.
Define every variable before using it in content:
| Type | Example |
|---|---|
| String | customer name, order reference |
| Number | total, quantity |
| Boolean | feature or state switch |
| Date | expected arrival |
| URL | receipt or tracking destination |
Each variable has a stable ID/name, required flag, description, and optional default. Publish fails when content or tests violate the variable contract.

Localize content
Set a default locale and optional fallback. Each variant can define title, body, deep link, and custom data. A send may request a locale; the response reports the locale actually resolved and any diagnostics.
Delivery policy
- TTL bounds provider delivery relevance.
- Priority is normal or high.
- Per-minute rate limit protects downstream/provider capacity.
- Deduplication window complements request idempotency.
Test and activate
Use a test group from the console to render variables and send to real devices. Verify missing/default variables, every locale, both platforms, provider configuration, deep link, and custom data.
Activating publishes the current draft version. Subsequent edits create a new draft without mutating the active version until the next activation. Versions record actor, timestamp, state, definition, and note; an older version can be restored into a draft.

Server integration
Create a scoped access key and call the public endpoint with an idempotencyKey. See Transactional push API.
Lifecycle
Templates are draft, active, inactive, or archived. Inactive/archived templates reject public sends. Published templates report sent, delivered, failed, and last-used statistics.