Press enter to see results or esc to cancel.

How to Integrate a 3rd Party CRM System with Clinicea

Introduction:

Sometimes when you come on board Clinicea, you may already be using a 3rd Party CRM Software. While it is ideal to use 1 single system, but in practicality you may need to continue using multiple systems to ensure existing workflows and personnel are not impacted by changes in your technology setup. To achieve this, all such disparate systems need to to be in sync i.e. integration between them is required, so that data flows in and out seamlessly. In this guide we will review how to achieve this integration

So for the purpose of pulling out data from Clinicea, there will be 3 API calls you need to plugin in to. The 3 API calls required are as follows.

  1. getLeads
  2. getPatients
  3. getAppointments
  4. getPatientPackages (optional)

Let’s get down to the details of both this API calls one by one.

1. getLeads

This API method is accessible through Lead Controller. This a GET method. The method will return the details of all the Leads that have been created or modified from the particular sync date.The data will return the first 100 rows for from that sync date.

Authorization: The API role must have the necessary CRM permissions enabled in the Clinicea Application.

Details:

Parameter Description Type
lastSyncDate Last Sync date after which you want to retrieve New or Updated Leads .This is the date from which you want the data to be retrieved from the database and synced with your software. So, for example if you pass the last sync date as 2018-01-01, it retrieve all those data from the 1st of Jan, 2018 till today‚Äôs date. Format should be an ISO 8601 notation in UTC ex: “2015-03-21T14:30:10”. This a STRING value.
intPageNo By default it is 1. #100 rows are returned per page. You need to iterate by calling this method again with increasing page numbers ex: 1, 2, 3 This is an Integer value


Possible Responses:

Status Response HTTP Code
Leads data is found for the request A JSON object which will return the Leads details for date range ¬

200

Leads data is not found for the request No content 204

¬


2. getPatients

This API method is accessible through Patient Controller. This a GET method. The method will return the details of the Patients that have been created or modified from the given date.The data will return the first 100 rows for from that sync date.

Authorization: The API role must have the necessary EMR permissions enabled in the Clinicea Application.

Details:

Parameter Description Type
lastSyncDate Last Sync date after which you want to retrieve created or modified Patients .This is the date from which you want the data to be retrieved from the database and synced with your software. So, for example if you pass the last sync date as 2018-01-01, it retrieve all those data from the 1st of Jan, 2018 till today‚Äôs date. Format should be an ISO 8601 notation in UTC ex: “2015-03-21T14:30:10”. This a STRING value.
intPageNo By default it is 1. #100 rows are returned per page. You need to iterate by calling this method again with increasing page numbers ex: 1, 2, 3 This is an Integer value


Possible Responses:

Status Response HTTP Code
Patient data is found for the request A JSON object which will return the Patients details for date range ¬

200

Patient data is not found for the request No content 204

¬


3.¬
getAppointments

This API method is accessible through Appointment Controller. This a GET method. The method will return the Appointment details for the Patients from a particular date. This will include the data related to the new as well as updated Appointments. The data will return the first 100 rows for from that sync date.

Authorization: The API role must have the necessary Calendar permissions enabled in the Clinicea Application.

Details:

Parameter Description Type
lastSyncDate Last Sync date after which you want to retrieve New or Updated, or Deleted Appointments.This is the date from which you want the data to be retrieved from the database and synced with your software. So, for example if you pass the last sync date as 2018-01-01, it retrieve all those data from the 1st of Jan, 2018 till today‚Äôs date. Format should be an ISO 8601 notation in UTC ex: “2015-03-21T14:30:10”. This a STRING value.
intPageNo By default it is 1. #100 rows are returned per page. You need to iterate by calling this method again with increasing page numbers ex: 1, 2, 3 This is an Integer value


Possible Responses:

Status Response HTTP Code
Appointment data is found for the request A JSON object which will return the Appointment details for date range ¬

200

Appointment data is not found for the request No content 204

¬

¬

4. getPatientPackages

This API method is accessible through PatientPackageController . This a GET method. The method will return the details of the packages assigned to Patients that have been created or modified from the given date.The data will return the first 100 rows for from that sync date.

Authorization: The API role must have the necessary Financial permissions enabled in the Clinicea Application.

Details:

Parameter Description Type
lastSyncDate Last Sync date after which you want to retrieve created or modified Patient Packages.This is the date from which you want the data to be retrieved from the database and synced with your software. So, for example if you pass the last sync date as 2018-01-01, it retrieve all those data from the 1st of Jan, 2018 till today‚Äôs date. Format should be an ISO 8601 notation in UTC ex: “2015-03-21T14:30:10”. This a STRING value.
intPageNo By default it is 1. #100 rows are returned per page. You need to iterate by calling this method again with increasing page numbers ex: 1, 2, 3 This is an Integer value


Possible Responses:

Status Response HTTP Code
Patient Package data is found for the request A JSON object which will return the Patients details for date range ¬

200

Patient Package data is not found for the request No content 204

¬

If you want to push data from your system into Clinicea, the following are the¬ API calls you need to plugin in to.

  1. postAppointmentByPatientID
  2. postAppointment
  3. postLead
  4. postPatient

1.¬ postAppointmentByPatientID

This API method is accessible through Appointment Controller. This a POST method. This is useful when the patient already exists in the system and you need to create an appointment for that patient.

Authorization: The API role must have the necessary permissions enabled in the Clinicea Application.

Details:

