How we built our cloud based physician portal web, mobile and HL7 Interface engine – 01

AZ-Tech Radiology is one of the leading medical imaging organization that provides the highest quality imaging services utilizing state-of-the-art equipment and technologies in Arizona.  Our primary goal is “Keeping the referring physician happy”, all roads lead to the ease of delivery of “radiology reports” to them and their sending of orders to the lab”

In order to meet the goal, we have to have state of the art technological solution which drove us to build the new cloud based connected IT systems:

  1. Radiology Information System
  2. HL7 Interface Engine which connects all of our modalities, external EMR and Insurance companies, pushing data to the cloud in a secure manner.
  3. Promotional Website @
  4. Physician Portal to delivering the reports @
  5. Physician mobile app @

In this blog post I would like to share the Architecture we came up with which powers our IT systems.

HL7 Interface of our Modalities (Imaging equipment) with RIS



Industry standard HL7 messages going out from RIS & coming in to Helen RIS

ADT A28 Add person information
ADT A31 Update person information
ORM O01 Order message
ORU R01 Unsolicited transmission of an Observation message
SIU S12 Notification of new appointment booking
SIU S14 Notification of appointment modification
SIU S15 Notification of appointment cancellation

End-to-end HL7 interface engine – on-prem to cloud connectivity


Industry standard HL7 messages going out from RIS & coming in to Helen RIS

  1. Available On Web And Mobile
  2. Highly Secure With Two Factor Authentication
  3. Immediate Near Real Time Access To Reports
  4. Text/Email Notification When Stat Report Is Ready
  5. Reports Can Be Searched By Dob, Patient Name, Date Etc.
  6. Reports Can Be Filtered By Stat
  7. Lightning Fast Free Text (Natural Language) Search Against Reports Powered By Elasticsearch & Lucene Index
  8. Cross The Border – (we call Inter State) : Multi Location Clinics Can Search Reports /Patients Across Their Locations Served
  9. Cross The Border – (we call Inter Country) : Providers Can View Reports Of Other Providers With Online Consent
  10. Reports In Hl7 Format Can Be Exported To Import Into Their EHR System
  11. Orders Can Be Placed Online – Hl7 Upload And Forms Based Upload
  12. High Resolution Diagnostic Images Can Be Viewed Online Without Any Client Tools Installation.
  13. Real-Time Analytics / Kpi Dashboard For Clinic Administrators
  14. Create And Manage Your Users & Roles Online
  15. View Who Did What, When?
  16. Free Integration With our partner’s EHR / EMR Software’s For Orders And Reports
  17. HIPAA Compliance ready


End result

After we implemented the solutions in phased manner starting from Jan 2018 uptil now, following are the benefits we gained

  1. Average speed of our report delivery time reduced from days to minutes
  2. Cost of the delivery of reports reduced multi-fold otherwise we enagened half a dozen employees faxing the reports to the physician office manually
  3. We can deliver the reports to physican hands thru our mobile solution
  4. We automated the sending of Fax (reports) to the clinics who still needs paper copy of the reports
  5. Customer satisfaction thru enhanced user experience in the form of simple to use web and mobile application
  6. Powers 1000’s of reports per day with ability to auto-scale to handle more reports in the future

RESTful API 10 Best Practices I follow

Following are the SILVER BULLETS when I create REST APIs. These were originally published here in the year 2014 and the credits goes to them but my true salute goes to OMAR AL ZABIR who published with sample source in C# in his blog post Build Truly RESTful API and Website using Same ASP.NET MVC Code way back in 2012 where he talked about RESTful services naming conventions and leveraged the Controllers  from ASP.NET MVC exported as REST API without using API.NET WEB API using content negotiation and http header (point # 5 below)



  1. Use nouns but no verbs
  2. GET method and query parameters should not alter the state
  3. Use plural nouns
  4. Use sub-resources for relations
  5. Use HTTP headers for serialization formats
  6. Use Hypermedia as the Engine of Application State (HATEOAS)
  7. Provide filtering, sorting, field selection and paging for collections
  8. Version your API
  9. Handle Errors with HTTP status codes
  10. Allow overriding HTTP method

Do not end here but head over to the above mentioned two blog posts to gain the internals.