MDLand iClinic Web API Interface

1 - Introduction

The MDLand EHR software platform iClinic v12.3 provides Application Programming Interfaces (APIs) for third-party developers to design applications. These APIs allow authorized clients to query patient health information (PHI) from the MDLand patient database via secure web services.

1.1 - MDLand Web Service URL:

https://api.mdland.com/

1.2 - API Access, Authentication, and Authorization:

A client user must send a request to the iClinic API administrative group to obtain a dedicated user IDs, passwords and clinic IDs:

https://api.mdland.com/UserRequestForm

MDLand patients are grouped by medical clinics and client authentication is authorized through a unique combination of user IDs, passwords and clinic IDs.

After successfully authenticating the user an ephemeral access token is issued and querying permissions are granted until the tokens expiration (30 minutes).

For a client to successfully query and receive a response from the MDLand servers the query must contain an active patient token - granted by the getPatientSearch API call. The MDLand patient database holds every single patient's consent.Searching for a patient who has not consented will return a fatal error.

The response object from each and every API call will be in JSON or XML format.

1.3 - MDLand FHIR API Document:

https://api.mdland.com/Mdland_FHIR_API.html

2 - API Details:

userAuthentication()

Validates a UserID, Password, and ClinicID. Returns an access token to be used with other APIs.

getPatientID()

Validates the access token. Returns one or more patientIDs.

getPatientCCD()

Validates a user's token and PatientID. Returns the requested patient's CCDA-R2.1.

getPatientInfoByCategory()

Validates a user's token and patient ID. Returns the requested patient's information based on the category ID chosen.

3 - Terms of Use:

MDLand International Corporation ("Company", "our", "us")provides the iClinic v12.3 Application Programming Interfaces (API) and the Web Service ("System") to query patient protected health information (PHI), under the framework of meeting the Meaningful Use Stage 3 requirements. This is a legal agreement ("Agreement") between "you" ( the "Software Developer" or "your") and the Company. BY USING THE SYSTEM AND/OR ACCEPTING THIS AGREEMENT, YOU ARE CONSENTING TO BE BOUND BY ITS TERMS. The Company is willing to supply the System and you desire to have access to the System by fully understanding the purpose of this relationship (as defined below).

IF YOU DO NOT AGREE TO THESE TERMS AND CONDITIONS, THEN YOU HAVE NO RIGHT TO ACCESS OR USE THE SITE, SERVICES, OR CONTENT. Company grants Software Developer non-transferable, non-exclusive, revocable, limited license to use the System subject to the terms and conditions of this Agreement. NO RIGHTS SHOULD BE IMPLIED UNLESS THEY ARE EXPRESSLY GRANTED HEREIN BY THE COMPANY.

Documentation of iClinic v12.3 APIs have been made available to Software Developers for development and testing. The Materials are provided to Software Developers as-is with no other warranties expressed or implied. Software Developers may use the documentation with adherence to the below terms and conditions: Use the most up-to-date documentation available on our portal. The Company owns all the materials provided on our portal.

Software Developers will use and disclose PHI that it receives from the MDLand only in compliance with applicable privacy and security requirements, limitations, exceptions, and restrictions of 45 C.F.R. §§160 and 164 and all other applicable Federal and state law and regulations and that it will adopt and enforce appropriate physical, administrative, and technical measures to maintain.

Software Developers are fully responsible for the products they develop. Developers are also responsible for complying with all applicable laws, including not infringing on MDLand's intellectual property rights. You acknowledge that the System is a data transport tool and is not intended to serve as a medical record, and that it is your sole responsibility to establish policies and procedures that ensure that the content of any data accessed through the System is used legally. It is your responsibility to obtain any and all necessary consents and to fulfill any and all obligations that are required by HIPAA, HITECH, or other governmental statute or regulation prior to use, disclosure, or transmission of any Protected Health Information or other data accessed through the System. Some of our published interfaces may require you to license additional functionality or build additional workflows. You are required to contact us so we could deliver the best solution to our mutual customers.

You agree to indemnify, defend, and hold Company, its subsidiaries, officers, employees, agents, contractors, and licensors harmless from and against all claims, damages, and expenses ("Claims") arising out of or related to your use of the System, other than those Claims arising out of or related to the Company's gross negligence, willful misconduct or fraud in providing the System.

