Form page · /f/<id>
Report a workplace incident
Report an incident · 2-column grid · own header and theme · Its own page: share the link or open it on a tablet
Operations & Compliance package
A safety-themed incident form, severity and SLA from a decision table, an incident register with 7-year retention and an investigation task with Close / Escalate.
About this package
Workplace incident log gives everyone one simple place to report injuries, near misses, damage and environmental incidents. The Report a workplace incident form has a safety-orange theme and a grid layout; picking the site from the Incident sites table fills in the site manager.
Each report starts the Incident response workflow through its Form submitted trigger. The Incident severity decision table turns the incident type and worst injury into a severity, a response time in hours, whether a formal investigation is needed and whether the regulator may need to be told. The workflow sets an SLA, adds the incident to the Incidents register (with a 7-year review retention policy applied to the row) and emails the site manager.
When an investigation is needed, the health and safety lead gets an investigation task due within the SLA, with root cause, contributing factors and corrective actions, and Close or Escalate buttons. Escalations email the site manager and go to a senior review. Everything is built in.
Starts from a form page: share the Report a workplace incident form (/f/<id>) or put it on a QR code at each site; each report starts the workflow.
Someone fills in a form to start it: the workflow start form (Run dialog in the app, or your own portal posting to the API) or a standalone form page (/f/<id>) whose Form submitted trigger starts the workflow. People complete User Task forms along the way.
The flow
Report
Anyone fills in the themed form; choosing the site fills in the site manager.
Rate
The Incident severity decision table sets severity, response hours, investigation and notifiable flags.
Log and notify
An SLA starts, the incident goes into the register with a 7-year retention policy and the site manager is emailed.
Investigate
The safety lead records root cause and corrective actions, due within the SLA, with a reminder and escalation.
Close or escalate
Close completes the record; Escalate emails the site manager and starts a senior review.
Forms
People start it from a form page (/f/<id>) with its own header, theme and buttons; submitting it starts the workflow. User Tasks show their fields and outcome buttons to the assignee.
Form page · /f/<id>
Report an incident · 2-column grid · own header and theme · Its own page: share the link or open it on a tablet
User Task
Investigate {{incident_ref}}: {{form.incident_type}} at {{site_name}} [{{severity}}] · 2-column grid · own header and theme
User Task
Senior review of escalated incident {{incident_ref}} · own header and theme
From your code
Every workflow can be started over REST, MCP or the CLI, whatever its trigger, with the sample input below. Runs start straight away on the published version; replace <workflow id> with the id the install created.
REST
curl -X POST "$USERTASKS_URL/api/v1/workflows/start" \
-H "Authorization: Bearer $USERTASKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"workflow_id":"<workflow id>","variables":{"site":"AKL-DC","occurred_at":"2026-10-27T14:30","location_detail":"Racking aisle 12","incident_type":"Injury","injury_level":"Medical treatment","people_involved":"Warehouse operator","witnesses":"Shift supervisor","description":"Operator strained their back lifting a carton from the bottom shelf; seen by the GP the same afternoon.","immediate_action":"Operator sent to the GP, carton moved to waist height.","reporter_name":"Hugo Silva","reporter_email":"hugo.silva@example.com","area_safe":true}}'CLI
usertasks workflows inputs <workflow id> # the start form: keys, types, required
usertasks workflows run <workflow id> --input site=AKL-DC --input occurred_at=2026-10-27T14:30 --input location_detail="Racking aisle 12" --input incident_type=Injury … --waitWhat's included
| Type | Name | Details |
|---|---|---|
| Email template | Incident escalated | Sent to the site manager when an investigation is escalated. |
| Email template | Incident reported at your site | Sent to the site manager for every incident. |
| Data table | Incident sites | Your workplaces. The incident form looks the site up here and fills in the site manager, who is emailed about every incident. |
| Data table | Incidents | The incident register: every report with its severity, SLA, investigation outcome and corrective actions. |
| Decision table | Incident severity | 8 rules — Severity, response SLA and whether a formal investigation is needed, from the type of incident and the worst injury. First matching rule wins. |
| Retention policy | Incident records: 7 years | Health and safety incident records are kept for seven years and then reviewed (not purged automatically): the register may be needed for claims or regulator enquiries. |
| forms | Report a workplace incident | Report an injury, near miss, property damage or environmental incident. Anyone can use it; it takes about two minutes. |
| Workflow | Incident response | 22 steps — An incident report from the form: rated by the severity decision table, logged in the register under a 7-year retention policy, the site manager emailed, and investigated against an SLA when needed. |
Incident sites · 5 sample rows
Site codeSiteAddressRegionSite managerSite manager emailActive
Incidents · 2 sample rows
ReferenceReportedOccurredSite codeSiteExact locationTypeInjurySeveritySLA (hours)Investigation requiredPossibly notifiable to the regulatorReported byReporter emailWhat happenedImmediate actionStatusRoot causeCorrective actionsClosed
Requirements
Credentials never travel in a package. The install wizard asks for what your environment must provide, or installs it incomplete until you finish setup.
Nothing: it installs complete.
Install
Works on UserTasks cloud and on any self-hosted instance. Installing creates the assets above; nothing runs until you complete setup and start it.
curl -fLO https://usertasks.com/gallery/incident-log-1.0.1.utpkg
usertasks packages inspect incident-log-1.0.1.utpkg # offline: checksum, hashes, signature
usertasks packages install incident-log-1.0.1.utpkg --dry-run
usertasks packages install incident-log-1.0.1.utpkg # prompts for each requirement
usertasks packages install incident-log-1.0.1.utpkg --keep-incomplete --yes # in CI; finish with:
usertasks packages complete incident-log -f values.yamlVerify the download
shasum -a 256 incident-log-1.0.1.utpkg should print the file SHA-256. How gallery packages are signed.
Versions
Installing a newer version upgrades in place: local credentials and requirement values are kept, and changes you made are flagged first. How packages work
More packages
Operations & Compliance Official
Handle access, erasure and other privacy requests: statutory deadline, identity check, search of CRM, billing and support, erasure, and a DPO-approved reply.
Needs:REST APIAssigneesEmail
Operations & Compliance Official
Anyone raises a risk on a form; a 5×5 matrix rates it, the owner accepts, mitigates or escalates within an SLA, and a weekly job re-reviews due risks.
Nothing to configure: works as soon as it is installed
Operations & Compliance Official
Monthly SOC 2 / ISO 27001 evidence run: automated controls are pulled from your systems, owners of manual controls are asked for a link, all logged for the auditor.
Needs:REST APIAssigneesEmail