Workplace & Facilities package

Asset register & check-out

A register of loanable equipment with a check-out form, a due-back return task with a reminder, and Returned / Damaged outcomes that update the register.

OfficialNo integrations neededStarts from a formStarter~10 min setupv1.0.0

About this package

What it does

Asset register & check-out replaces the clipboard by the equipment cupboard. The Assets table is your register: tag, name, category, home location, serial number, condition, replacement value and whether each item is available, out or in repair. Sample rows cover loan laptops, AV kit, a camera, tools, a pool car and safety equipment.

People borrow from the Asset check-out form page. They search for the asset (only available items are offered) and its category, location and condition fill in by themselves; they pick the borrower as a Person, set the due-back date and accept responsibility. Check out shows a success screen.

The Form submitted trigger starts the workflow: it double-checks the asset is still available, marks it checked out in the register, logs the loan in the Check-outs table and emails the borrower a receipt. The borrower then gets a Return task due on the due-back date, with a reminder the day before. Returned puts the asset back in the register with its new condition; Damaged sends it for repair and records what went wrong. A two-year retention policy is included for the loan records. No integrations needed.

Starts from a form

Starts from a form page: open the Asset check-out form (/f/<id>) at the equipment cupboard or share its link; each check-out 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

Step by step

  1. 1

    Pick the asset

    On the check-out form the borrower searches the register; category, location and condition fill in from the Assets table.

  2. 2

    Who and until when

    The borrower is picked as a Person, with a due-back date and a purpose; Check out shows a success screen.

  3. 3

    Register and log

    The workflow confirms the asset is still available, marks it checked out and logs the loan in Check-outs.

  4. 4

    Receipt

    The borrower gets an email receipt with the due date and where to return it.

  5. 5

    Return task with a reminder

    A return task is due on the due-back date and reminds the borrower a day before.

  6. 6

    Returned or Damaged

    Returned makes the asset available again with its new condition; Damaged sends it for repair and records the damage.

Asset check-out — An asset is checked out on the form: the register is updated, the loan logged, the borrower emailed, and the borrower gets a return task due on the due-back date with Returned / Damaged buttons. The same canvas you get in the designer after installing.

Forms

The start form and the task 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>

Asset check-out

2-column grid · own header and theme · Its own page: share the link or open it on a tablet

Asset * asset · lookup
Asset name asset_name · text
Category category · text
Collect from / return to location · text
Condition at check-out condition_out · text
Borrower * borrower · user
Borrower email * borrower_email · emailname@company.com
Check-out date * checkout_date · dateYYYY-MM-DD
Due back * due_back · dateYYYY-MM-DD
Purpose * purpose · choice
Client visitEventWorking from homeProject workSite workOther
Notes notes · textarea
I take responsibility for this asset until it is returned * agree · boolean
Check out

User Task

Return the asset

Return {{asset_name}} ({{form.asset}}) by {{form.due_back}} · 2-column grid · own header and theme

Returned on * returned_on · datePrefilled: {{=FORMAT_DATE(TODAY(), "YYYY-MM-DD")}}
Condition now * condition_in · choice
NewGoodFairWornDamaged
What is wrong? damage_description · textarea
Notes return_notes · textarea
ReturnedDamaged

From your code

Start a run over the API

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

shell
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":{"asset":"AST-2001","borrower":"$owner","borrower_email":"jordan.lee@example.com","checkout_date":"2026-10-28","due_back":"2026-10-30","purpose":"Client visit","notes":"Taken with the HDMI and USB-C adapters","agree":true}}'

CLI

shell
usertasks workflows inputs <workflow id>          # the start form: keys, types, required
usertasks workflows run <workflow id> --input asset=AST-2001 --input borrower=$owner --input borrower_email=jordan.lee@example.com --input checkout_date=2026-10-28 … --wait

What's included

6 assets, ready to adapt

TypeNameDetails
Email templateAsset check-out receiptSent to the borrower when an asset is checked out to them.
Data tableAssetsThe asset register: every item people can borrow, where it lives, its condition and whether it is out right now.
Data tableCheck-outsEvery loan: who took which asset, when it is due back and the condition it came back in.
Retention policyCheck-outs: 2 yearsLoan records name the borrower: purge check-out rows two years after they were created. Apply it to the Check-outs table after install.
formsAsset check-outBorrow an item from the asset register: pick it, say who is taking it and when it comes back.
WorkflowAsset check-out21 steps — An asset is checked out on the form: the register is updated, the loan logged, the borrower emailed, and the borrower gets a return task due on the due-back date with Returned / Damaged buttons.

Assets · 9 sample rows

Asset tagNameCategoryHome locationSerial numberConditionStatusChecked out to (email)Due backPurchasedReplacement value

Check-outs · 2 sample rows

Check-out referenceAsset tagAssetBorrower emailPurposeChecked outDue backCondition outReturnedCondition inStatusNotes

Requirements

What you connect it to

Credentials never travel in a package. The install wizard asks for what your environment must provide, or installs it incomplete until you finish setup.

Needs

  • Email (optional) — Email delivery configured for the instance (EMAIL_PROVIDER), used for notifications.

After installing

  1. Nothing to configure: install it and open the Asset check-out form from Forms (or share its /f/ link, or print a QR code for the cupboard).
  2. Replace the sample rows in the Assets table with your register (or import a CSV). Keep Status as available for items that can be borrowed.
  3. Optional: apply the "Check-outs: 2 years" retention policy to the Check-outs table, and set EMAIL_PROVIDER so receipts are delivered (the console provider logs them).

Asked for on install

Nothing: it installs complete.

Install

Install it in your workspace

Works on UserTasks cloud and on any self-hosted instance. Installing creates the assets above; nothing runs until you complete setup and start it.

In the app

  1. Download asset-register-checkout-1.0.0.utpkg.
  2. Open Automations → Packages and drag the file onto the page (or choose Import package). Browse gallery there lists every gallery package without downloading by hand.
  3. Pick the file. The wizard verifies the checksum, every file hash and the signature, and shows the readme.
  4. Review the changes (what is created) and the data rows.
  5. Fill in the requirements, or tick Keep incomplete and finish later with Complete setup.
  6. Done: the workflow is published and active once setup is complete.

With the CLI

shell
curl -fLO https://usertasks.com/gallery/asset-register-checkout-1.0.0.utpkg
usertasks packages inspect asset-register-checkout-1.0.0.utpkg       # offline: checksum, hashes, signature
usertasks packages install asset-register-checkout-1.0.0.utpkg --dry-run
usertasks packages install asset-register-checkout-1.0.0.utpkg       # prompts for each requirement
usertasks packages install asset-register-checkout-1.0.0.utpkg --keep-incomplete --yes   # in CI; finish with:
usertasks packages complete asset-register-checkout -f values.yaml

Verify the download

File SHA-256
2305de6d8e7c95b8ec96edc0a67376112c73919aa2a353aba4a788b6820fc696
Package checksum (what is signed)
sha256:102a738b8ace88c41f611338434aacc2484129bc746c43d37a6dffd775c3d183
Signer
Unsigned preview build — compare the SHA-256 above

shasum -a 256 asset-register-checkout-1.0.0.utpkg should print the file SHA-256. How gallery packages are signed.

Versions

Version 1.0.0

  1. v1.0.02026-10-28First release.

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

Related

Browse the whole gallery