Message
A Message is an SMS or email delivery of a Form, Packet, or PDF Document to a Patient. This is how intake actually gets sent. It's the resource your integration creates to kick off the flow described in Common EHR integration patterns.
Key fields
| Field | Notes |
|---|---|
id | Read-only |
patient | Recipient |
form / packet / document | Exactly one must be set, what's being sent |
message_type | form_response_request, packet_response_request, or reminder |
target_email / target_phone | Override the patient's stored contact info, if needed |
preferred_delivery_method | email or sms |
delivery_method_used | Read-only, which method was actually used |
is_waiting | true if the message hasn't gone out yet (e.g., scheduled) |
status | Read-only delivery status |
message_code | Read-only, the short code/link identifier the patient uses to open the form |
reminders | Read-only, history of reminder sends for this message |
scheduled_at | Set to schedule delivery instead of sending immediately |
scheduled_message | Read-only nested object once scheduled, its own status (pending, processing, completed, failed, cancelled, already_sent) |
response / packet_response | Populated by Zentake once the patient completes what was sent. Writable only when creating a reminder, where exactly one of them identifies the outstanding response. Ignored on any other create or update |
Lifecycle
- Your integration (or dashboard user) creates a Message with a Patient
and a Form, Packet, or Document, either to send now or with
scheduled_atset for later. - Zentake delivers it by SMS or email and tracks
statusanddelivery_method_used. - Reminders are sent for an existing message, never as a new one. To send
a reminder,
POST /v2/messageswithmessage_type: "reminder"and exactly one ofresponseorpacket_responseidentifying the outstanding response. The patient receives their original link, the response body is the original message, and the send is appended to that message'sremindershistory. - Once the patient completes the linked Form/Packet, the Message's
response/packet_responsefields point at the resulting submission. - A scheduled Message can be updated or cancelled before it goes out via the scheduled-message endpoint.
This is the send side
Message is how intake goes out to the patient. What comes back is a Response or Packet Response, Message is not intake data itself.