Introduction
What is BioTime?
ZKTeco BioTime is the software/device platform used by ZKTeco biometric time clocks and access terminals to manage employees, devices, and attendance transactions (clock-in/clock-out punches). BioTime exposes this data over a REST API, secured with a username/password-issued token.
What this SDK does
BioTime SDK is a small, framework-agnostic PHP client for that REST API. Constructing BioTime and calling a resource method — e.g. $biotime->attendances()->all(...) — sends an authenticated HTTP request and returns typed PHP objects (DTOs) instead of raw arrays.
What problem it solves
Talking to the BioTime API directly means every project has to reimplement the same plumbing:
- Send
username/passwordto/api-token-auth/to get a token. - Attach
Authorization: Token <token>to every subsequent request. - Detect when the token has expired (
401), re-authenticate, and retry. - Walk the
nextfield of the pagination envelope to collect every page. - Decode raw JSON arrays and remember which keys mean what.
- Turn non-2xx responses into something you can actually catch and handle.
What the SDK handles automatically
BioTime SDK owns all of the above so your application code doesn't have to:
- Authentication — see Authentication.
- Pagination — see Pagination.
- Typed responses — see DTOs.
- Error handling — see Error Handling.
- Laravel integration — see Laravel, if you're using Laravel.
Next step
Continue to Requirements or jump straight to Installation.