Live presence

Who is in the room right now — as a snapshot you poll, or a stream you subscribe to.

ProposedNot yet callable

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

Who is in the room

Poll a snapshot when a page load is enough, or subscribe to the stream when a screen has to stay live. Both expire on their own — presence is never a permanent record.

bash
curl "https://api.onetaplabs.com/v1/presence?room=block-c-204" \  -H "Authorization: Bearer $ONETAP_KEY"

What presence means

Presence and attendance answer different questions, and conflating them is the most common way this gets built wrong.

AttendancePresence
LifetimePermanent recordExpires minutes after last detection
QuestionWere they counted for CS101?Who is in Block C / 204?
UseReporting, compliance, ERP syncRoll-call screens, safety, occupancy

Presence is not proof of attendance and should never be written into a permanent register on its own. Use the Attendance API for anything a student could be penalised by.

What it is for

  • Roll-call screens. A display at the front of a hall showing who has arrived, updating as people walk in.
  • Safety and evacuation. During a drill, who is still inside a building.
  • Occupancy. How full a lab or library is, for capacity planning or a live availability board.

What it is not for: building a history of where a student has been. Presence expires by design and cannot be queried retrospectively.

Where to next

  • Quickstart — take your first snapshot.
  • Streaming — subscribe to changes, and why the grace period exists.
  • Privacy — read this before enabling it in production.