Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Are there pre-configured templates for IT Asset Management in JSM?

Giuseppe Miccoli
Contributor
August 13, 2026

Hi everyone,

I am currently configuring a pilot project for IT Asset Management in Jira Service Management for a company with around 1,000 employees and over 300 locations.
To avoid starting from scratch, I wanted to ask: are there ready-made templates or blueprints with pre-configured schemas and fields specifically designed for IT Asset Management?

I am particularly focused on hardware management (workstations, servers with their respective configurations, and eventual upgrades) and tracking asset distribution across multiple locations.
Additionally, do Atlassian or the community provide collections of pre-built templates that can be expanded to other infrastructure sectors (such as Datacenters, servers, routers, UPS devices, etc.)?

Are there any official resources, community guides, or best practices you would recommend for this type of setup?

Thank you so much for your help!

5 answers

1 vote
Gabriela - LeanZero
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Champions.
August 14, 2026

The sample on that tutorial page will not seed a 1,000-row test, and it is smaller than the page itself claims. The prose says 40 objects, ten of each category. The data block underneath it is 15 rows: four phones, four laptops, three servers, four printers. assets.csv is 15 too, SN001 to SN015. So there is no real-data file to find, and that is the honest end of that search.

Generating one gets you closer than hunting for one anyway, because your object types are not the tutorial's. This writes both files at whatever volume you want, in the exact column shape the tutorial documents:

import csv, random
from datetime import date, timedelta
N = 1000
CATS = {"Laptop": ("Dell XPS","HP EliteBook","Lenovo ThinkPad"), "Phone": ("iPhone","Galaxy S","Pixel"),
        "Server": ("Dell PowerEdge","HP ProLiant"), "Printer": ("HP LaserJet","Brother MFC")}
models = [{"Model Name": f"{v} {i}", "Category": c, "Unit Price": random.randint(200, 9000),
           "Description": f"{v} {i} {c.lower()}"} for c, vs in CATS.items() for v in vs for i in range(1, 6)]
with open("models.csv", "w", newline="") as f:
    w = csv.DictWriter(f, ["Model Name","Category","Unit Price","Description"]); w.writeheader(); w.writerows(models)
with open("assets.csv", "w", newline="") as f:
    w = csv.DictWriter(f, ["Device Type","Serial Number","Model Name","Purchase Date","Owner Group","Status","Asset Tag","PO Number","Asset Status"])
    w.writeheader()
    for i in range(1, N + 1):
        m = random.choice(models)
        w.writerow({"Device Type": m["Category"], "Serial Number": f"SN{i:05d}", "Model Name": m["Model Name"],
                    "Purchase Date": (date(2019,1,1) + timedelta(days=random.randint(0,2200))).strftime("%d/%m/%Y"),
                    "Owner Group": random.choice(["IT","HR","Sales","Finance"]), "Status": random.choice(["Active","Inactive"]),
                    "Asset Tag": f"AT{i:05d}", "PO Number": f"PO{i:05d}", "Asset Status": random.choice(["In Use","In Stock","Disposed"])})

I ran that at N=1000 and it gives 60 models against 1,000 assets with no orphan references. That last part is the bit that matters more than the volume: every asset row points at a Model Name that exists in models.csv, so the reference mapping resolves. Random model strings import fine and then leave you with a thousand unlinked objects.

The dates that script writes are day-first, and the tutorial's own samples are ambiguous the same way, so pin Date Format under More options on the import rather than letting it guess. The doc is upfront that it guesses when you do not: "Assets will automatically try to find the correct format if none is provided". On a thousand rows where most days are under 13, a wrong guess is silent.

Change N for your 200 and 700 runs and re-run the same two import structures.

Giuseppe Miccoli
Contributor
August 14, 2026

Hi Gabriela,
Thanks for the very comprehensive and precise answer.


I was also looking for a template with existing data (around 200, 700, or 1,000 records) where I can run all the necessary tests, queries, etc.

Thank you again for your time and assistance.
Have a great day!

Gabriela - LeanZero
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Champions.
August 14, 2026

Hi @Giuseppe Miccoli, Atlassian doesn't publish one. There's no schema file anywhere to load either, because Cloud exports objects per object type as CSV and nothing above that, which is what JSDCLOUD-9967 is asking for, Under Consideration on 584 votes. Copy Assets data does move whole schemas with their objects between sites, but it clones a site you already have, so it won't seed a new one.

What Atlassian does publish is the column shape, in the ITAM import tutorial. models.csv is Model Name, Category, Unit Price, Description. assets.csv is Device Type, Serial Number, Model Name, Purchase Date, Owner Group, Status, Asset Tag, PO Number, Asset Status. Fifteen rows each.

For your 200, 700 and 1,000 runs, put those columns in a Google Sheet and fill down, then point the import at the sheet instead of uploading a file. Schema settings, Import tab, Create import, CSV Import, then Import data from a web address. The sheet has to be public and on https. Swap /edit#gid=0 on the URL for /export?format=csv and turn on "Viewers and commenters can see the option to download, print, and copy". After that you change the row count in the sheet and re-run the same import to step the volume.

Leave Automatically create object types and attributes switched off, which is what the tutorial itself does. Auto-create gives you one object type named after the file, with text attributes taken from the header row, so the model column arrives as plain text with nothing to traverse. Map it as a reference yourself and put Name = ${Model Name} in the AQL field on the assets mapping. Run the models import first so those objects exist when it goes looking for them.

