Difference between revisions of "API Method PatientDirectMessageSend"
From Updox API
(→Code Samples) |
|||
Line 25: | Line 25: | ||
{ | { | ||
"to": "dublin@direct.updoxqa.com", | "to": "dublin@direct.updoxqa.com", | ||
− | "subject": "Test | + | "subject": "Test Subjec", |
"textMessage": "Test message body", | "textMessage": "Test message body", | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
"patientDemographics": { | "patientDemographics": { | ||
"patientId": "100030", | "patientId": "100030", | ||
Line 70: | Line 39: | ||
"applicationId": "updox", | "applicationId": "updox", | ||
"applicationPassword": "password", | "applicationPassword": "password", | ||
− | "accountId": " | + | "accountId": "updox_acct", |
− | "userId": " | + | "userId": "updox_user" |
} | } | ||
− | } | + | } |
==== Response ==== | ==== Response ==== | ||
{ | { | ||
− | + | "successful": true, | |
− | + | "responseMessage": "OK", | |
− | + | "responseCode": 2000, | |
− | + | "recipient": "contact:227735", | |
− | + | "name": "dublin@direct.updoxqa.com", | |
− | + | "directAddress": "dublin@direct.updoxqa.com", | |
− | + | "reason": null, | |
− | + | "messageId": 252274, | |
− | + | "patientDirectAddress": "ptacct+227734@direct.updoxqa.com" | |
} | } | ||
− | |||
== Error Codes == | == Error Codes == | ||
In addition to the [[General Error Set]], this method may return: | In addition to the [[General Error Set]], this method may return: |
Latest revision as of 16:41, 3 December 2013
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/PatientDirectMessageSend"; 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 Subjec", "textMessage": "Test message body", "patientDemographics": { "patientId": "100030", "firstName": "Jane", "middleName": "", "lastName": "Doe", "dateOfBirth": "1990-10-10", "gender": "F", "emailAddress": "" }, "auth": { "applicationId": "updox", "applicationPassword": "password", "accountId": "updox_acct", "userId": "updox_user" } }
Response
{ "successful": true, "responseMessage": "OK", "responseCode": 2000, "recipient": "contact:227735", "name": "dublin@direct.updoxqa.com", "directAddress": "dublin@direct.updoxqa.com", "reason": null, "messageId": 252274, "patientDirectAddress": "ptacct+227734@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