Ingest — GPSLogger
GPSLogger publishes one HTTPS POST per location update with a JSON payload. Default body template works as-is.
Endpoint
POST https://app.whereistereza.com/o/{your-org-slug}/api/t/gpslogger?token={token}
Content-Type: application/json
Payload (default GPSLogger template)
{
"lat": 42.7551,
"lon": -1.6402,
"alt": 430,
"time": "2026-04-25T08:00:00.000Z",
"speed": 1.4,
"accuracy": 8,
"bearing": 85,
"provider": "gps",
"battery": 72
}
| Field | Type | Required | Notes |
|---|---|---|---|
| lat | float | yes | WGS84 latitude |
| lon | float | yes | WGS84 longitude |
| time | string | yes | ISO 8601 |
| alt | float | no | Metres above sea level |
| speed | float | no | Metres per second |
| accuracy | float | no | Horizontal accuracy in metres |
| bearing | float | no | Course over ground 0–360 |
| battery | float | no | Percentage 0–100 |
Example
curl -X POST \
"https://app.whereistereza.com/o/yourname/api/t/gpslogger?token=abc123secret" \
-H "Content-Type: application/json" \
-d '{
"lat": 42.7551,
"lon": -1.6402,
"time": "2026-04-25T08:00:00.000Z",
"alt": 430,
"accuracy": 8
}'
Response:
{ "status": "ok" }
Errors
400— missing lat/lon/time.401— bad token.429— rate limited.
Need help? Contact support · Where Is Tereza?