Parameter Description Type
clinicID ID of the clinic for which the appointment will be created. This is a mandatory value This is a STRING value.
clinicName The ID of the clinic for which the appointment needs to be booked. This is a mandatory value This is a¬ String¬ value
appointmentDate The date for which the Appointment will be booked. Format should be an ISO 8601 notation in UTC ex: 2015-03-21T14:30:10. This is a mandatory value This is a¬ String value
appointmentStartTime The time when the Appointment will start. The format hh:mm. This is a mandatory value This is a¬ String value
duration Appointment duration in minutes. This will be an String value.This is a mandatory value This is a¬ String value
patientID ID of the patient against whom you need to create an appointment. This is a mandatory value This is a¬ String value
staffID Staff ID against whom the Appointment will be booked. This is a¬ String value
staffName The name of the Staff This is a¬ String value
resourceName The Resource Name for which the Appointment needs to be booked.Please note either the combination of StaffID and Staff Name or Resource Name is mandatory. This is a¬ String value
serviceID Appointment can be associated with services. If you want a service to be linked with the appointment, then provide a valid service ID. This is a¬ String value

¬

Possible Responses:

Status Response HTTP Code
Appointment is successfully created on the Clinicea Calendar A JSON object which will return the Appointment details that has been created ¬

200

Appointment could not be created successfully Error message explaining why appointment could not be created. 400

¬

¬

2. postAppointment

This API method is accessible through Appointment Controller. This a GET method. In case a patient was not found , then this method will be used to create a new patient and an appointment along with it.

Authorization: The API role must have the necessary permissions enabled in the Clinicea Application.

Details:

Parameter Description Type
clinicID ID of the clinic for which the appointment will be created. This is a mandatory value This is a STRING value.
clinicName The ID of the clinic for which the appointment needs to be booked. This is a mandatory value This is an String¬ value
appointmentDate The date for which the Appointment will be booked. Format should be an ISO 8601 notation in UTC ex: 2015-03-21T14:30:10. This is a mandatory value This is a¬ String value
appointmentStartTime The time when the Appointment will start. The format hh:mm. This is a mandatory value This is a¬ String value
duration Appointment duration in minutes. This will be an String value.This is a mandatory value This is a¬ String value
patientFirstName The Last Name of the Patient for whom the Appointment will be booked.This is a mandatory value This is a String value
patientLastName The Last Name of the Patient for whom the Appointment will be booked. This is a mandatory value This is a¬ String value
patientMobileNo The mobile phone number of the patient. Enter only the mobile number excluding the country code. This is a mandatory value This is a¬ String value
patientDateofBirth The date of birth of the patient. Format should be an ISO 8601 notation in UTC ex: 2015-03-21. This is a mandatory value This is a¬ String value
patientEmailAddress The email address of the patient. This is a mandatory value This is a¬ String value
Gender Enter M for male and F for female This is a¬ String value
staffID Staff ID against whom the Appointment will be booked. This is a¬ String value
staffName The name of the Staff This is a¬ String value
resourceName The Resource Name for which the Appointment needs to be booked.Please note either the combination of StaffID and StaffName or ResourceName is mandatory. This is a¬ String value
serviceID Appointment can be associated with services. If you want a service to be linked with the appointment, then provide a valid service ID. This is a¬ String value

¬
Possible Responses:

Status Response HTTP Code
Appointment is successfully created on the Clinicea Calendar A JSON object which will return the Appointment details that has been created ¬

200

Appointment could not be created successfully Error message explaining why appointment could not be created. 400

¬

3. postLead

This API method is accessible through Lead Controller . This a Post¬ method. This allows you to insert new leads in Clinicea

Authorization: The API role must have the necessary CRM & Call Center permissions enabled in the Clinicea Application.

Details:

Parameter Description Type
strClinicID ID of the clinic where you want to insert the lead. This is a mandatory value This is a STRING value.
strClinicName Name of the Clinic where you want to insert the Lead.¬ This is a mandatory value This is an String¬ value
name Name of the lead. This is a mandatory value. This is a¬ String value
mobile Enter the mobile phone number. It is a mandatory field. Enter digits only. This is a¬ String value
dob Date of Birth of the Lead.Format should be an ISO 8601 notation in UTC ex: “2015-03-21”. This is a¬ String value
email ¬ Enter the email of the Lead. Format is xyz@abc.com This is a String value
source
Specify Source of Information. For example: Campaigns, Advertisements, Newspapers etc.
This is a¬ String value

¬
Possible Responses:

Status Response HTTP Code
Lead is successfully inserted into Clinicea A JSON object which will return the Appointment details that has been created ¬

200

Lead could not be created successfully Error message explaining why appointment could not be created. 400

¬

4. postPatient

This API method is accessible through Patient Controller . This a Post¬ method. This allows you to insert new Patients in Clinicea

Authorization: The API role must have the necessary¬ permissions enabled in the Clinicea Application.

Details:

Parameter Description Type
strClinicID ID of the clinic where you want to insert the Patient . This is a mandatory value This is a STRING value.
strClinicName Name of the Clinic where you want to insert the Patient .¬ This is a mandatory value This is an String¬ value
name Name of the Patient . This is a mandatory value. This is a¬ String value
FileNo File No. of the Patient in case you want to explicitly add a file number. Else,if blank then file number will be auto generated if the preference is true. This is a¬ String value
mobile Enter the mobile phone number. It is a mandatory field. Enter digits only. This is a¬ String value
dob Date of Birth of the Patient .Format should be an ISO 8601 notation in UTC ex: “2015-03-21”. This is a¬ String value
email ¬ Enter the email of the Patient . Format is xyz@abc.com This is a String value
source
Specify Source of Information. For example: Campaigns, Advertisements, Newspapers etc.
This is a¬ String value

¬
Possible Responses:

Status Response HTTP Code
Lead is successfully inserted into Clinicea A JSON object which will return the Appointment details that has been created ¬

200

Lead could not be created successfully Error message explaining why appointment could not be created. 400

¬