Integration Overview
This section documents how external scheduling providers can integrate with Seamlr to enable seamless workforce staffing.
Architecture
Section titled “Architecture”flowchart LR
subgraph Provider["Scheduling Provider"]
P1[Shift Management]
P2[Time Tracking]
P3[Payroll]
end
subgraph Seamlr["Seamlr"]
S1[Candidate Pool]
S2[Matching]
S3[Booking]
S4[Communication]
end
Provider -->|Webhook| Seamlr
Seamlr -->|REST API| Provider
Data Ownership
Section titled “Data Ownership”| Data Type | Source of Truth | Sync Direction |
|---|---|---|
| Shift times, location | Provider | Provider → Seamlr |
| Number of positions | Provider | Provider → Seamlr |
| Candidate assignments | Seamlr | Seamlr → Provider |
| Candidate profiles | Seamlr | Seamlr → Provider |
| Booking status | Seamlr | Seamlr → Provider |
Integration Model
Section titled “Integration Model”The integration follows an event-driven webhook pattern:
- Provider → Seamlr: Webhooks notify Seamlr of shift changes
- Seamlr → Provider: REST API calls to fetch details and sync assignments
All operations are initiated by Seamlr. The provider does not poll Seamlr.
Required Capabilities
Section titled “Required Capabilities”Your scheduling system needs to:
- Send webhooks when shifts are created, updated, or deleted
- Expose REST endpoints for Seamlr to:
- Fetch shift details
- Search and create candidates
- Assign/unassign candidates to shifts
- Handle authentication via Bearer tokens
- Support multi-tenant routing via provider IDs