Difference between revisions of "API Method PracticeCreate"
From Updox API
(→C#) |
|||
Line 9: | Line 9: | ||
== Code Samples == | == Code Samples == | ||
=== Java === | === Java === | ||
− | < | + | <span class="mw-collapsible mw-collapsed" style="width:800px"> |
− | public void | + | public void TalkToUpdox() throws Exception{ |
− | + | ||
String uri = "{{Base url api|practiceCreate|practiceCreate}}"; | String uri = "{{Base url api|practiceCreate|practiceCreate}}"; | ||
+ | {{TalkToUpdox - Java}} | ||
+ | } | ||
{{Json Practice Block - Java}} | {{Json Practice Block - Java}} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
{{Base_Code_for_Consuming_API_Using_Java}} | {{Base_Code_for_Consuming_API_Using_Java}} | ||
− | </ | + | </span> |
+ | </span> | ||
=== C# === | === C# === |
Revision as of 17:45, 19 November 2013
Contents |
Description
The following code samples describe the processes involved in adding a new practice.
Prerequisites
- This API call requires Vendor-level credentials. The credentials should be populated into the
applicationId
andapplicationPassword
fields of theauth
block.
Code Samples
Java
public void TalkToUpdox() throws Exception{
String uri = "https://updoxqa.com/io/practiceCreate";
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("accountId","NewPracticeId"); //required
messageData.put("name","Family Practice"); //required
messageData.put("address1", "94 N. High St");
messageData.put("address2", "Suite 100");
messageData.put("city", "Dublin");
messageData.put("state", "OH");
messageData.put("postal", "43017");
messageData.put("phone", "6147988170");
messageData.put("fax", "6144074411");
messageData.put("directAddress", "practice_direct");
messageData.put("directDomain", "new_practice");
messageData.put("timeZone", "America/Chicago");
messageData.put("websiteAddress", "practice_website");
messageData.put("active","true"); //recommended, defaults to "false"
Map<String,String> authData = new HashMap();
authData.put("applicationId", "vendorId");
authData.put("applicationPassword", "vendorPassword");
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;
}
</span>
C#
public void Test() { string json = new JavaScriptSerializer().Serialize(new { accountId = "NewPracticeId", // required name = "Family Practice", //required address1 = "94 N. High St", address2 = "Suite 100", city = "Dublin", state = "OH", postal = "43017", phone = "6147988170", fax = "6144074411", timeZone = "America/Chicago", websiteAddress = "practice_website", directDomain = "new_practice", directAddress = "practice_direct", active = "true", //recommended, defaults to "false" auth = new { applicationId = "vendorId", applicationPassword = "vendorPassword", accountId = "", userId = "" } }); string url = "https://updoxqa.com/io/practiceCreate"; SendReceiveJSON(json, url); } private void SendReceiveJSON(string json, string url) { var httpWebRequest = WebRequest.Create(url); httpWebRequest.ContentType = "application/json"; httpWebRequest.Method = "POST"; using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream())) { streamWriter.Write(json); streamWriter.Flush(); streamWriter.Close(); var httpResponse = (HttpWebResponse) httpWebRequest.GetResponse(); using (var streamReader = new StreamReader(httpResponse.GetResponseStream())) { var result = streamReader.ReadToEnd(); } } }
Messages
Request JSON
{ "accountId": "NewPracticeId", "name": "NewPracticeName", ... "active": "true", "auth": { "applicationId": "vendorId", "applicationPassword": "vendorPassword" } }
HTTP Response Status
200 OK
Response JSON
{ "successful": true, "responseMessage": "OK", "responseCode": 2000, "accountId": "NewPracticeId", "action": "create" }
Relevant Response Codes
In addition to the General Error Set, this method may return the following values in the responseCode
and responseMessage
fields:
responseCode
|
responseMessage
|
---|---|
4110
|
no practice ID
|
4130
|
account already exists
|
4140
|
web address is already taken
|
4610
|
direct address error: direct address is taken
|
4620
|
direct address error: domain does not match the direct domain for this account
|
4630
|
direct address error: account does not have a direct domain configured
|