Für die Darstellung von Karten und Listen über die Freifunk-Communities und andere Anwendungen, z.B. einen Newsfeed-Aggregator, wurde eine API entwickelt. Um die eigene Community aufzunehmen, erstellt man einfach über ein Web-Formular eine JSON-Datei. Diese wird dann irgendwo auf der eigenen Webseite plaziert. Anschließend wird dazu (URL zur JSON-Datei) ein Eintrag zentral im dafür angelegten GitHub-Repository hinterlegt.

Die Community Gera-Greiz wurde dabei bereits als Metacommunity mit den beiden Communities Gera und Greiz definiert. So ist später einmal eine einfache Trennung möglich. Die beiden Files wurden auf unserer Webseite plaziert:

Die JSON-Files sollten immer aktuell an Veränderungen angepaßt werden. Die meisten Parameter sind relativ statisch, Ausnahme ist die Knotenanzahl. Um diese automatisch anzupassen, wurde das Python-Script ffapi.py in /etc/cron.d/hourly auf dem Portalserver erstellt, welches damit stündlich abgearbeitet wird. Dieses Script liest aus der für die Kartenanzeige sowieso vorhandenen Datei /var/www/localhost/htdocs/meshviewer/data/nodes.json die aktuelle Zahl aktiver Knoten aus. Aus der Vorlage /var/www/localhost/htdocs/Base-api.json werden dann die beiden Dateien /var/www/localhost/htdocs/FreifunkGera-api.json und /var/www/localhost/htdocs/FreifunkGreiz-api.json mit den aktuellen Daten erzeugt.