AttendPlan API
Plně RESTové API pro integrace tvého týmu. Autentikace přes Personal Access Token (Bearer) — vytvoříš ho v Nastavení → API tokeny.
Autentikace
Token přidej do hlavičky Authorization:
curl https://attendplan.com/api/auth/me \ -H "Authorization: Bearer atp_..."
Token autentikuje JAKO uživatel — má jeho roli a scope ke firmě. Tokeny mohou mít expiraci 30 / 90 / 365 / 730 dní, nebo "nikdy". Můžeš mít víc tokenů (různé skripty, různé stroje) a kdykoli je individuálně zrušit.
Token nikdy neukládej do veřejných repozitářů. Pokud únik podezříváš, jdi do Nastavení → API tokeny a smaž ho — okamžitě přestane platit.
Hlavní endpointy
| Method | Path | Popis |
|---|---|---|
| GET | /api/auth/me | Vrací aktuálně přihlášeného uživatele (jméno, role, company_id). |
| GET | /api/team | Manager+: seznam zaměstnanců firmy. |
| GET | /api/shifts?from=&to= | Seznam směn v daném časovém oknu. |
| POST | /api/shifts | Manager+: vytvořit směnu. |
| GET | /api/time-entries?scope=mine|company | Záznamy docházky. |
| POST | /api/time-entries | Vytvořit / spustit ruční timer. |
| GET | /api/leave-requests?scope=mine|company | Žádosti o volno. |
| GET | /api/notifications | Vlastní inbox notifikací. |
| GET | /api/reports/hours.xlsx?from=&to= | Manager+: 3-list XLSX (hodiny + CZ mzdový souhrn + metodika). |
Toto je výběr; všechny endpointy jsou stejné, jaké používá web AttendPlan. Otevři DevTools → Network při běžné práci a uvidíš payloads na vlastní oči.
Outbound webhooky
Místo aby tvoje integrace AttendPlan polling-vala, můžeš ji nechat reagovat na evenY tak, jak nastanou. Nastav webhook v Nastavení → Integrace a my POSTneme JSON na tvůj endpoint.
Příklad payloadu (generic)
{
"event": "shift_published",
"category": "shifts",
"title": "Nová publikovaná směna",
"body": "2026-05-04 06:00 – 14:00",
"link": "https://capkov.attendplan.com/my-shifts",
"ts": "2026-05-01T08:30:21Z"
}Kategorie eventů
shifts— publikace + připomínkyleave— rozhodnutí o žádostech o volnoswap— výměny směnmanager_inbox— žádosti / výměny ke schváleníattendance— timer / čip / ruční zápisdigest— týdenní souhrnsystem— systémová oznámení
Pokud tvůj endpoint po sobě 10× vrátí non-2xx, webhook se automaticky pozastaví. Aktivovat zpátky můžeš jedním kliknutím v Nastavení → Integrace.
Rate limits + best practices
- • Login + reset hesla mají rate limit (per IP). PAT-autentikované volání tyto limity nemá, ale slušná frekvence (≤ 60 RPM) je rozumná.
- • Každá odpověď nese hlavičky
X-RateLimit-LimitaX-RateLimit-Remainingtam, kde je limit aktivní. - • Webhook → poll fallback: pokud preferuješ poll, je to v pohodě. Polling 1× za 5 min na
/api/notificationsje standardní pattern. - • Multi-tenant: pokud jsi connect-nul mezi víc firmami, použij token vázaný k té správné — token = uživatel = firma.
Otázky? Pošli e-mail na podpora@attendplan.com.