Creating API keys for external systems
Creating API keys for external systems
With API keys, external systems — such as your POS system, a BI tool, or your own script — can access Shiftdesk data. Each key receives precisely defined scopes, so you can keep access as narrow as possible.
Creating a new API key
- Go to Settings → API keys.
- Click Add API key.
- Enter a name (e.g. "POS Cologne branch").
- Choose the required scopes:
employees:read— read employee datashifts:read/shifts:write— read/write shiftstime-entries:read— read clock-insabsences:read— read absences
- Click Create.
Important: shown only once
The full key (sk_live_...) is shown only once — right after creation. Copy it immediately into a secure password manager. After that, the dashboard only shows the last 4 characters for identification.
If you lose the key, you have to create a new one — Shiftdesk cannot recover it.
Sample request
The API base URL is https://api.shiftdesk.app/v1. Authentication is done via the Authorization header:
curl -H "Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
https://api.shiftdesk.app/v1/employees
Rotation and revocation
For security reasons, you should rotate API keys at least once a year:
- Create a new key with identical scopes.
- Store it in the target system.
- Verify that everything works.
- Revoke the old key via the trash icon in the list.
Revoked keys become invalid immediately — ongoing requests fail with 401 Unauthorized.
Audit log
Every API access is logged with a timestamp, IP, and endpoint in the audit log. You'll find the logs under Settings → Security → API activity.
Rate limits
Shiftdesk throttles to 120 requests/minute per key. If you need more, contact support.
Previous article
Configuring time tracking (modes, snap, breaks, GPS)
Next article
Setting up two-factor authentication (MFA)
Still have questions?
Can't find what you're looking for? Get in touch — we're happy to help personally.
Try Shiftdesk for free