This repository is a web API developed in Python that is responsible for collecting information from the water point database in ethiopia. It contains different endpoints to obtain levels, administrative, watershed, water points and climatology and monitored data of these water points.
Important notes
This web api must be used in conjunction with the models that was developed for the project, which you can find in this repository.
To use the wep api, it is necessary to have an instance of MongoDB running, either locally or on a server that is accessible from the internet.
- Python 3.x
- MongoDB
To use the wep api, it is necessary to have an instance of MongoDB running. It is also recommended to create a virtual environment to work with this project and make sure that the dependencies are installed in the virtual environment instead of the global system.
- Clone the repository
git clone https://github.com/CIAT-DAPA/lswms_webapi.git
- Create a virtual environment
python -m venv env
- Activate the virtual environment
- Linux
source env/bin/activate
- windows
env\Scripts\activate.bat
- Install the required packages
pip install -r requirements.txt
- Running api
python wpapi.py
The parameters to be configured are found in the config.py
file. This file has information on how to connect to the database, when deploying the web api on a production server these data must be configured as environment variables. Let's see what it has:
Parameter | type | Description |
---|---|---|
DEBUG | boolean | boolean that defines whether you are in a test environment or in production. |
HOST | string | IP or hostname of the server in which is the wep api. By default is: 0.0.0.0 |
PORT | string | Port in which is available the wep api in the server. By default is: 5000 |
CONNECTION_DB | string | utl for connection to the database |