Forums

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

JSM Assets - how to archive with Premium subscription - best practice

Simon Sahli
Contributor
June 11, 2025

Hi Atlassian community,

we are having a JSM Premium subscription to use Assets. The archiving functionality however is only available with the Enterprise subscription, which we will definitely not get anytime soon.

Now I am wondering, what is best practice on how to deal with Asset data, which is deprecated, but cannot be deleted yet, since we do not want to loose it´s history?

We are working with statuses, like "Deprecated", the problem is that, in the relationships (in- and outbound) and in the object graph those old objects are still visible, which causes confusion. So it is not enough to just change the status.


I am therefore wondering if you guys have any smart workaround to still have a decent archiving process that keeps the value of the Asset object but does not interfere with active Asset data that you could share if you are using JSM premium?
Thanks in advance!


As a plan B, I could delete all the links to other objects of deprecated asset data, but this is quite annoying and a manual task, so I hope there is a better solution out there.

Cheers,
Simon

3 answers

1 accepted

0 votes
Answer accepted
Simon Sahli
Contributor
July 3, 2025

I can answer my question now myself, which might help some other users that look for similar solutions as me.
I came up with the solution also with the help from the Atlassian support so it is legit.

Firstly, there is not really a great solution out there yet to archive Asset objects, there are two CR in this area that will hopefully improve this situation going forward:
[JSDCLOUD-13942] Ability to archive objects/object types in Assets - Create and track feature requests for Atlassian products.
[JSDCLOUD-17087] Ability to filter objects in Object Graph using Status attribute - Create and track feature requests for Atlassian products.


Now there are some alternatives, but they all come with downsides.

First, I was trying to recreate an Archive Asset object with all relevant attributes and connections. This is firstly quite time consuming, but more importantly if you export and import the data then the linked issues to the object get lost, which is one of the most crucial things to keep in my opinion. So not option.


Second, there is an automation rule where you can delete all the inbound and outbound relationships automatically for one Asset object.
This works pretty well, however there is a big catch, you cannot have any mandatory in- or outbound attributes otherwise the automation rule fails. This is also far from ideal, since they are mandatory for a reason and just to remove this condition for archiving is a stretch.
If you are still interested this is the relevant printscreens and AQL:

object having outR(key={{object.Key}})

key in ({{lookupObjects}})


Screenshot 2025-07-03 162849.png

Screenshot 2025-07-03 162955.png

Screenshot 2025-07-03 163041.png



Lastly, for what I have decided to go, at least partly, is to accept the current situation and just naming convention to clearly state that these objects are DISCONTINUED and I have remove the in- and outbound references for the non-mandatory fields.

I hope that helps for people in a similar situation.

Cheers,
Simon

0 votes
Simon Sahli
Contributor
June 19, 2025

One way I have now also came up with is to clone the Asset object and set it under an "Archive" abstract object.
Then export the data of the deprecated object and import it into the archive object with the same structure but without the outbound connections. The inbound connections are anyway gone since it is a new object.

The problem there however is that the linked issues are still pointing to the deprecated objects and also the attachment would need to manually moved. Therefore if the old deprecated object gets deleted those things would disappear.
So not really a scalable and automatic solution...


Probably still better to use the automation rule to remove (NULL) all the outbound references and then remove the inbound references manually.

0 votes
arielei
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 Leaders.
June 15, 2025

Hey @Simon Sahli 

I can suggest to use Automation rules:

When status object will change to "Deprecated" , remove all outbound/inbound connections.

 

So you will only need to change the status and the automation will kick in to handle the asset.

 

Hope that helps.

Ariel.

Simon Sahli
Contributor
June 16, 2025

Thanks for this suggestion @arielei 

What would be the main action to action in the automation rules to remove all outbound/ inbound connections of a deprecated object? 

arielei
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 Leaders.
June 16, 2025

Hey @Simon Sahli 

You can simply create an automation like:

1. Trigger - Object Updated

2. If the Status have changed to "Deprecated"

3. Edit Object and remove all the values from it.

Simon Sahli
Contributor
June 19, 2025

Hi @arielei,
the problem with the point 3 is though that if you remove the values from the object that are connected then you only remove the outbound references. 
The inbound references are set on other objects and point towards the archived asset object.

Do you see any option to remove these inbound references in an automatic way?


Cheers,
Simon

arielei
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 Leaders.
June 19, 2025

Hey @Simon Sahli 

You can do Lookup object on the CF in your work-item.

Then  do Branch on AQL and set the scheme of the inboud/outbound.

Then, to a compare between the value in the CF.Outbound or Inbound and remove it.

 

Think of it this way - looking at the objects from the other way around.

 

 

Like Simon Sahli likes this
Simon Sahli
Contributor
June 19, 2025

Okay, I will try to do this. 
Will let you know if I have succeeded and if yes, how.

Simon Sahli
Contributor
June 24, 2025

Hey @arielei,
I don´t really manage to create the right AQL query's or at least I do not get the result I want, based the mentioned situation.

Could you provide some example that I could adjust to my situation when it comes to the query's and the automation rule setup? 
Just with a simple in- and outbound reference between three asset objects.

I´d really appreciate it. Thanks!

arielei
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 Leaders.
June 24, 2025

Hey @Simon Sahli 

contact me via linkedin and i'll try to assist you.

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