User guide
Dashboard guide
Read the estate: the four tiles, the pre-scan and what it tells you, running a sync, the device table, searching, exporting, and the expiry-issues tab.
The WarrantySync dashboard is the estate view: what you own, when each warranty ends, and what is about to run out. Any licensed Jira user can open it, search it and export it.
It lives in the Apps menu, as WarrantySync.
The first time you open it
The first time any user opens WarrantySync, Atlassian asks them to grant the app access on their behalf. This is Forge asking, not WarrantySync, and it happens once per person.

Press Allow access. Until you do, the page shows the request and nothing else, which is easy to mistake for a broken app.
What you can do without being an administrator
Reading the estate is open to everyone. Changing it is not.
| You can | You cannot |
|---|---|
| Read the tiles, the device table and the buckets | Start a sync or force a full re-check |
| Search by name or serial number | Re-run the pre-scan |
| Export the whole estate to CSV | Turn ongoing expiry issues on or off |
The run controls are visible but disabled, and the page says why in plain text rather than hiding the reason in a tooltip:

Only a Jira administrator can start a sync or change how expiry issues are raised. You can still read, search and export the estate.
Note that Export CSV stays available. Reading the estate is not restricted.
If you follow a link to the settings page without being an administrator, Jira does not show an error. It redirects you to your Jira home page.
Setting up
Until an administrator has finished the mapping, the dashboard shows a checklist instead of an estate.

The four steps are: where devices come from, the field mapping, at least one manufacturer, and — optionally — a project for expiry issues. The manufacturers section shows each of Dell, Lenovo and HP with its own state, so you can see what is still waiting on approval.
Once the mapping is done and one manufacturer is connected, the dashboard says it is ready and explains what the first run will and will not do.

The pre-scan: seeing your estate before you connect anything
The pre-scan counts and classifies your devices without contacting any manufacturer, so it works before you have a single credential. It answers the question “will this app work on my data?” before you spend a fortnight chasing API access.
Start it with Re-run pre-scan, once the field mapping is saved. Nothing starts one for you.
Once a manufacturer is connected, a finished pre-scan makes the dashboard say nothing matched — which is correct, because a pre-scan looks nothing up. It counts. Until one is connected, the setup checklist stays on the dashboard instead, and the counts are only on the Buckets tab.

The Buckets tab is where the count lives.

It reports the total, a figure for each manufacturer it recognised, how many carried a manufacturer it did not recognise, and how many had no serial number at all. A device needs both a recognised manufacturer and a serial number before it can be looked up, so those last two numbers are the work list.
The unrecognised manufacturer values are listed by name, because the fix is
usually to correct the data rather than the app. They are shown as the app
compares them: lower-cased, with punctuation turned into spaces and suffixes
such as Inc or Ltd dropped, so “Apple Inc.” appears as apple.
Running a sync
There are three run controls, and they do different things.
| Control | What it does |
|---|---|
| Sync now | Looks up devices that are due a check, according to the freshness setting |
| Force full re-check | Looks up every device, ignoring freshness. Slower, and it spends far more of your manufacturer quota |
| Re-run pre-scan | Recounts the estate without looking anything up |
While a run is going the dashboard reports progress, and the controls are unavailable with the reason stated. Every reason is visible text: a disabled button cannot explain itself in a tooltip, because a disabled control cannot be hovered or focused.
Manual runs are rate-limited. Press Sync now twice in quick succession and the dashboard tells you how long to wait.

Reading the estate

The line above the tiles is the last run, in one sentence: when it finished, how many devices it scanned, how many it updated, and how many issues it raised.
The four tiles are the status model:
| Tile | Means |
|---|---|
| Expired | The warranty end date has passed |
| Expiring within N days | Inside the warning window. N is the administrator’s setting, not a fixed number |
| In warranty | Covered, and outside the warning window |
| No data | No warranty date is known |
Status is always worked out from the stored warranty end date, so it stays correct as time passes even between syncs. A device that was “expiring” last month becomes “expired” on the right day without anybody re-running anything.
The grey No data tile counts two different populations — devices that were looked up and came back with nothing, and devices that could never be looked up. It says so underneath, and clicking it opens the Buckets tab rather than filtering the table, because a filter would show fewer rows than the number on the tile.
Clicking any of the other three filters the table to that status.

The device table
Seven columns: device, manufacturer, serial number, warranty end, days left, status and last checked. Rows arrive a page at a time, soonest expiry first, and Load more fetches the next page.
The table does not sort. That is deliberate. Rows arrive one page at a time, so a sortable column would sort only the rows already fetched and present that as though it were the whole estate.
Searching

Search matches on name and serial number. It is a scan rather than an index lookup, so the count line says exactly what was looked at:
24 matches in 209 devices, which is all of your estate.
If the scan has not reached the end, it says so instead, and offers to keep looking. The app only claims “that is everything” when it has actually read everything.

Exporting
Export CSV assembles the estate and presents it for you to copy.

It is a modal rather than a download because Forge UI Kit has no file-download
API. Select the text, paste it into a file, and save it with a .csv
extension. The modal says how many rows it holds, and the export is capped at
2,000 rows.
Values that begin with a character a spreadsheet would treat as a formula are prefixed with an apostrophe, so opening the file cannot execute anything.
Export is unavailable while a run is in progress, and before the first sync there is nothing to export. Both say so.
Expiry issues
The Expiry issues tab is the opt-in. Configuring a project on the settings page does not start anything; this switch does.


The tab states the style in force and, for per-device issues, the per-run cap. Two rules are worth reading twice:
- A device whose warranty has already expired never gets a per-device issue. The app warns before expiry, not after.
- A resolved issue is never re-raised for the same expiry date.
When more devices enter the warning window than the cap allows, the dashboard says so and the rest wait for the next run.

The footer
The footer carries the app version and a Send feedback link. That link is a
mailto: and it is the app’s only listening mechanism: WarrantySync has no
analytics, no beacons and no telemetry of any kind.
What is not there yet
- The device table does not sort, for the reason above.
- The buckets view shows counts and a sample of unrecognised manufacturer names. It does not list the devices in each bucket.
- Re-run pre-scan is in the action bar at the top, not inside the Buckets view where you might look for it.