Attendance API

Read, create and correct attendance records with a scoped API key.

ProposedNot yet callable

This is the proposed design for the attendance REST API. Nothing here is live yet.

Your first request

One bearer token, one GET. Read a day's roll, backfill a term, or correct a mark — with a key scoped to exactly what your integration needs.

bash
export ONETAP_KEY=sk_live_4bc19...curl "https://api.onetaplabs.com/v1/attendance?from=2026-07-19&to=2026-07-19" \  -H "Authorization: Bearer $ONETAP_KEY"

What it covers

Webhooks give you attendance as it happens. This API is for everything else: backfilling a term, reconciling a roll at the end of the day, correcting a mark, or answering a question your own reporting needs.

  • Read records by date, course, session or student.
  • Create records for the cases hardware cannot see — a field trip, an exam elsewhere.
  • Correct a mark with a reason, kept permanently in the record’s history.
  • Pull a whole session’s roll in one request.

Base URL and conventions

https://api.onetaplabs.com/v1
  • JSON in, JSON out. Send Content-Type: application/json on writes.
  • All timestamps are RFC 3339 in UTC. All dates are YYYY-MM-DD.
  • Lists are cursor-paginated and share one envelope, so pagination code written once works everywhere.
  • Writes take an Idempotency-Key so a retry can never double-mark a student.

Ids are prefixed by type — att_ for a record, ses_ for a session, stu_ for a student. They are stable and safe to store against your own rows.

Where to next

  • Quickstart — read a day of attendance in one request.
  • Authentication — keys, scopes, and how to hold them safely.
  • Sessions — the roll endpoint, which is what most ERP syncs actually want.