Conversations API: Support sending WhatsApp voice notes (.ogg/Opus) – parity with new Inbox feature

User story
As a HubSpot admin running a WhatsApp-first sales and service process, I want to send WhatsApp voice notes via the Conversations API so that automated workflows and custom integrations can use the same voice-note capability the Inbox beta already offers in the UI.

Current behavior

  • The new Inbox beta lets agents record and send WhatsApp voice notes from HubSpot. This works fine.
  • Sending the same content programmatically fails. Posting an .ogg (Opus) file, the native WhatsApp voice-note format, to a WhatsApp thread via the Conversations API returns:
"status": {
  "statusType": "FAILED",
  "failureDetails": {
    "errorMessage": "SHORT_MESSAGES_INTERNAL_FAILURE",
    "errorMessageTokens": {}
  }
}
  • HubSpot Support confirmed this is a current limitation of the public API: the UI and the API are not at feature parity for voice notes.

Expected behavior

  • The Conversations API accepts audio attachments (.ogg/Opus, ideally also .mp3/.m4a) for WhatsApp threads and delivers them as native voice notes, the same way the Inbox beta does.
  • If a format is unsupported, the API returns a specific validation error (e.g. UNSUPPORTED_MEDIA_TYPE) instead of a generic internal failure.
  • The docs list the supported outbound media types per channel.

Why this matters

  • In many markets, voice notes are the preferred way to communicate on WhatsApp. They feel personal and convert noticeably better than text in sales conversations.
  • We run automated WhatsApp funnels (lead follow-ups, onboarding, reminders) through workflows and custom code. Today we can automate text and templates but not voice. Voice therefore remains a manual, agent-only channel and cannot scale.
  • Voice notes are a first-class message type in the WhatsApp Cloud API. The missing piece is on HubSpot’s API side.
  • The workarounds (sending a link to a hosted audio file, or sending audio as a document) look unprofessional to the recipient and do not render as a voice note.