DH Message Results Writeback API

DH Message Results Writeback API

DH Message Results Writeback API

Introduction

The Dialog Health Message Results Writeback API allows external systems to retrieve detailed information about outbound and inbound SMS communications sent through Dialog Health. This API is designed to support seamless integration with third-party platforms, enabling real-time visibility into message delivery outcomes, patient/staff engagement, and campaign performance. Each API response provides a comprehensive snapshot of a message interaction, including:

  1. Message metadata (e.g., message ID, type, status, timestamps)
  2. Recipient details (e.g., patient name, mobile number, identifiers)
  3. Campaign and broadcast context
  4. Delivery status and carrier information
  5. Person miscellaneous fields (e.g., personmisc1–personmisc5)

This writeback functionality is ideal for healthcare organizations and partners who need to synchronize engagement data with EHRs, CRMs, or analytics platforms to drive follow-up actions, reporting, or compliance tracking.


Access

·        HTTP Basic Authentication basic

Endpoints

https://[dialoghealth-server]/dialoghealth-writeback-api/

ApiController

responses

GET /api/responses/{consoleCode}/{startTimestamp}/{endTimestamp}

Parameters
Path Parameters

Name

Description

Required

Pattern

consoleCode

A unique set of letters and numbers automatically assigned to each console upon creating

X

SIDJUL8079

startTimestamp

Start timestamp in YYYY-MM-DD HH:mm:ss format. Note that the time range cannot exceed 1 week.

X

YYYY-MM-DD HH:mm:ss 

endTimestamp

End timestamp in YYYY-MM-DD HH:mm:ss  format. Note that the time range cannot exceed 1 week.

X

YYYY-MM-DD HH:mm:ss 

Info
 All date/time data is accepted and returned in Coordinated Universal Time (UTC). 
Return Type

ApiResponse

Content Type

·        application/json

Responses

Code

Message

Datatype

200

-

ApiResponse

400

-

ErrorResponse

Samples
Sample curl command to send request
$ curl --location --request PUT 'https://[dialoghealth-server]/dialoghealth-writeback-api/api/responses/WEBMAG6745/2023-11-05 00:00:00/2023-11-08 23:59:50' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Basic {credentials}' \
--data ''
Sample response body (json)
{
    "requestId": "e92cc082-5afa-4b9f-b685-48cbe016645b",
    "response": [
        {
"leadMessageSent": null,
"incomingMessage": null,
"outgoingMessageId": "9b37fa8bf1eababadb1fa94ce60860ab",
"outgoingMessageSentDate": "05/06/2026",
"outgoingMessageSentTime": "21:00",
"outgoingMessage": "Wynter Health is currently experiencing an email service outage, which may affect our ability to respond in a timely manner. Please call our office if you need immediate assistance. We appreciate your patience.",
"personName": "Simon Lemon",
"personId": "DH013",
"mobileNumber": "6159737483",
"caregiverName": null,
"caregiverPhone": null,
"messageType": "Message alert sent",
"recipientType": "PATIENT",
"campaignName": null,
"campaignId": null,
"broadcastName": "Email Server Down",
"broadcastId": "6217658c907cec0dbd13c047e29eda5e",
"carrier": "T-Mobile",
"delivered": "true",
"messageStatus": "ACCESSIBLE",
"messageSentBy": "Angela@DialogHealth.com",
"personMisc1": "German",
"personMisc2": "Cigna",
"personMisc3": null,
"personMisc4": null,
"personMisc5": null
},
{
"leadMessageSent": "Wynter Health is currently experiencing an email service outage, which may affect our ability to respond in a timely manner. Please call our office if you need immediate assistance. We appreciate your patience.",
"incomingMessage": "Stop",
"outgoingMessageId": "fb39a51aad0cc6494d9f36f942db9c22",
"outgoingMessageSentDate": "05/06/2026",
"outgoingMessageSentTime": "21:05",
"outgoingMessage": "You will no longer receive messages from Wynter Health. Text WYNTER to resubscribe.",
"personName": "Bradley Cooper",
"personId": "DH009",
"mobileNumber": "6154294252",
"caregiverName": null,
"caregiverPhone": null,
"messageType": "Opt-Out",
"recipientType": "PATIENT",
"campaignName": null,
"campaignId": null,
"broadcastName": null,
"broadcastId": null,
"carrier": "Verizon Wireless",
"delivered": "true",
"messageStatus": "ACCESSIBLE",
"messageSentBy": "System",
"personMisc1": "English",
"personMisc2": "UHC",
"personMisc3": null,
"personMisc4": null,
"personMisc5": null
},
{
"leadMessageSent": null,
"incomingMessage": null,
"outgoingMessageId": "fc23112021a7ba9cdf8e191969a97a2c",
"outgoingMessageSentDate": "05/07/2026",
"outgoingMessageSentTime": "13:05",
"outgoingMessage": "Wynter Health: Our MRI machine is currently unavailable. We will contact you to reschedule or discuss next steps. Thank you for your understanding.",
"personName": "Sami Elliott",
"personId": "DH001",
"mobileNumber": "6159316279",
"caregiverName": "Angela",
"caregiverPhone": "6015732549",
"messageType": "Message alert sent",
"recipientType": "PATIENT",
"campaignName": null,
"campaignId": null,
"broadcastName": "MRI Machine Down",
"broadcastId": "a19fb4521bbe92d9b3b74e21cb495198",
"carrier": "Verizon Wireless",
"delivered": "true",
"messageStatus": "ACCESSIBLE",
"messageSentBy": "Angela@DialogHealth.com",
"personMisc1": "English",
"personMisc2": "BCBS",
"personMisc3": "",
"personMisc4": "",
"personMisc5": ""
            "leadMessageSent": "Wynter Health: Thomas, we're checking in after your recent emergency room visit. We hope you're feeling better. If your symptoms worsen or you have new concerns, please seek care right away or contact your provider. If you were advised to schedule a follow‑up appointment, we encourage you to do so as soon as possible.",
            "incomingMessage": "Thank you!",
            "outgoingMessageId": "4c700b54f524a5948253f24067cb9714",
            "outgoingMessageSentDate": "11/07/2023",
            "outgoingMessageSentTime": "08:32",
            "outgoingMessage": "Wynter Health: Your message has been received and will be reviewed during normal business hours. If this is an emergency, call 911!",
            "personName": " Thomas Smith",
            "personId": "DHD1897",
            "mobileNumber": "5552194675",
            "caregiverName": null,
            "caregiverPhone": null,
            "messageType": "unknown",
            "recipientType": "PATIENT",
            "campaignName": null,
            "campaignId": null,
            "broadcastName": null,
            "broadcastId": null,
            "carrier": "T-MOBILE",
            "delivered": "true",
            "messageStatus": "ACCESSIBLE",
            "messageSentBy": "System",
            "personMisc1": "English",
            "personMisc2": "BCBS",
            "personMisc3": "Active",
            "personMisc4": "",
            "personMisc5": ""
        },
        {
            "leadMessageSent": null,
            "incomingMessage": null,
            "outgoingMessageId": "4b002f5643a227dc3c3bb533b3df7542",
            "outgoingMessageSentDate": "11/07/2023",
            "outgoingMessageSentTime": "08:34",
            "outgoingMessage": "API",
            "personName": "API Failed",
            "personId": "Qyujyuj",
            "mobileNumber": "5555559865",
            "caregiverName": null,
            "caregiverPhone": null,
            "messageType": "Opt-In (UI)",
            "recipientType": "PATIENT",
            "campaignName": null,
            "campaignId": null,
            "broadcastName": null,
            "broadcastId": null,
            "carrier": "C Spire Wireless",
            "delivered": "false",
            "messageStatus": "MESSAGE_REJECTED",
            "messageSentBy": "System",
            "personMisc1": "misc1",
            "personMisc2": "PMisc222",
            "personMisc3": "PMisc333",
            "personMisc4": "PMisc444",
            "personMisc5": "PMisc555"
        }
    ]
}

