Tiemio

For developers

Tiemio API

Read your company's working-time records from your own tools: a payroll spreadsheet, a report, an AI assistant. The API is read-only, so nothing outside the app can change the record.

What it does, and what it does not

Get a key

  1. Sign in as the company's owner and open the Company page.
  2. Under API keys, name the key and create it.
  3. Copy it now: it is shown once. We keep only a hash.
  4. Send it on every call as Authorization: Bearer <key>. Keep it on your server, never in a web page or an app: anyone holding it can read your employees' records.
  5. You can revoke a key at any time. The owner gets an email for each new key.

Your first call

curl -H "Authorization: Bearer tmk_your_key" \
  "https://tiemio.com/api/employer/month?month=2026-09"

The answer gives each person's worked milliseconds per day, with approved corrections applied. Index 0 is the 1st of the month.

{
  "month": "2026-09",
  "today": "2026-10-30",
  "timeZone": "Europe/Madrid",
  "days": 30,
  "people": [
    {
      "employmentId": "emp_01",
      "personId": "usr_01",
      "name": "Ana García",
      "from": "2026-01-12",
      "until": null,
      "workedMs": [28800000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
      "flagged": [false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false]
    }
  ]
}

The five routes

GET /api/employer
The company and its people, with each active person's clock now. Use the employment id from here in the routes below.
GET /api/employer/month?month=YYYY-MM
Worked time per person per day for one month, plus which days fall outside the person's timetable.
GET /api/employer/employments/{id}/day?date=YYYY-MM-DD
One person's day: every tap, with device time, receipt time, whether it waited offline, and the corrections decided that day.
GET /api/employer/corrections
The company's corrections: who asked, who decided, when and why. Add ?status=pending or ?employment=<id> to narrow it.
GET /api/employer/employments/{id}/chain
Every tap exactly as hashed, 500 per page, so your tool can recompute the chain itself. Add ?after=<next> for the next page and ?kind=corrections for the correction rows.

Reading a month without hitting the limit

Limits and errors

What stays stable

Try it without an account

The test drive opens a demo company with fake people and weeks of history. The answer gives you an owner token that works on the same five routes, on the test-drive host, for 24 hours.

curl -X POST https://testdrive.tiemio.com/api/testdrive

One difference: a test-drive owner token is a session, not an API key, so it also sees contact details and notes that a key does not.

More