Skip to main content

A geocoding key for self-hosted Dawarich

Dawarich turns your location history into a private map of everywhere you've been. To label those places with real addresses and detect visits, it reverse-geocodes your points through Photon.

The catch for self-hosters: a full planet Photon needs about 95 GB of SSD and, per Photon's own docs, 64 GB of RAM for smooth operation. That's a lot of hardware for a personal timeline. ChibiGeo runs a planet Photon for you — you point Dawarich at it with two environment variables, at a flat monthly rate with no overage.

note

Dawarich Cloud users don't need this. Geocoding is already included. This guide is only for people running Dawarich on their own hardware.

Get a key

The Self-Hoster plan (€9.99/mo) is built for supported self-hosted apps like Dawarich — enough headroom to geocode years of history and keep tracking. Create a key at app.chibigeo.com.

Configuration

Add these to your Dawarich .env (or the environment: block of your docker-compose.yml):

PHOTON_API_HOST=app.chibigeo.com/v1/photon
PHOTON_API_KEY=ck_your_key_here
PHOTON_API_USE_HTTPS=true
VariableValueWhy
PHOTON_API_HOSTapp.chibigeo.com/v1/photonThe host including the /v1/photon path prefix — Dawarich's geocoder interpolates it verbatim onto /api and /reverse
PHOTON_API_KEYyour ck_… keySent as X-Api-Key; authenticates every geocode request
PHOTON_API_USE_HTTPStrueChibiGeo is HTTPS-only

Restart your Dawarich containers to pick up the new environment.

Verifying it works

From the host, confirm the endpoint answers with your key:

# Forward geocode
curl -H "X-Api-Key: ck_your_key_here" \
"https://app.chibigeo.com/v1/photon/api?q=Brandenburg%20Gate&limit=1"

# Reverse geocode (the shape Dawarich's visit detection uses)
curl -H "X-Api-Key: ck_your_key_here" \
"https://app.chibigeo.com/v1/photon/reverse?lat=52.516&lon=13.377&limit=10&radius=1"

Both should return a GeoJSON FeatureCollection with populated properties (name, city, country). In Dawarich, trigger reverse-geocoding for a point or run a visit-detection pass — places should now come back with names instead of blanks.

Troubleshooting

SymptomCauseFix
Places stay unnamedWrong host path or keyConfirm PHOTON_API_HOST includes /v1/photon; re-check the key
Silent geocode skipsMonthly cap reached (429), rescued by Dawarich's fetcherWatch usage in your ChibiGeo dashboard; raise the plan if needed
401 in logsKey missing or revokedEnsure PHOTON_API_KEY is set and current

Notes for the privacy-minded

ChibiGeo is EU-hosted and treats your coordinates as transient query data, not a stored profile. If you want to keep even the geocoding fully in your own hands, self-hosting Photon is always an option — this is the convenience path, not a lock-in. See what it takes to self-host Photon for the honest hardware numbers.