# `ExGram.Model.InputMediaVoiceNote`
[🔗](https://github.com/rockneurotiko/ex_gram/blob/0.69.0/lib/ex_gram.ex#L6904)

Represents a voice message file to be sent.

Check the [documentation of this model on Telegram Bot API](https://core.telegram.org/bots/api#inputmediavoicenote)

- `type`: Type of the media, must be voice_note
- `media`: File to send. Pass a file_id to send a file that exists on the Telegram servers (recommended), pass an HTTP URL for Telegram to get a file from the Internet, or pass "attach://<file_attach_name>" to upload a new one using multipart/form-data under <file_attach_name> name. More information on Sending Files »
- `caption (optional)`: Optional. Caption of the voice message to be sent, 0-1024 characters after entities parsing
- `parse_mode (optional)`: Optional. Mode for parsing entities in the voice message caption. See formatting options for more details.
- `caption_entities (optional)`: Optional. List of special entities that appear in the caption, which can be specified instead of parse_mode
- `duration (optional)`: Optional. Duration of the voice message in seconds

# `t`

```elixir
@type t() :: %ExGram.Model.InputMediaVoiceNote{
  caption: String.t() | nil,
  caption_entities: [ExGram.Model.MessageEntity.t()] | nil,
  duration: integer() | nil,
  media:
    String.t()
    | {:file, String.t()}
    | {:file_content, iodata() | Enum.t(), String.t()},
  parse_mode: String.t() | nil,
  type: String.t()
}
```

# `decode_as`

---

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