Tasks from integrations
When you've connected a field-service or job-management integration (ServiceM8, Jobber, Commusoft, Simpro), jobs from that system flow into TrainAR as tasks au…
When you've connected a field-service or job-management integration (ServiceM8, Jobber, Commusoft, Simpro), jobs from that system flow into TrainAR as tasks automatically. Engineers see them in the Core App on their glasses without anyone in dispatch touching the Dashboard.
How the sync works
- A job is created or updated in the source system (your FSM).
- TrainAR receives the change — webhook for FSMs that support it (ServiceM8, Jobber, Simpro), polling for Commusoft.
- A task is created or updated in TrainAR using the synced job's title, description, assignee, status, scheduled date, and external reference ID.
- The engineer sees it on the glasses on their next sync.
Direction is shown on the integration card — Import, Export, or Import + Export. Tasks from integrations are an Import; writeback (see below) is the Export.
Staff allocation
When you connect an integration, you don't sync every job for every staff member at the FSM. You pick which FSM staff to sync work for. After OAuth completes, the Post-Connection Setup modal lists the FSM's staff with checkboxes — toggle on the staff you want jobs synced for.
Only jobs assigned to allocated staff are imported.
User-matching
TrainAR matches FSM staff to TrainAR users by email address (case-insensitive). The flow:
- On sync, TrainAR looks up
integration_user_mappingsfor each FSM staff UUID — if a mapping exists, use it. - If no mapping, TrainAR falls back to matching by email: the FSM staff member's email vs your tenant users' emails.
- On match, the task's assignee is set to the matched TrainAR user.
If no match (your FSM uses a personal email, TrainAR uses work email), tasks come in unassigned. Two fixes:
- Update one side so the emails match
- Invite the engineer's FSM email as a tenant user
Status sync
When a job is updated in the FSM after task creation:
- Rescheduled —
due_dateupdates on the TrainAR task. - Reassigned to a different engineer — TrainAR task
assigneeupdates. - Job notes / description updated — TrainAR task
descriptionupdates.
Cancellation in the FSM may or may not propagate depending on the integration — see the per-integration page for specifics.
Writeback to the FSM
The other direction — TrainAR pushing session results back to the FSM — is controlled by a single Writeback enabled toggle in the Post-Connection Setup modal (and in the integration's Settings modal afterwards). See Tasks → sessions writeback.
Filtering tasks by source
In Dashboard → Tasks, the Completed By filter (on the All / Completed tabs) lets you split by completion source — Session / Manual / Integration. Useful for spotting tasks that were closed in the FSM directly vs. completed via a TrainAR session.
The source-of-creation badge on each row (Manual / API / Integration with provider name) tells you where the task originated.
Re-syncing
If you suspect a webhook missed (rare — TrainAR retries on failure), you can force a re-sync:
- Dashboard → Integrations → [integration] → Re-sync button
- Or open the Settings modal and trigger from there
A re-sync re-fetches the visible window of jobs and reconciles changes. Already-synced tasks update in place; new jobs become new tasks.
Common edge cases
Tasks come in unassigned. Email mismatch between FSM and TrainAR — see User-matching above.
A job exists in the FSM but no task appears in TrainAR. Most common cause: the FSM staff member it's assigned to isn't allocated in the integration settings.
Duplicate tasks. Usually only if the same job has somehow been imported via two integrations (rare). Disconnect one.
Webhook silently failing. Check the integration card — it'll show an error badge with the last-sync error message. Click Re-sync to force a fresh pull.
Where to next
- Integrations overview — full list of supported field-service systems
- Tasks → sessions writeback — what flows back to the FSM
- Managing tasks — manual task creation and management