⇄Decimal hours
GET /api/tools/decimal-hours?time=07:30
Run example →
◷Worked hours
GET /api/tools/worked-hours?start=08:30&end=17:30&breakMinutes=60
Run example →
ΣWorked shifts batch
GET /api/tools/worked-shifts-summary?shift=08:00,17:00,60&shift=22:00,06:30,30
Run a two-shift pay example →
{ }Structured JSON batch
POST /api/tools/worked-shifts-summary
curl -X POST https://totemclock.com/api/tools/worked-shifts-summary \
-H 'Content-Type: application/json' \
-d '{"shifts":[{"start":"08:00","end":"17:00","breakMinutes":60}]}'
Inspect the request schema →
ΣTimesheet and pre-payroll summary
GET /api/tools/timesheet-summary?entry=08:00&entry=07:30®ularMinutesLimit=900
Run a caller-defined pay example →
{ }Structured timesheet JSON
POST /api/tools/timesheet-summary
curl -X POST https://totemclock.com/api/tools/timesheet-summary \
-H 'Content-Type: application/json' \
-d '{"entries":["08:00","07:30"],"regularMinutesLimit":900}'
Inspect the request schema →
⇩Spreadsheet-ready CSV
GET /api/tools/timesheet-summary/csv?entry=08:00&entry=07:30
Download a CSV example →
▣Calendar-ready work shifts
POST /api/tools/worked-shifts-calendar.ics
curl -X POST https://totemclock.com/api/tools/worked-shifts-calendar.ics \
-H 'Content-Type: application/json' \
-d '{"shifts":[{"start":"2026-09-10T08:00:00+02:00","end":"2026-09-10T17:00:00+02:00","breakMinutes":60}]}' \
-o totemclock-work-shifts.ics
Inspect the calendar schema →
{ }JavaScript, TypeScript, Python and API clients
Import a zero-dependency ESM or Python client, including explicit GET and JSON methods for both batch summaries plus CSV and iCalendar exports. The installable npm-format archive includes the checked TypeScript declarations and is served directly here; it is not presented as an npm registry publication.
npm install https://totemclock.com/downloads/totemclock-time-tools-1.0.0.tgz
Download installable package →
Download JavaScript client →
Download TypeScript declarations →
Download Python client →
Open specification →
Download Postman collection →