n8n-nodes-dhis2
v1.2.4
Published
n8n community node for DHIS2 integration. Push and pull aggregate data, manage organization units, track entities, and run analytics through the DHIS2 Web API.
Maintainers
Keywords
Readme
n8n-nodes-dhis2
n8n community node for DHIS2. Query analytics, push aggregate data, manage tracker events, enrollments, and FHIR interoperability.
n8n is a fair-code licensed workflow automation platform.
Installation
Via n8n UI: Settings → Community Nodes → search n8n-nodes-dhis2 → Install
Via npm:
npm install n8n-nodes-dhis2Credentials
| Field | Description |
|----------|-------------|
| Base URL | Your DHIS2 instance (e.g. https://play.im.dhis2.org/stable-2-43-0) |
| Username | DHIS2 username |
| Password | DHIS2 password |
Demo: https://play.im.dhis2.org/stable-2-43-0 username admin, password district
Resources & Operations
| Resource | Operations | |--------------------|------------| | Analytics | Query | | Data Value Set | Get, Push | | Enrollment | Create, Get | | Event | Create, Get, Get Many | | FHIR | Read Patient, Search Patients, Create Observation, Search Observations | | Organisation Unit | Get, Get Many | | Program | Get, Get Many | | Tracked Entity | Get, Get Many |
Example: Query Analytics
Resource: Analytics
Operation: Query
Dimension: dx:Uvn6LCg7dVU;ou:ImspTQPwCqd;pe:LAST_12_MONTHSReturns each row as a flat object: { dx, ou, pe, value }. All three dimensions are required by the DHIS2 Analytics API.
Note: Analytics tables must be built before querying. Run Data Administration → Analytics Tables → Start export on your instance if you get a 409 error.
Compatibility
- DHIS2: 2.39+ (Tracker API v2), 2.38+ for FHIR
- n8n: 1.0+
- Node.js: 22+
API Reference
GET /api/analytics.json?dimension=dx:X&dimension=ou:Y&dimension=pe:Z
GET /api/dataValueSets.json?dataSet={id}&orgUnit={id}&period={p}
POST /api/dataValueSets.json
POST /api/tracker (event + enrollment create)
GET /api/tracker/enrollments/{id}
GET /api/tracker/events/{id}
GET /api/tracker/events?program={id}&orgUnit={id}
GET /api/tracker/trackedEntities/{id}
GET /api/tracker/trackedEntities?trackedEntityType={id}&orgUnit={id}
GET /api/organisationUnits/{id}.json
GET /api/organisationUnits.json
GET /api/programs/{id}.json
GET /api/programs.json
GET /fhir/Patient/{id}
GET /fhir/Patient?{param}={value}
POST /fhir/Observation
GET /fhir/Observation?patient={ref}Resources
- DHIS2 Documentation
- DHIS2 Web API Guide
- n8n Community Nodes
- n8n-nodes-openmrs OpenMRS FHIR integration
- n8n-nodes-rapidpro RapidPro messaging
Contributing
- Fork the repository
- Create a feature branch:
git checkout -b feat/your-feature - Commit:
git commit -m 'feat(dhis2): your change' - Push and open a Pull Request
Support
- Issues: GitHub Issues
- n8n Community: community.n8n.io
License
MIT © 2026 Monfort Brian N. | 宁俊
Acknowledgments
Built to bridge clinical systems and national health information infrastructure. Part of an open-source interoperability stack for outbreak response and healthcare orchestration across low-resource settings.
