An API to access GermanZero.
GermanZero uses a handful of tools (like a Chat and a Wiki) which are used by its members to organize themselves. This API allows to add new members to all of these systems and add them to a matching group.
Since there will be a big announcement in december, we expect a larger number of people leaving their data on our website. We want to store this data in a first step in our CRM system. CiviCRM is specialized on organizations like GermanZero, and suports memberships, events, donations and so on.
Our focus is therefore on the POST /contacts
route for now.
Next step will be provide functionality on the website to help users to find the member of the Bundestag from their electoral district.
You're very welcome!
Add issues, or event pull requests or just get in touch to talk about making things better or easier!
To install this software first you need to have:
- A running instance of CiviCRM
- Node.js >= 12.13.0 installed
Then you should
- Clone the repository
git clone https://github.com/GermanZero-de/api.git
- Change to the new folder
cd api
- Install dependencies:
npm install
- Generate keys by running
node create-keys
- Create an
.env
file by copying.env-sample
and fill out all values (use the keys from the step before) - Run the server by calling
npm start
It is also possible to use our docker image but you need to specify all environment variables like described in .env-sample
.