This guide walks you through getting your credentials and connecting each source from the Chronicle Sources page:
http://localhost:1609/setup
- Chronicle is running (
docker compose up -d). - You can open
http://localhost:1609/setupin your browser. - You only need to configure the sources you actually use.
- Open
http://localhost:1609/setup. - You will see provider cards (Strava, Garmin, Intervals, Weather, Smashrun, Crono, etc.).
- Open Strava api settings: https://www.strava.com/settings/api
- Create
My API Application - Fill app fields:
- Application Name: anything (ex: Chronicle)
- Category: any relevant category
- Website: for local setup, http://localhost is fine
- Authorization Callback Domain: this is the important one (host only)
- Set callback domain based on how you open Chronicle:
- If you use http://localhost:1609/setup -> set callback domain to localhost
- Copy your
CLIENT_IDandCLIENT_SECRET
- Go to Chronicle Sources
/setuppage:
- Enter
STRAVA_CLIENT_IDandSTRAVA_CLIENT_SECRET. - Click Save Setup.
- Click Connect Strava OAuth inside the Strava card.
- Approve access on Strava.
- You should be redirected back to /setup as connected
Common issues:
- OAuth start fails: client id/secret not saved yet.
- Callback mismatch: verify your Strava app callback settings.
Where to get it:
- Your regular Garmin Connect account: https://connect.garmin.com/
Fields in Sources:
ENABLE_GARMIN(toggle)GARMIN_EMAILGARMIN_PASSWORD
Steps:
- Enable Garmin toggle.
- Enter your Garmin login email and password.
- Save setup.
Where to get it:
- Intervals: https://intervals.icu/
- API key and user id are in your Intervals account settings.
Fields in Sources:
ENABLE_INTERVALS(toggle)INTERVALS_API_KEYINTERVALS_USER_ID
Steps:
- Enable Intervals toggle.
- Paste API key and user ID.
- Save setup.
Where to get it:
- Sign up and create a key: https://www.weatherapi.com/signup.aspx
Fields in Sources:
ENABLE_WEATHER(toggle)WEATHER_API_KEY
Steps:
- Enable Weather toggle.
- Paste your WeatherAPI key.
- Save setup.
Where to get it:
- Smashrun API docs: https://api.smashrun.com/v1/documentation
Fields in Sources:
ENABLE_SMASHRUN(toggle)SMASHRUN_ACCESS_TOKEN
Steps:
- Enable Smashrun toggle.
- Paste access token.
- Save setup.
Where to get it:
- Project reference: https://github.com/seanap/crono-api
Fields in Sources:
ENABLE_CRONO_API(toggle)CRONO_API_BASE_URL(example:http://<your-ip>:8777)CRONO_API_KEY(Only if your instance requires one)
Steps:
- Enable Crono API toggle.
- Enter base URL (and API key if required).
- Save setup.
Field in Sources:
TIMEZONE
Use an IANA timezone value. Examples:
America/Los_AngelesAmerica/DenverAmerica/ChicagoAmerica/New_York
- Click Save Setup.
- Click Reload.
- Verify status chips/messages are healthy.
- Optional verification endpoints:
curl http://localhost:1609/health
curl http://localhost:1609/ready
curl http://localhost:1609/setup/api/config.envis the canonical saved config. If changing.envmanually you will need to restart the container.- Chronicle also writes runtime setup overrides so
.envchanges apply immediately without a restart when using the/setup