Coding agent documentation index Fetch the complete documentation index at: https://docs.worklittle.com/docs-agent-manifest.json Use this file to discover all available pages before exploring further.
Attendance
Organization calendar and time-off entries via /attendance. Same data as the Work calendar UI.
Overview
Attendance is the calendar API. GET /business/attendance returns the org calendar. Scope to one person with GET /business/employees/:id/attendance.
Authentication
| Call | Auth | Scope | | --- | --- | --- | | List, create, update, delete, approve/deny | Bearer or session | `jobs:applications` |
Org role gates still apply. 403 means the key is valid but the member cannot access attendance for that org.
Examples
List
curl -s "https://api.worklittle.com/business/attendance" \
-H "Authorization: Bearer $WORKLITTLE_API_KEY"
Create
curl -s -X POST "https://api.worklittle.com/business/attendance" \
-H "Authorization: Bearer $WORKLITTLE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"employee_id":"EMP_ID","start_date":"2026-08-01","end_date":"2026-08-02","type":"pto"}'
Field names follow the handler (snake_case). 400 responses include the required fields for that entry type.
Approve or deny pending
curl -s -X POST "https://api.worklittle.com/business/attendance/ENTRY_ID/approve" \
-H "Authorization: Bearer $WORKLITTLE_API_KEY"
curl -s -X POST "https://api.worklittle.com/business/attendance/ENTRY_ID/deny" \
-H "Authorization: Bearer $WORKLITTLE_API_KEY"
Routes
| Method | Path | Description | | --- | --- | --- | | GET | `/business/attendance` | Org calendar entries | | POST | `/business/attendance` | Create | | GET | `/business/employees/:id/attendance` | Entries for one employee | | PATCH | `/business/attendance/:id` | Update | | DELETE | `/business/attendance/:id` | Delete | | POST | `/business/attendance/:id/approve` | Approve pending edit | | POST | `/business/attendance/:id/deny` | Deny pending edit |
SDK
After building the monorepo client (SDK):
import { createWorklittle } from "worklittle";
const wl = createWorklittle({ apiKey: process.env.WORKLITTLE_API_KEY });
const all = await wl.attendance.list();
const one = await wl.attendance.list({ employee_id: "EMP_ID" });
await wl.attendance.create({ /* entry fields */ });