Deciding between API and web services

Objective

This document is meant to show the different reasons to choose either the API or web services

API

For the API the external application installs the API jar in their application and could connect to a single OpenMRS database if they had the proper credentials in their runtime properties file

Benefits

  1. The API has more calls than web services and in general will be prioritized for development over the web services

Disadvantages

  1. The external application can only connect to one OpenMRS instance
  2. The external application must be able to run the API jar file

Web Services

For an external application to get or put data into an OpenMRS instance via web services, you have to install the webservices.rest module in the OpenMRS instances and then program the application to make the appropriate calls in JSON or XML format over HTTP to the web services module.

Benefits

  1. Can make calls to different OpenMRS instances easily
  2. Can be used by any application without having to install

Disadvantages

  1.