Form page · /f/<id>
Raise a risk
3-column grid · own header and theme · Its own page: share the link or open it on a tablet
Operations & Compliance package
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.
About this package
Risk register gives you a living register instead of a spreadsheet nobody opens. The Risks table holds each risk with its category, department, likelihood, impact, score, rating, owner, controls, response, mitigation plan, residual score and next review date. Six sample risks are included so the register is not empty on day one.
Anyone can raise a risk on the Raise a risk form page: a title, category, description, likelihood and impact (1-5 with plain-language labels), existing controls and the risk owner as a Person. The Risk submission workflow scores it (likelihood × impact), rates it with the Risk rating decision table (Low, Medium, High, Extreme), sets an SLA for the owner's review by rating and adds it to the register.
The owner reviews it in a task form with Accept, Mitigate and Escalate buttons: a mitigation plan, target date and residual rating are recorded, an escalation emails the risk committee, and the task escalates to the owner's manager if it sits for three days. A second workflow, Weekly risk review, runs every Monday: every open risk whose review date has passed goes back to its owner through a sub-workflow (still valid, rating changed, close risk). No integrations needed.
Starts from a form page: share the Raise a risk form (/f/<id>); each submission starts the review. The Weekly risk review runs every Monday at 08:00.
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
Raise a risk
Anyone fills in the form: title, category, description, likelihood, impact, controls and the risk owner.
Score and rate
Likelihood × impact gives the score; the Risk rating decision table turns it into Low, Medium, High or Extreme with an SLA and review frequency.
Register and SLA
The risk is added to the Risks table and the run gets an SLA for the owner review based on the rating.
Owner decides
The owner presses Accept, Mitigate (with a plan, date and residual rating) or Escalate; unanswered reviews escalate to their manager.
Escalation
Escalated risks are flagged in the register and emailed to the risk committee.
Weekly review
Every Monday, open risks past their review date go back to their owners, and the committee gets the list.
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>
3-column grid · own header and theme · Its own page: share the link or open it on a tablet
User Task
Review risk {{risk_id}} ({{rating}}, score {{score}}): {{form.title}} · 3-column grid · own header and theme
User Task · Risk periodic review
Periodic review: {{risk_id}} {{title}} ({{rating}}) · 2-column grid · 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":{"title":"Warehouse racking not inspected since the move","category":"Health & safety","department":"Warehouse","description":"The pallet racking was re-assembled after the move in August and has not had its annual inspection; a collapse could injure staff.","likelihood":"3","impact":"5","controls":"Visual checks by the shift lead; load signs on each bay","owner":"$owner","raised_by_email":"alex.morgan@example.com"}}'CLI
usertasks workflows inputs <workflow id> # the start form: keys, types, required
usertasks workflows run <workflow id> --input title="Warehouse racking not inspected since the move" --input category="Health & safety" --input department=Warehouse --input description="The pallet racking was re-assembled after the move in August and has not had its annual inspection; a collapse could injure staff." … --waitWhat's included
| Type | Name | Details |
|---|---|---|
| Email template | Risk escalated | Sent to the risk committee when a risk owner escalates a risk. |
| Email template | Weekly risk review | Sent to the risk committee by the weekly review with the risks that came due. |
| Data table | Risks | The risk register: every risk with its owner, inherent and residual score, rating, response and next review date. |
| Decision table | Risk rating | 4 rules — Rates a risk from its score (likelihood × impact, 1-25) using a 5×5 matrix, and sets the owner review SLA and how often the risk is reviewed. First matching rule wins. |
| forms | Raise a risk | Anyone can raise a risk: describe it, rate likelihood and impact, and name the owner who reviews it. |
| Workflow | Risk periodic review | 9 steps — One open risk that came due goes back to its owner: still valid, rating changed (re-rated by the matrix) or closed. |
| Workflow | Risk submission | 16 steps — A risk is raised on the form: it is scored, rated by the matrix, added to the register with an SLA, and its owner accepts, mitigates or escalates it. |
| Workflow | Weekly risk review | 9 steps — Every Monday, each open risk whose next review date has passed goes back to its owner for a periodic review, and the risk committee gets the list. |
Risks · 6 sample rows
Risk IDRiskDescriptionCategoryDepartmentLikelihood (1-5)Impact (1-5)ScoreRatingOwner (user id)OwnerExisting controlsResponseMitigation planMitigation dueResidual scoreStatusRaisedLast reviewedNext review
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/risk-register-1.0.1.utpkg
usertasks packages inspect risk-register-1.0.1.utpkg # offline: checksum, hashes, signature
usertasks packages install risk-register-1.0.1.utpkg --dry-run
usertasks packages install risk-register-1.0.1.utpkg # prompts for each requirement
usertasks packages install risk-register-1.0.1.utpkg --keep-incomplete --yes # in CI; finish with:
usertasks packages complete risk-register -f values.yamlVerify the download
shasum -a 256 risk-register-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
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.
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