Terms of Use last modified on July 17 2018

Appendix A - Category List and Data Structure:

Appendix A.1 - Category List:

  • Patient
  • Medication Allergies
  • Lab Tests
  • Lab Results
  • Medications
  • Problems
  • Goals
  • Immunizations
  • Vital Signs
  • Smoking Status
  • Health Concern
  • Procedures
  • Care Team Member
  • Assessment and Plan of Treatment
  • Implantable Device List

Appendix A.2 - Data Structure:

Category ID
Element
CCDA Values
Comments
01
Patient
Name
Name of Patient.
Sex
Gender of Patient.
Date of Birth
Race
Ethnicity
Preferred Language
02
Medication Allergies
Allergy/Substance
Name of the Allergy.
Allergy type/Allergen
This is mapped with the allergy as per MU requirements.
Reaction
One allergy can have more than one reaction.
Severity
Every reaction will have a severity.
Onset date
Date of onset of allergy.
Date
Effective time when the allergy was first recorded in the application.
Resolved Date
Date when the allergy was resolved.
Status
From the value set.
03
Lab Tests
Test Name
Code and Coding System
Vendor Name
04
Lab Results
Result Type
Result Value
Relevant Reference Range
Interpretation
Test Date
Result Date
Lab Name
Status
From the value set.
05
Medications
Medication
Name of the Medication.
Code and Coding System
Name of the medication.
Directions
SIG.
Refills
Status
From the value set.
Frequency
Used in effective time to represent medication frequency.
Route
Optional.
Dose Quantity
Optional.
Instructions
Or notes.
Start Date
Date when the medication was prescribed.
End Date
Date when the medication was stopped.
06
Problems
Problem
Name of the Problem.
SNOMED Code
Code needs to be displayed on the human readable format.
Status
Current status of the problem.
Date
Date when the problem was added in application.
Date of Onset
Date when the problem first occurred.
Resolved Date
Date when the problem was resolved.
Type
Type of the problem.
07
Goals
Goal
Goal text.
Status
Current status of the goal.
Value
N/A in case it's a string.
Date
Date when the goal was entered.
Author
Can be provider and/or patient.
08
Immunizations
Vaccine
Vaccine for immunization
Code and Coding System
Date
Date when the immunization was entered.
Status
Current status of the immunization.
Route
Optional.
Lot Number
Manufacturer Name
Notes
Notes by the physician after immunization was given.
Dose Quantity
09
Vital Signs
Name
Field name of the vital e.g. Heart Rate for all the 7 fields. Includes:
§ Height
§ Weight
§ Blood Pressure-systolic & Blood pressure- diastolic
§ Heart rate
§ Blood oximetry
§ body temperature
§ respiratory rate
Code and Coding System
Code and Coding System
Date
Date and time when the vital was recorded.
Result
Value of the vital i.e. results.
Unit
Unit of the result.
10
Smoking Status
Current Smoking Status
Description and value.
Code and Coding System
SNOMED code.
Date Observed
Birth Sex
11
Health Concern
Observation
Value mapped with the different elements in EHR.
Status
Optional.
Date
12
Procedures
Code and Coding System
Procedure
Name.
Date
Status
Service Delivery Location
13
Care Team Member
Name
Name of care team members, separate out first name, given name, middle name, etc.
14
Assessment and Plan of Treatment
Assessment
Plan of Treatment
15
Implantable Device List
UDI
Assigning Authority
Device Code
Scoping Entity

Appendix B - Sample Output:

