This repository contains the custom data feeds supporting the DHIS2 to ArcGIS webapp that creates a near-real time connection between DHIS2 data and ArcGIS Enterprise.
To use this repository, you will need a DHIS2 instance and an ArcGIS named user account in ArcGIS Enterprise. For additional information on ArcGIS access, DHIS2 users can explore Esri’s offerings here.
The DHIS2 to ArcGIS connection app can be accessed through the DHIS2 App Hub.
See the documentation about implementing the app DHIS2 to ArcGIS Connector Documentation.
ArcGIS is a comprehensive geographic information system (GIS) developed by Esri that enables users to create, manage, analyze, and share spatial data. ArcGIS delivers industry-leading mapping and analytics to your infrastructure and the cloud. It provides powerful tools for mapping and visualizing data, uncovering patterns, and making data-driven decisions across sectors such as health, environment, urban planning, logistics, and more.
ArcGIS includes a suite of products that work across desktop, web, mobile, and enterprise environments—such as ArcGIS Online, ArcGIS Pro, and ArcGIS Enterprise—allowing users to build interactive maps, dashboards, and geospatial applications. Whether used for field data collection, real-time monitoring, or predictive modeling, ArcGIS supports evidence-based planning and collaboration with location intelligence at its core.
ArcGIS Enterprise is Esri’s comprehensive geospatial platform designed for organizations that need to manage, analyze, and share spatial data securely within their own IT environment. It includes powerful tools for mapping, data visualization, spatial analytics, and collaboration. Built on a scalable architecture, ArcGIS Enterprise supports advanced workflows, real-time data integration, and customizable apps—all while maintaining control over data privacy, infrastructure, and user access.
This app allows DHIS2 users to leverage their data in the ArcGIS system using a direct connection to an ArcGIS Enterprise instance that maintains data hosting in their DHIS2 instance. The app uses a no-code interface to allow for seamless interoperability. The connection is formed through custom data feeds (CDF). Custom data feeds allow you to access and use data from data sources that are not natively supported with ArcGIS. Data from custome data feeds can be served to web clients, desktop apps, and field apps as read-only feature services.
For more information about custom data feeds, view the documentation. View the GitHub repository for the DHIS2 to ArcGIS App.
DHIS2 is a free and open-source platform for collecting, reporting, analyzing and disseminating aggregate and individual-level data. Most commonly used for health data, DHIS2 can be implemented for individual health programs or as a national-scale health management information system. Officially recognized as a Digital Public Good, DHIS2 is also used in sectors such as education, logistics, sanitation, and land management, among others.
DHIS2 is widely used globally, particularly in low-resource settings, to strengthen health and other information systems and improve data-driven decision-making. Its open-source nature, flexibility, and scalability make it a valuable tool for managing data and improving outcomes. Looking ahead, the use cases of DHIS2 are expanding to education, land administration, and logistics. For full DHIS API Documentation and use please visit: (https://docs.dhis2.org/en/home.html)
Before you can get started with the DHIS2 CDF Providers, you must have access to the following
- ArcGIS Enterprise Base Deployment (11.3 or higher)
- Access to the hosting server of ArcGIS Enterprise Base Deployment as an admin
In order to use the DHIS2 CDF providers, you must install Custom Data Feeds onto your ArcGIS Server Machine and install the ArcGIS Enterprise SDK on your development machine.
Complete instructions for installing Custom Data Feeds are available in the ArcGIS Developer Documentation.
In general, you install Custom Data Feeds by:
- Install the ArcGIS Server Custom Data Feeds Runtime on each machine in your ArcGIS Server site.
- Install the ArcGIS Enterpise SDK on your development machine. Make sure that the optional CDF command line tool (CDF CLI) is installed.
- Ensure that the version of Node.js on your machine is compatible with your version of ArcGIS Enterprise.
- Ensure that the CDF CLI is installed by running
clf -h.- If you see a "command not found" error, you may need to activate the CDF CLI.
After installing the ArcGIS Server Custom Data Feeds runtime and setting up your development machine, you must configure your providers.
-
Create your Custom Data App on your Development Machine
- Open a command prompt and navigate to the directory where you will configure your DHIS2 Custom Data Feed providers.
- Run the command
cdf createapp <app-name>.
-
Install the dhis2 Custom Data Feed Providers
- In the command prompt, navigate to the new directory created by the CDF CLI. This directory should matched what you passed as
<app-name> - Create a new directory named
providersand navigate to it in your command prompt - Clone this repo into the
providersdirectory e.g. (be sure to include ".")git clone https://github.com/ArcGIS/dhis2-custom-data-feeds.git .- Your
providersdirectory should now contain a sub directory for each DHIS2 cdf provider.
- Your
- In your command prompt navigate to each provider directory (e.g.
analytics) and run the commandnpm install
- In the command prompt, navigate to the new directory created by the CDF CLI. This directory should matched what you passed as
-
Configure the Providers
-
Open your CDF App directory in your IDE of choice
-
Go the
configdirectory create a new file nameddefault.json -
Open
default.jsonand add the following:{ "DHIS2_KEY": "YOUR_ACCESS_TOKEN", "DHIS2_API": "DHIS2_API_URL" }Be sure to set
DHIS2_APIas the full base url to your DHIS2 instance's Web API e.g.https://<your-dhis2-instance>/dhis/api/40
-
- In your command prompt, stop the node server if it is running.
- In your command prompt, navigate to the directory created by the CDF
createappcommand - For each provider, run the command
cdf export <provider-name>. The<provider-name>is the name of the provider's directory e.ganalytics - For each provider you should now see a file named
<provider-name>.cdpke.g.analytics.cdpk - Register your custom data feed providers with ArcGIS Enterprise as described in the ArcGIS Custom Data Feeds documentation.
These providers are intended to be used with the DHIS2 ArcGIS Connector application.
Find a bug or want to request a new feature? Please let us know by submitting an issue.
Esri welcomes contributions from anyone and everyone. Please see our guidelines for contributing.
Copyright 2025 Esri
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
A copy of the license is available in the repository's license.txt file.