Giuseppe Miccoli
Contributor
August 18, 2026

Thanks.

1 vote
Jeroen Poismans
Community Champion
August 13, 2026

Hi and welcome to the Community!

When creating a new Schema you can select the ITSM template but as you probably have noticed this is rather limited and not very useful.

So in short, no, there is no shipped template. However if you want to save some time in creating attributes, object types etc ... you can use the Import functionality with your data file (csv) and have it create the necessary object types and attributes automatically based on how you configure the import further:

Screenshot 2026-08-13 095137.png

So that might save you some time.

Hope this helps!

Giuseppe Miccoli
Contributor
August 14, 2026

Hi there,
Thanks for your reply and for taking the time to share your thoughts.
For this specific case, however, I am looking for a slightly different solution.

Best,

0 votes
Giuseppe Miccoli
Contributor
August 28, 2026

Thanks everybody,

I am, also, looking for a CSV file with real data with 1000 or more item, with full detail of all the fields that ca be related with IT Asset Management of a business as described above.

Gabriela - LeanZero
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Champions.
August 29, 2026

The sample on that tutorial page will not seed a 1,000-row test, and it is smaller than the page itself claims. The prose says 40 objects, ten of each category. The data block underneath it is 15 rows: four phones, four laptops, three servers, four printers. assets.csv is 15 too, SN001 to SN015. So there is no real-data file to find, and that is the honest end of that search.

Generating one gets you closer than hunting for one anyway, because your object types are not the tutorial's. This writes both files at whatever volume you want, in the exact column shape the tutorial documents:

import csv, random
from datetime import date, timedelta
N = 1000
CATS = {"Laptop": ("Dell XPS","HP EliteBook","Lenovo ThinkPad"), "Phone": ("iPhone","Galaxy S","Pixel"),
"Server": ("Dell PowerEdge","HP ProLiant"), "Printer": ("HP LaserJet","Brother MFC")}
models = [{"Model Name": f"{v} {i}", "Category": c, "Unit Price": random.randint(200, 9000),
"Description": f"{v} {i} {c.lower()}"} for c, vs in CATS.items() for v in vs for i in range(1, 6)]
with open("models.csv", "w", newline="") as f:
w = csv.DictWriter(f, ["Model Name","Category","Unit Price","Description"]); w.writeheader(); w.writerows(models)
with open("assets.csv", "w", newline="") as f:
w = csv.DictWriter(f, ["Device Type","Serial Number","Model Name","Purchase Date","Owner Group","Status","Asset Tag","PO Number","Asset Status"])
w.writeheader()
for i in range(1, N + 1):
m = random.choice(models)
w.writerow({"Device Type": m["Category"], "Serial Number": f"SN{i:05d}", "Model Name": m["Model Name"],
"Purchase Date": (date(2019,1,1) + timedelta(days=random.randint(0,2200))).strftime("%d/%m/%Y"),
"Owner Group": random.choice(["IT","HR","Sales","Finance"]), "Status": random.choice(["Active","Inactive"]),
"Asset Tag": f"AT{i:05d}", "PO Number": f"PO{i:05d}", "Asset Status": random.choice(["In Use","In Stock","Disposed"])})

I ran that at N=1000 and it gives 60 models against 1,000 assets with no orphan references. That last part is the bit that matters more than the volume: every asset row points at a Model Name that exists in models.csv, so the reference mapping resolves. Random model strings import fine and then leave you with a thousand unlinked objects.

The dates that script writes are day-first, and the tutorial's own samples are ambiguous the same way, so pin Date Format under More options on the import rather than letting it guess. The doc is upfront that it guesses when you do not: "Assets will automatically try to find the correct format if none is provided". On a thousand rows where most days are under 13, a wrong guess is silent.

Change N for your 200 and 700 runs and re-run the same two import structures.

0 votes
Jay Seth
August 26, 2026

@Giuseppe Miccolithe ITSM schema template is pretty thin, so I would not start there for 1,000 people and 300 locations.

If you want hardware plus who has it and where, without drawing object types first, Asset Management for Jira already ships devices, licenses, and accessories, with locations and a loanee on each record. A CSV import will get a pilot file in, and custom fields cover the workstation/server bits you care about.

It will not replace a Discovery scan for routers and UPS over SNMP. For those you still need a data source, or you live with hostname-level records.

Let me know if this answers your question?

0 votes
Jay Seth
August 26, 2026

@Giuseppe Miccoli the ITSM schema template is pretty thin, so I would not start there for 1,000 people and 300 locations.

If you want hardware plus who has it and where, without drawing object types first, Asset Management for Jira already ships devices, licenses, and accessories, with locations and a loanee on each record. A CSV import will get a pilot file in, and custom fields cover the workstation/server bits you care about.

It will not replace a Discovery scan for routers and UPS over SNMP. For those you still need a data source, or you live with hostname-level records.

Let me know if this answers your question?

Suggest an answer

Log in or Sign up to answer
DEPLOYMENT TYPE
CLOUD
PRODUCT PLAN
PREMIUM
PERMISSIONS LEVEL
Product Admin
TAGS
AUG Leaders

Atlassian Community Events