API Method PatientDirectMessageSend
From Updox API
An outbound direct message method which sends a message from the supplied patient to the supplied direct address. If the "from" field is not provided the patient ID in the form "patient:{patient ID}", then the patientDemographics object must be passed in to define the patient sending the message.
Contents |
Fields
Please refer to the Interactive API for a list of the fields for this method.
Code Samples
Language | Source Code Examples |
---|---|
C# | |
Java |
public void TalkToUpdox() throws Exception { String uri = "https://updoxqa.com/io/DirectSimpleSend"; ObjectMapper mapper = new ObjectMapper(); Map<String,Object> messageData = BuildMessage(); String jsonData = mapper.writeValueAsString(messageData); HttpResponse httpResponse = SendReceiveJSON(jsonData, uri); HttpEntity responseEntity = httpResponse.getEntity(); String response = EntityUtils.toString(responseEntity); JsonNode actualObj = mapper.readTree(response); System.out.println(actualObj.get("responseCode")); System.out.println(actualObj.get("responseMessage")); } private Map<String,Object> BuildMessage() throws Exception { Map<String,Object> messageData = new HashMap(); messageData.put("to","dublin@direct.updoxqa.com"); messageData.put("subject","Test Subject"); messageData.put("textMessage","Test message body"); Map<String,String> patientDemographics = new HashMap(); patientDemographics.put("patientId", "100030"); patientDemographics.put("firstName", "Jane"); patientDemographics.put("middleName", ""); patientDemographics.put("lastName", "Doe"); patientDemographics.put("dateOfBirth","1990-10-10"); patientDemographics.put("gender","F"); patientDemographics.put("emailAddress",""); messageData.put("patientDemographics", patientDemographics); Map<String,String> authData = new HashMap(); authData.put("applicationId", "updox"); authData.put("applicationPassword", "password"); authData.put("accountId", "updox_acct"); authData.put("userId", "updox_user"); messageData.put("auth", authData); return messageData; } private HttpResponse SendReceiveJSON(String jsonData, String uri) throws Exception { HttpClient httpClient = new DefaultHttpClient(); HttpResponse response = null; StringEntity params = new StringEntity(jsonData); try { HttpPost request = new HttpPost(uri); request.addHeader("content-type", "application/json"); request.setEntity(params); response = httpClient.execute(request); } catch (Exception ex) { // handle exception here } finally { httpClient.getConnectionManager().shutdown(); } return response; } |
Sample Request and Response
Request
{ "to": "dublin@direct.updoxqa.com", "subject": "Test subject", "textMessage": "Test message body", "attachments": [ { "params": { "patientDemographics": { "emailAddress]": "", "gender]": "F", "dateOfBirth]": "1990-10-10", "lastName]": "Doe", "middleName]": "", "firstName]": "Jane", "patientId]": "100030" } }, "content": "CgoKCgoKCgoKCgoKCgoKCgoKCgoKVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1Qg VEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRF U1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lT QVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJ U0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1Qg VEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRF U1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lT QVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJ U0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1Qg VEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRF U1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lT QVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJ U0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1Qg VEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1QgVEhJU0lTQVRFU1Qg", "mimeType": "text/plain", "fileName": "test.txt" } ], "patientDemographics": { "patientId": "100030", "firstName": "Jane", "middleName": "", "lastName": "Doe", "dateOfBirth": "1990-10-10", "gender": "F", "emailAddress": "" }, "auth": { "applicationId": "updox", "applicationPassword": "password", "accountId": "605", "userId": "605" }
}
Response
{ successful: true responseMessage: "OK" responseCode: 2000 recipient: "contact:227161" name: "test@direct.updoxqa.com" directAddress: "test@direct.updoxqa.com" reason: null messageId: 249599 patientDirectAddress: "ptacct+227163@direct.updoxqa.com" }
Error Codes
In addition to the General Error Set, this method may return:
- 4640: direct address error: invalid direct address
- 4641: direct address error: no direct address found for this user
- 4650: direct error: send failed
- 4651: direct error: send failed and/or invalid direct address
- 4652: direct error: either from or patientDemographics is required