Skip to main content
Messages are the individual units of communication in Heymarket. A message can be an outbound SMS, MMS, email, broadcast, scheduled send, inbound reply, or private internal comment. Every message belongs to a conversation. Outbound messages are sent from an inbox and attributed to a sender member.

Send targets

The message send endpoint supports several target patterns. Choose the target that matches your workflow.
TargetUse when
phone_numberSending an individual SMS or MMS to a phone number.
chat_idReplying inside an existing conversation.
list_idBroadcasting to a contact list.
targetsSending group MMS to multiple phone numbers.
Email uses a separate endpoint: POST /v1/email/send. For a new email conversation, provide email targets with to: or cc: prefixes. To reply in an existing email conversation, provide convo_id.

Message content

Message content can come from:
  • text for a direct message body.
  • template_id for a saved template.
  • media_url for a public media attachment.
Use private: true only as a behavior flag for an internal comment visible to your team. When sending to a list, include a unique local_id so the send can be tracked consistently. A local_id is also useful for retry-sensitive sends and webhook reconciliation when your integration needs its own stable identifier.

SMS, MMS, and email

Use POST /v1/message/send for SMS, MMS, broadcasts, and private comments. Use POST /v1/email/send for email messages. MMS requires a publicly accessible media_url. Carrier limits can affect supported file size and delivery behavior.

Scheduled messages

Scheduled messages are queued for a future send time. Use scheduled sends when a workflow needs delayed delivery or campaign timing. Scheduled messages can be retrieved, updated, or deleted before they are sent.

Send a message

Follow the first-message workflow.

Messages reference

Review message send fields and examples.

Email send reference

Review email-specific target fields.