Form page · /f/<id>
Legal request
Ask legal · 2-column grid · own header and theme · Its own page: share the link or open it on a tablet
UsesSteps & progress barApplication modeIn-form buttonsForm rules
Operations & Compliance package
One front door for NDAs, contract reviews, legal questions and disputes: a stepped intake form, routing to the right queue with an SLA, and a Data table for the legal team.
About this package
Legal request intake & triage gives the business one place to ask legal for help. People open the Legal request form page, four steps with a progress bar: About you, The request, Urgency, and Review & send. The questions change with the request type: an NDA asks who shares information and whose template, a contract review asks the contract type, value and whether personal data is involved, a legal question asks the area of law, and a dispute asks the amount and any deadline. People attach drafts, letters and the other side's paper, and pick an urgency and a needed-by date.
The form is in Application mode with its own Next, Back and Send to legal buttons, and its rules do the checking before anything reaches legal: a contract review must include the contract, High and Critical urgency need a reason (the field only appears then), the needed-by date cannot be in the past, and choosing a dispute raises the urgency to High with a short note.
Submitting starts the workflow. The Legal request routing decision table picks the queue (Commercial, Employment, Privacy & IP, Disputes or General counsel), the SLA in days and whether the general counsel reviews the outcome. The request is added to the Legal requests table, the requester gets an email with the reference and the date to expect an answer, and the lawyer gets a tabbed task: the request on one tab, their outcome on the other. They complete it, ask the requester for more information (the requester answers in their own task and it comes back) or decline it; high-value contracts, disputes and critical questions go to the general counsel before the requester hears back.
The legal team works from the Legal requests page: open requests sorted by SLA with type, urgency and status badges and relative due times, filters by type, status, queue and assignee, and a click on a row for the full details. Assignee and status can be changed in the table and saved back. Everything is built from forms, a decision table, a data table, emails and tasks: no integrations needed.
Starts from a form page: share the Legal request page (/f/<id>) on your intranet; each submission starts the workflow through its Form submitted trigger.
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.
How forms workThe flow
Ask legal
Four steps with a progress bar; the questions follow the request type, documents are attached, and rules check the contract, urgency reason and dates.
Route and set the SLA
The routing decision table picks the queue, the SLA in days and whether the general counsel reviews; the request is added to the Legal requests table.
Tell the requester
The requester gets the reference, the queue and the date to expect an answer.
Handle the request
A lawyer works from a tabbed task (the request, their outcome): complete, ask for more information or decline.
More information
The requester answers in their own task, with more documents if needed, or withdraws; the request goes back to legal.
General counsel review
Disputes, high-value contracts and critical questions are approved by the general counsel or sent back.
Close and track
The requester is emailed the outcome; the Legal requests page shows every request with filters and a details tab.
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>
Ask legal · 2-column grid · own header and theme · Its own page: share the link or open it on a tablet
UsesSteps & progress barApplication modeIn-form buttonsForm rules
Form page · /f/<id>
3-column grid · own header and theme · Its own page: share the link or open it on a tablet
UsesTabsApplication modeIn-form buttonsData tableForm rules
User Task
{{request_ref}} · {{form.request_type}}: {{form.title}} · 2-column grid · own header and theme
UsesTabs
User Task
GC review: {{request_ref}} · {{form.title}} · own header and theme
User Task
More information for {{request_ref}}: {{form.title}} · 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":{"requester_name":"Mia Walker","requester_email":"mia.walker@example.com","department":"Procurement","request_type":"Contract review","title":"Facilities services agreement: CleanCo","counterparty":"CleanCo Services Ltd","contract_type":"Supplier agreement","contract_value":240000,"personal_data":false,"details":"Three-year cleaning and facilities contract on their paper; they want a 90-day termination notice.","urgency":"High","needed_by":"2027-06-30","urgency_reason":"The current contract ends on 30 November.","acknowledge":true}}'CLI
usertasks workflows inputs <workflow id> # the start form: keys, types, required
usertasks workflows run <workflow id> --input requester_name="Mia Walker" --input requester_email=mia.walker@example.com --input department=Procurement --input request_type="Contract review" … --waitWhat's included
| Type | Name | Details |
|---|---|---|
| Email template | Legal request closed | Sent to the requester when the request is completed, declined or withdrawn. |
| Email template | Legal request: more information needed | Sent to the requester when legal asks for more information. |
| Email template | Legal request received | Sent to the requester when the request is routed. |
| Data table | Legal requests | Every legal request with its type, urgency, queue, SLA due date, who has it and its status. The Legal request workflow adds a row per request and keeps it up to date; the Legal requests page lists them for the legal team. |
| Decision table | Legal request routing | 11 rules — Which queue a legal request goes to, its SLA in days, and whether the general counsel reviews the outcome. First matching rule wins. |
| Form | Legal request | The intake form for legal requests: About you → The request → Urgency → Review & send, with a progress bar and in-form Next / Back / Send to legal buttons (Application mode). The questions change with the request type (NDA, contract review, legal question, dispute), documents can be attached, and rules ask for the contract on a contract review, a reason for High or Critical urgency and a needed-by date that is not in the past. Submitting starts the Legal request workflow through its Form submitted trigger. |
| Form | Legal requests | The legal team’s view of every request: Open requests (base filter on the open statuses, soonest SLA first, editable assignee and status saved back for each changed row) and All requests (the last 12 months), with type, urgency and status badges, dates and relative SLA times, search, filters by type, status, queue and assignee, and sorting on the server. Click a row to open its details tab. |
| Workflow | Legal request | 30 steps — A legal request is submitted on the Legal request form; the routing table picks the queue, the SLA and whether the general counsel reviews, the request is added to the Legal requests table, and a lawyer completes it, asks the requester for more information or declines it. The requester is emailed at each step and the table row follows the request. |
Legal requests · 8 sample rows
RequestSubmittedRequesterRequester emailDepartmentTypeTitleDetailsCounterpartyContract valueUrgencyNeeded byQueueSLA dueAssigned toStatusDocumentsOutcomeClosed
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/legal-request-intake-1.0.0.utpkg
usertasks packages inspect legal-request-intake-1.0.0.utpkg # offline: checksum, hashes, signature
usertasks packages install legal-request-intake-1.0.0.utpkg --dry-run
usertasks packages install legal-request-intake-1.0.0.utpkg # prompts for each requirement
usertasks packages install legal-request-intake-1.0.0.utpkg --keep-incomplete --yes # in CI; finish with:
usertasks packages complete legal-request-intake -f values.yamlVerify the download
shasum -a 256 legal-request-intake-1.0.0.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
Submit a policy, contract or procedure as a PDF; reviewers read it in a PDF viewer and redline it, legal checks it when needed, and the owner e-signs. Every step is audit-logged.
Nothing to configure: works as soon as it is installed
Operations & Compliance Official
Contract owners submit a draft on a stepped form; legal checks it against a clause playbook, redlines revisions, the right people approve it and a register tracks renewals.
Nothing to configure: works as soon as it is installed
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