object
MessageRecipient
Choose how Flownally should find the customer thread: an existing conversation, a known contact, or a channel recipient for first-message sends.
Variants
Use type to choose one of `conversation`, `contact`, `channel`.
ConversationRecipient
conversationContinue a known conversation.
Required: `type`, `conversationId`.
- Name
type- Type
- const
- Description
- Required property.
- Name
conversationId- Type
- string
- Description
- Required property.
Example
conversation
{
"type": "conversation",
"conversationId": "cnv_01HV8Z2JH0Q7K4M9N6P2A1B3C5"
}ContactRecipient
contactSend to a contact identity. Pass channel when the contact has more than one route.
Required: `type`, `contactId`.
- Name
type- Type
- const
- Description
- Required property.
- Name
contactId- Type
- string
- Description
- Required property.
- Name
channel- Type
- MessageRecipientChannel
- Description
- Optional property.
Example
contact
{
"type": "contact",
"contactId": "ctc_01HV8Z2JH0Q7K4M9N6P2A1B3C5",
"channel": "whatsapp"
}ChannelRecipient
channelStart a conversation with a channel-specific recipient identifier.
Required: `type`, `externalId`, `channel`.
- Name
type- Type
- const
- Description
- Required property.
- Name
externalId- Type
- string
- Description
- Channel-specific recipient identifier. For WhatsApp this may be an E.164 phone number; channel adapters normalize provider-specific formats.
- Name
channel- Type
- MessageRecipientChannel
- Description
- Required property.
Example
channel
{
"type": "channel",
"externalId": "string",
"channel": "whatsapp"
}