.png)
Deputy Integration Guide
Connect Deputy workforce, scheduling, attendance, and leave data with enterprise applications through REST APIs, OAuth 2.0, and selected webhook notifications.
Deputy integration options at a glance
Deputy provides a REST API for workforce-management data, including Employees, Locations, Rosters, Timesheets, Leave, and Tasks. Applications use OAuth 2.0 authorization and bearer access tokens, with permissions determined by the Deputy organization and application configuration. Deputy also supports webhook-style notifications for selected resources and events, although coverage should be confirmed for each use case. Martini can consume Deputy REST endpoints, receive supported notifications through an exposed API or workflow trigger, paginate incremental retrievals, and apply mapping, validation, approval, and reconciliation rules. General-purpose GraphQL, SOAP, bulk, file, attachment, and direct database mechanisms were not confirmed.
Common Deputy integration patterns
Common Deputy data objects used in integrations
Authentication and security considerations
OAuth 2.0 authorization
Deputy applications use OAuth 2.0 authorization and bearer access tokens. The available resources and operations depend on the Deputy organization, user, application configuration, and granted permissions.
Secret management
Store Deputy client credentials, access tokens, refresh data, and endpoint configuration in Martini secrets or environment configuration. Do not place credentials in mappings, payloads, or source-controlled workflow definitions.
Controlled API exposure
When receiving Deputy webhook-style notifications, expose only the required Martini API surface and validate incoming requests before using notification data to retrieve or update resources.
Operational considerations for Deputy integrations
Pagination and incremental state
Process Deputy resources in bounded pages and persist a cursor or last-successful timestamp. Use overlap windows to account for clock skew, late changes, and records modified during a synchronization run.
Rate limits and retries
Use bounded retries with exponential backoff for transient failures and throttling responses. Retry logic must remain idempotent so repeated requests do not create duplicate exports or target records.
Webhook reconciliation
Webhook coverage is resource-specific. Tolerate duplicate and out-of-order notifications, retrieve the latest resource state, and run scheduled reconciliation for missed or unsupported changes.
Payroll state and time zones
Export Timesheets only when required approval or payroll-finalization conditions are met. Preserve Location and time-zone context when processing Rosters, attendance, and worked-time data across regions.
Schema and regional differences
Deputy fields, resource behavior, partner applications, and available functionality may vary by country, plan, and tenant configuration. Isolate mappings from business rules and monitor Deputy documentation for changes.
Why use Martini instead of scripts or point-to-point integrations?
Orchestrate complete integration flows
Scripts often combine authentication, paging, transformation, retries, and target writes in one code path. Martini provides workflow orchestration so these concerns can be separated into understandable, reusable integration behavior.
Support multiple synchronization modes
Martini can consume Deputy REST APIs, receive supported webhook notifications, expose APIs, and schedule reconciliation workflows. This supports real-time-style updates where available without abandoning reliable batch synchronization.
Make mappings and controls maintainable
Deputy Employees, Locations, Rosters, Timesheets, Leave, and Tasks can be mapped to canonical and target-specific models with explicit validation, approval rules, idempotency, and error handling.
Improve operational reliability
Centralized workflows can persist checkpoints, isolate failed identifiers, apply bounded retries, and provide a controlled replay path instead of requiring operators to rerun an entire script or maintain multiple point-to-point integrations.