# `ExGram.Model.InlineQueryResultAudio`
[🔗](https://github.com/rockneurotiko/ex_gram/blob/0.64.0/lib/ex_gram.ex#L6425)

Represents a link to an MP3 audio file. By default, this audio file will be sent by the user. Alternatively, you can use input_message_content to send a message with the specified content instead of the audio.

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

- `type`: Type of the result, must be audio
- `id`: Unique identifier for this result, 1-64 bytes
- `audio_url`: A valid URL for the audio file
- `title`: Title
- `caption (optional)`: Optional. Caption, 0-1024 characters after entities parsing
- `parse_mode (optional)`: Optional. Mode for parsing entities in the audio 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
- `performer (optional)`: Optional. Performer
- `audio_duration (optional)`: Optional. Audio duration in seconds
- `reply_markup (optional)`: Optional. Inline keyboard attached to the message
- `input_message_content (optional)`: Optional. Content of the message to be sent instead of the audio

# `t`

```elixir
@type t() :: %ExGram.Model.InlineQueryResultAudio{
  audio_duration: integer() | nil,
  audio_url: String.t(),
  caption: String.t() | nil,
  caption_entities: [ExGram.Model.MessageEntity.t()] | nil,
  id: String.t(),
  input_message_content: ExGram.Model.InputMessageContent.t() | nil,
  parse_mode: String.t() | nil,
  performer: String.t() | nil,
  reply_markup: ExGram.Model.InlineKeyboardMarkup.t() | nil,
  title: String.t(),
  type: String.t()
}
```

# `decode_as`

---

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