Models

ApiResponse

Field Name

Type

Description

Format

requestId

String

Unique identifier of the request

-

response

List<Response>

Response list

-

ErrorResponse

Field Name

Type

Description

Format

message

String

Error response message

-

Response

Field Name

Type

Description

Format


leadMessageSent

String

Lead Message Sent

-


incomingMessage

String

Incoming Message

-


outgoingMessageId

String

Outgoing Message ID

4c700b54f524a5948253f24067cb9714


outgoingMessageSentDate

String

Outgoing Message Sent Date

11/07/2023


outgoingMessageSentTime

String

Outgoing Message Sent Time 

08:32


outgoingMessage

String

Outgoing Message

-


personName

String

Person Name

-


personId

String

Person ID

82c7cb13947a4d0f8ad2b4398c32af12


mobileNumber

String

Mobile Number

5555558771


caregiverName

String

Caregiver Name

-


caregiverPhone

String

Caregiver Phone

5555558771


messageType

String

Message Type

Opt-In (UI)


recipientType

String

Recipient Type

PATIENT


campaignName

String

Campaign Name

-


campaignId

String

Campaign ID

82c7cb13947a4d0f8ad2b4398c32af12


broadcastName

String

Broadcast Name

-


broadcastId

String

Broadcast ID

82c7cb13947a4d0f8ad2b4398c32af12


carrier

String

Carrier

-


delivered

String

Delivered

true/false


messageStatus

String

Message Status

MESSAGE_REJECTED


messageSentBy

String

Message Sent By

-


personMisc1

String

Person Misc 1

-


personMisc2

String

Person Misc 2

-


personMisc3

String

Person Misc 3

-


personMisc4

String

Person Misc 4

-


personMisc5

String

Person Misc 5

-


Info
 All date/time data is accepted and returned in Coordinated Universal Time (UTC). 


    • Related Articles

    • DH Persons-Events-Subscription Status Rest API

      Description API allows importing of person and event data immediately to the Dialog Health platform as well as the ability to manage subscription status. Please note: API use is restricted to 250 requests per hour. Access HTTP Basic Authentication ...
    • DH Patient & Visit SOAP API Specifications

      Endpoints http://[dialoghealth-server]/dialoghealth-source-api/soap/DataShare http://[dialoghealth-server]/dh-integration/soap/DataShare Target namespace: https://www.dialoghealth.com/ DataShareSoapBinding getReturnCodeStr POST /GetReturnCodeStr ...
    • DH Trigger SMS API

      Introduction Trigger is a message to one particular person which can be set up for a client and sent on demand as API call. The trigger works only for known patients/employees, who are already registered in Dialog Health database. Triggers can be ...
    • DH Patient and Appointment REST XML API

      Access HTTP Basic Authentication basic Endpoints https://[dialoghealth-server]/dh-integration/rest/ Import Patients' data POST /import/protocall/authbase/{CONSOLE-CODE} Content Type application/xml; charset=utf-8 Parameters Request Body - XML ...
    • DH Send SMS API

      Access HTTP Basic Authentication basic Endpoints https://[dialoghealth-server]/dialoghealth-simplepay-api/ Silent opt-in and message delivery submit POST /submit/{console-code} Parameters Path Parameter Name Description Required Pattern ...