Item Name
Response Object
UserAuthentication
"{\"code\":1,\"message\":\"success.\",\"access_token\":\"fe094b27ad184d4383e8d1fb65f5825a\"}"
GetPatientID
"{\"code\":0,\"patientid\":\"NaE9kn2SvanqvfQ7XWZtCG\"}"
GetPatientCCD
"{\"code\":0,\"patientid\":\"NaE9kn2SvanqvfQ7XWZtCG\"}"
GetPatientID
Document.xml
GetByCategory
Patient
{"Patient":[{"Name":"Newman, Alice Jones","Sex":"Female","Date of birth":"5/1/1970 12:00:00 AM","Race":"White(2106-3)","Ethnicity":"Not Hispanic Or Latino(2186-5)","Preferred language":"en"}]}
Medication Allergies
{"Medication Allergies":[{"Allergy/Substance":"ACE Inhibitors","Allergy type/Allergen":"","Reaction":"","Severity":"","Onset date":"","Date":"","Resolved date":"","Status":"Active"},{"Allergy/Substance":"Acyclovir and Related","Allergy type/Allergen":"","Reaction":"","Severity":"","Onset date":"","Date":"","Resolved date":"","Status":"Active"},{"Allergy/Substance":"Ampicillin 500 MG CAPSULE","Allergy type/Allergen":"","Reaction":"Hives (code- 247472004, SNOMED-CT)","Severity":"Moderate","Onset date":"","Date":"","Resolved date":"","Status":"Active"},{"Allergy/Substance":"Penicillin G Sodium 5000000 UNIT SOLUTION RECONSTITUTED","Allergy type/Allergen":"","Reaction":"Hives (code- 247472004, SNOMED-CT)","Severity":"Moderate","Onset date":"","Date":"","Resolved date":"","Status":"Active"}]}
Lab Tests
{"labResultsTest":[{"Test Name":"Appearance Ur","Code and coding system":"","Vendor Name":"No Lab Tests Information."},{"Test Name":"Color Ur","Code and coding system":"","Vendor Name":"No Lab Tests Information."},{"Test Name":"Glucose Ur Strip-mCnc","Code and coding system":"","Vendor Name":"No Lab Tests Information."},{"Test Name":"Ketones Ur Strip-mCnc","Code and coding system":"","Vendor Name":"No Lab Tests Information."},{"Test Name":"pH Ur Strip","Code and coding system":"","Vendor Name":"No Lab Tests Information."},{"Test Name":"Prot Ur Strip-mCnc","Code and coding system":"","Vendor Name":"No Lab Tests Information."},{"Test Name":"Sp Gr Ur Strip","Code and coding system":"","Vendor Name":"No Lab Tests Information."},{"Test Name":"UA Dipstick Pnl Ur","Code and coding system":"","Vendor Name":"No Lab Tests Information."},{"Test Name":"UA Dipstick Pnl Ur","Code and coding system":"","Vendor Name":"No Lab Tests Information."},{"Test Name":"EKG Study","Code and coding system":"","Vendor Name":"No Lab Tests Information."},{"Test Name":"X Ray Cry UrnS Ql Micro","Code and coding system":"","Vendor Name":"No Lab Tests Information."}]}
Lab Results
{"labResults":[{"Result Type":"string","Result Value":"CLEAR","Relevant Reference Range":"","Interpretation":"","Test Date":"","Result Date":"","Lab Name":"Appearance Ur","Status":""},{"Result Type":"string","Result Value":"YELLOW","Relevant Reference Range":"","Interpretation":"","Test Date":"","Result Date":"","Lab Name":"Color Ur","Status":""},{"Result Type":"double","Result Value":"50","Relevant Reference Range":"","Interpretation":"","Test Date":"","Result Date":"","Lab Name":"Glucose Ur Strip-mCnc","Status":""},{"Result Type":"string","Result Value":"Negative","Relevant Reference Range":"","Interpretation":"","Test Date":"","Result Date":"","Lab Name":"Ketones Ur Strip-mCnc","Status":""},{"Result Type":"double","Result Value":"5.0","Relevant Reference Range":"","Interpretation":"","Test Date":"","Result Date":"","Lab Name":"pH Ur Strip","Status":""},{"Result Type":"double","Result Value":"100","Relevant Reference Range":"","Interpretation":"","Test Date":"","Result Date":"","Lab Name":"Prot Ur Strip-mCnc","Status":""},{"Result Type":"double","Result Value":"1.015","Relevant Reference Range":"","Interpretation":"","Test Date":"","Result Date":"","Lab Name":"Sp Gr Ur Strip","Status":""},{"Result Type":"string","Result Value":"","Relevant Reference Range":"","Interpretation":"","Test Date":"","Result Date":"","Lab Name":"UA Dipstick Pnl Ur","Status":""},{"Result Type":"string","Result Value":"","Relevant Reference Range":"","Interpretation":"","Test Date":"","Result Date":"","Lab Name":"UA Dipstick Pnl Ur","Status":""},{"Result Type":"string","Result Value":"","Relevant Reference Range":"","Interpretation":"","Test Date":"","Result Date":"","Lab Name":"EKG Study","Status":""},{"Result Type":"string","Result Value":"","Relevant Reference Range":"","Interpretation":"","Test Date":"","Result Date":"","Lab Name":"X Ray Cry UrnS Ql Micro","Status":""}]}
Medications
{"medications":[{"Medication":"Tylenol Extra Strength 500 MG TABLET","Code and coding system":"","Directions":"2 tablets (1,000 mg) orally one time","Refills":"","Status":"","Frequency":"","Route":"","Dose Quantity":"2","Instructions":"","Start Date":"","End Date":""},{"Medication":"CefTRIAXone Sodium 100 GM SOLUTION RECONSTITUTED","Code and coding system":"","Directions":"1 Container Injectable Two times daily 1 day(s)","Refills":"","Status":"","Frequency":"","Route":"","Dose Quantity":"2","Instructions":"","Start Date":"","End Date":""},{"Medication":"Aranesp (Albumin Free) 500 MCG/ML","Code and coding system":"","Directions":"1 ml (500 mcg) subcutaneously every 2 weeks","Refills":"","Status":"","Frequency":"","Route":"","Dose Quantity":"1","Instructions":"","Start Date":"","End Date":""}]}
Problems
{"problems":[{"Problem":"Severe Hypothyroidism","SNOMED code":"83986005","Status":"Active","Date":"2006/12/31 0:00:00","Date of Onset":"2006/12/31 0:00:00","Resolved date":"2006/12/31 0:00:00","Type":"Active"},{"Problem":"Overweight (finding)","SNOMED code":"238131007","Status":"Inactive","Date":"2006/12/31 0:00:00","Date of Onset":"2006/12/31 0:00:00","Resolved date":"2006/12/31 0:00:00","Type":"Inactive"},{"Problem":"Essential hypertension","SNOMED code":"59621000","Status":"Active","Date":"2011/10/5 0:00:00","Date of Onset":"2011/10/5 0:00:00","Resolved date":"2011/10/5 0:00:00","Type":"Active"},{"Problem":"Chronic Rejection of Renal Transplant","SNOMED code":"236578006","Status":"Active","Date":"2011/12/31 0:00:00","Date of Onset":"2011/12/31 0:00:00","Resolved date":"2011/12/31 0:00:00","Type":"Active"},{"Problem":"Fever","SNOMED code":"386661006","Status":"Active","Date":"2015/6/22 0:00:00","Date of Onset":"2015/6/22 0:00:00","Resolved date":"2015/6/22 0:00:00","Type":"Active"},{"Problem":"Acute myeloid leukemia with 11q23-abnormality in remission(C92.61)","SNOMED code":"C92.61","Status":"Active","Date":"2018/5/29 21:38:00","Date of Onset":"2018/5/29 21:38:00","Resolved date":"2018/5/29 21:38:00","Type":"Active"}]}
Goals
{"Goals":[{"Goal":"Get rid of intermittent fever that is occurring every few weeks.","Status":"","Value":"N/A","Date":"20150622","Author":""},{"Goal":"Need to gain more energy to do regular activities","Status":"","Value":"N/A","Date":"20150622","Author":""}]}
Immunization
{"immunizations":[{"Vaccine":"88","Code and coding system":"","Date":"2014/5/10 0:00:00","Status":"","Route":"","Lot number":"1","Manufacturer name":"Abbott Laboratories","Notes":"","Dose Quantity":"1"},{"Vaccine":"106","Code and coding system":"","Date":"2012/1/4 0:00:00","Status":"","Route":"","Lot number":"2","Manufacturer name":"Acambis, Inc","Notes":"","Dose Quantity":"2"},{"Vaccine":"166","Code and coding system":"","Date":"2015/6/22 0:00:00","Status":"","Route":"","Lot number":"0","Manufacturer name":"Abbott Laboratories","Notes":"","Dose Quantity":"0"}]}
Vital Signs
{"Vital Signs":[{"Height":"177cm","Weight":"88kg","Blood Pressure-systolic & Blood pressure- diastolic":"145mm[Hg]&88mm[Hg]","Heart rate":"","Blood oximetry":"80/min","body temperature":"38Cel","respiratory rate":"18/min","Code and coding system":"","Date":"2015/6/22 2:52:00","Result":"","Unit":""},{"Height":"177cm","Weight":"88kg","Blood Pressure-systolic & Blood pressure- diastolic":"145mm[Hg]&88mm[Hg]","Heart rate":"","Blood oximetry":"80/min","body temperature":"38Cel","respiratory rate":"18/min","Code and coding system":"","Date":"2015/6/22 2:52:00","Result":"","Unit":""}]}
Smoking Status
{"smokingStatus":[{"Current Smoking status":"Current every day smoker","Code and coding system":"","Date Observed":"2015/6/22 0:00:00","Birth sex":"Female"}]}
Health Concern
{"Health Concern":[{"Observation":"Chronic Sickness exhibited by patient","Status":"","Date":"2015/6/22 0:00:00"},{"Observation":"HealthCare Concerns refer to underlying clinical facts\ni. Documented HyperTension problem\nii. Documented HypoThyroidism problem\niii. Watch Weight of patient","Status":"","Date":"2015/6/22 0:00:00"}]}
Procedures
{"Procedures":[{"Code and coding system":"2.16.840.1.113883.6.12","Procedure":"BODY MASS INDEX DOCD","Date":"2015/6/22 0:00:00","Status":"No Procedures information.","Service delivery location":"No Procedures information."},{"Code and coding system":"2.16.840.1.113883.6.12","Procedure":"CALC BMI ABV UP PARAM F/U","Date":"2015/6/22 0:00:00","Status":"No Procedures information.","Service delivery location":"No Procedures information."},{"Code and coding system":"2.16.840.1.113883.6.96","Procedure":"Introduction of cardiac pacemaker system via vein -","Date":"2015/6/22 0:00:00","Status":"No Procedures information.","Service delivery location":"No Procedures information."},{"Code and coding system":"2.16.840.1.113883.6.96","Procedure":"Nebulizer Therapy -","Date":"2015/6/22 0:00:00","Status":"No Procedures information.","Service delivery location":"No Procedures information."},{"Code and coding system":"No Procedures information.","Procedure":"Cardiac resynchronization therapy implantable pacemaker","Date":"0001/1/1 0:00:00","Status":"No Procedures information.","Service delivery location":"No Procedures information."}]}
Care Team Member
{"Care Team Member":[{"full name":"Tracy, Davis"},{"full name":"Tracy, Davis"}]}
Assessment and Plan of Treatment
{"Assessment and Plan of treatment":[{"Assessment":"Assessment:
i. The patient was found to have fever and Dr Davis is suspecting Anemia based on the patient history. So Dr Davis asked the patient to closely monitor the temperature and blood pressure and get admitted to Community Health Hospitals if the fever does not subside within a day.","Plan of treatment":"Plan of Treatment:
i. Get an EKG done on 6/23/2015.
ii. Get a Chest X-ray done on 6/23/2015 showing the Lower Respiratory Tract Structure.
iii. Take Clindamycin 300mg three times a day as needed if pain does not subside/10
iv. Schedule follow on visit with Neighborhood Physicians Practice on 7/1/2015.

Goals:
a. Get rid of intermittent fever that is occurring every few weeks.
b. Need to gain more energy to do regular activities

HealthConcerns:
a. Chronic Sickness exhibited by patient
b. HealthCare Concerns refer to underlying clinical facts
i. Documented HyperTension problem
ii. Documented HypoThyroidism problem
iii. Watch Weight of patient

"}]}
Implantable Device List
{"Implantable Device List":[{"UDI":"3008F","Assigning authority":"FDA","Device code":"","Scoping entity":"FDA"},{"UDI":"G8417","Assigning authority":"FDA","Device code":"","Scoping entity":"FDA"},{"UDI":"175135009","Assigning authority":"FDA","Device code":"","Scoping entity":"FDA"},{"UDI":"56251003","Assigning authority":"FDA","Device code":"82094008-Lower Respiratory Tract Structure","Scoping entity":"FDA"},{"UDI":"(01)00643169007222(17)160128(21)BLC200461H","Assigning authority":"FDA","Device code":"704708004-Cardiac resynchronization therapy implantable defibrillator","Scoping entity":"FDA"}]}