Skip to content

API Overview

TimeNow exposes a single REST API on port 8090 (default).

Base URL

http://localhost:8090

For production deployments, replace with your domain.

Authentication

None. The API is fully open — no API keys, no accounts, no rate limiting by default.

Response Format

All endpoints return JSON unless noted. Timestamps follow RFC 3339 / ISO 8601.

Endpoint Table

Method Endpoint Description
GET /health Service health check
GET /solar True solar time for a coordinate
GET /solar/reform Civil-solar offset under different timezone reform options
GET /solar/jetlag Social jetlag score (Roenneberg formula)
GET /solar/prayer Islamic prayer times (5 conventions) + Jewish Zmanim
GET /solar/ical iCalendar feed of solar events
GET /solar/almanac Full-year solar almanac (solstices, equinoxes, solar noon)
GET /world/deviation-map Global civil-solar deviation grid (JSON/CSV/GeoJSON)
GET /mesh/peers List mesh network peers
GET /mesh/sync Trigger mesh sync
GET /mesh/status Mesh network status
GET /.well-known/solar-time RFC 8615 well-known discovery endpoint
GET /api-explorer.html Interactive API explorer UI

Common Query Parameters

Parameter Type Description Example
lat float WGS84 latitude (−90 to +90) 51.5074
lng float WGS84 longitude (−180 to +180) -0.1278
utc string UTC timestamp (ISO 8601); defaults to now 2026-04-14T12:00:00Z
alt number Observer altitude in meters above sea level (default: 0, range: -500 to 100000) 500
refraction boolean Enable atmospheric refraction correction (default: true) true
temp_c number Ambient temperature in Celsius for refraction (default: 10.0, range: -89 to 57) 15.0
pressure_hpa number Atmospheric pressure in hPa for refraction (default: 1013.25, range: 100 to 1100) 1013.25

Error Responses

{
  "error": "invalid_parameter",
  "message": "lat must be between -90 and 90",
  "status": 400
}
HTTP Status Meaning
200 Success
400 Bad request — invalid or missing parameters
500 Internal server error

API Explorer

The interactive API Explorer is available at:

http://localhost:3000/api-explorer.html

It lets you try every endpoint directly from the browser.