# `Unicom360.WhatsApp.TemplateInfo`
[🔗](https://github.com/TechRode-Solution-Limited/unicom360-elixir/blob/v0.1.0/lib/unicom360/whatsapp/template_info.ex#L1)

An approved WhatsApp template, as `Unicom360.WhatsApp.templates/2` lists it.

  * `name`, `language`, `category`, `from` (the WhatsApp number it belongs to).
  * `header` - a `Unicom360.WhatsApp.TemplateInfo.Header` (`type`, `variables`) or `nil`.
  * `body` - a `Unicom360.WhatsApp.TemplateInfo.Body` (`text`, `variables`).
  * `footer` - text or `nil`.
  * `buttons` - a list of `Unicom360.WhatsApp.TemplateButtonInfo`.
  * `authentication` - a `Unicom360.WhatsApp.TemplateInfo.Authentication`
    (`otp_type`, `code_expiration_minutes`) or `nil`.
  * `raw`, `extra` - the JSON object, and the members this version does not model.

# `t`

```elixir
@type t() :: %Unicom360.WhatsApp.TemplateInfo{
  authentication: Unicom360.WhatsApp.TemplateInfo.Authentication.t() | nil,
  body: Unicom360.WhatsApp.TemplateInfo.Body.t() | nil,
  buttons: [Unicom360.WhatsApp.TemplateButtonInfo.t()] | nil,
  category: String.t() | nil,
  extra: map(),
  footer: String.t() | nil,
  from: String.t() | nil,
  header: Unicom360.WhatsApp.TemplateInfo.Header.t() | nil,
  language: String.t() | nil,
  name: String.t() | nil,
  raw: map()
}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
