Deputy
Deputy is a workforce management platform for scheduling and time tracking.
Overview
Deputy is a workforce-management platform covering rostering, time and attendance, leave, and labour costing. It is widely used in retail, hospitality, healthcare, and any business where shift-based scheduling and payroll-ready timesheets matter.
In Spojit, Deputy is most often used as a source of rostering and timesheet data. Workflows pull rosters into project boards for visibility, export approved timesheets to CSV for payroll, alert teams when shifts change, and feed scheduling patterns into AI analyses. The connector can also write back: creating new employees during onboarding or recording leave on behalf of automation.
What You Can Do
The Deputy connector exposes these tools:
create-employee- create a new employee record.create-leave- record a leave request against an employee.get-employee- fetch a single employee by id.get-timesheet- fetch a single timesheet by id.list-employees- list employees with pagination.list-leave- list leave records, optionally filtered by employee or date.list-locations- list configured locations (areas) in the account.list-rosters- list scheduled shifts within a date range.list-timesheets- list timesheets within a date range and status.raw-api-request- call any Deputy API endpoint directly.
Authentication
Deputy supports OAuth 2.0 or a permanent access token. For workflows, a permanent access token from Account Settings -> Integrations -> API is the simplest option. You will also need your Deputy install's subdomain (for example, company.au.deputy.com) because Deputy is multi-region. Tokens inherit the user's permissions; create them from an admin account that can see every location you need.
Setting Up Your Connection
- In Deputy, open Account Settings -> Integrations -> API.
- Generate a permanent access token (or set up an OAuth app if you prefer scoped access).
- Note your install's full subdomain (for example,
company.au.deputy.com). - In Spojit, go to Connections from the sidebar.
- Click + Add Connection and search for Deputy.
- Paste the access token and the subdomain, name the connection (for example,
Deputy - AU) and click Save. - Run
list-locationsin a test workflow to confirm the token resolves the right account.
Using in a Workflow
Use Direct Mode for the high-volume reads: list-rosters and list-timesheets over a fixed date range. Use Agent Mode when an AI step needs to summarise scheduling patterns or decide which employees to notify. For endpoints not covered by the dedicated tools (custom award rules, journals, kiosks), use raw-api-request.
Tips
- Deputy times are returned in the location's timezone, not UTC; convert at read time with the date tools if you mix locations.
- Use
list-rosterswith a tight date range; an unbounded query can return tens of thousands of rows. - Timesheet status matters: only
approvedtimesheets are payroll-ready. - Employee records have both a
DisplayNameand aFirstName/LastName; downstream systems often want the latter. - The Deputy API uses upsert-style endpoints for many writes via
raw-api-request; check the docs before assuming a separate update endpoint exists.
Common Pitfalls
- The subdomain region (
au,na,uk) is part of the API host; using the wrong one returns a confusing 404. - Permanent access tokens are tied to the user that created them; if that user is deactivated, the token stops working.
- Leave requests created via the API still need the configured approval workflow to apply payroll impact.
- The roster endpoint returns scheduled shifts, not worked hours; pair with timesheets for actuals.
- Rate limits are not aggressive but bulk operations can trip them; batch and back off on 429.
Common Use Cases
- How to Sync Deputy Shifts to Monday.com
- How to Export Timesheets to CSV for Payroll Processing
- How to Send Slack Notifications for Schedule Changes
- How to Use AI to Analyze Employee Scheduling Patterns
Related Articles
For technical API details and field specifications, see the Deputy connector documentation.