Unsolved

This post is more than 5 years old

2051

August 17th, 2011 04:00

ATMOS retention handling

I want to understand all the possibilities for handling retention on Atmos. I want to start working with the REST API after using the Centera SDK for years.

  1. Atmos supports retention policies which can be triggered on objects using tags. Is this the only way - will there be an Rest API call on which i could archive & set retention on the call? Basically i am looking for the same way i used to do it with the Centera SDK.
  2. Does a policy also apply to expiration? Hence object will be automatically deleted after expiration.
  3. What about litigation hold? Is this somehow supported?
  4. As Atmos supports the Centera SDK - will it sometime in the future also support retention handling of objects created&updated using the Centera SDK? If so, will that be done using the policies/ existing Centera SDK/ REST? The scenario i'm thinking about is creation of objects with retention using the Centera SDK now, and in the future i want to manage them using the REST API.

Any answers will be appricaited.

281 Posts

August 18th, 2011 09:00

ehoywtffggaxisavgzkzpetbnjvg wrote:

I want to understand all the possibilities for handling retention on Atmos. I want to start working with the REST API after using the Centera SDK for years.

  1. Atmos supports retention policies which can be triggered on objects using tags. Is this the only way - will there be an Rest API call on which i could archive & set retention on the call? Basically i am looking for the same way i used to do it with the Centera SDK.
  2. Does a policy also apply to expiration? Hence object will be automatically deleted after expiration.
  3. What about litigation hold? Is this somehow supported?
  4. As Atmos supports the Centera SDK - will it sometime in the future also support retention handling of objects created&updated using the Centera SDK? If so, will that be done using the policies/ existing Centera SDK/ REST? The scenario i'm thinking about is creation of objects with retention using the Centera SDK now, and in the future i want to manage them using the REST API.

Any answers will be appricaited.

1. Policies are set using "selectors" that are evaluated against the object.  You can trigger on both user and system metadata in the object.  Please refer to the section "Working with Policy Selectors" in the Atmos administration guide for more information. While there is no way to manually set a retention/expriation policy on an object, once it is set you can modify the dates (see below).

2. Yes, a policy can include expiration, retention, or both.  Expriation must be >= retention.

3. If a retention policy applies to an object, you can modify the retention and expiration dates using SetUserMetadata and the special tags user.maui.retentionEnd and user.maui.expirationEnd.  The value is an ISO8601 timestamp format, e.g.

"2020-01-01T23:22:14Z". Please see the Atmos programmer's guide (2.0), page 205 and 209 for information on retention and expiration reserved metadata names.

4. Yes, we are planning to enhance the Atmos CAS compliance features, but since these features are under active development I cannot comment on specific implementation details yet.



August 21st, 2011 06:00

Thanks for the detailed answer.

I used the information to set retention & deletion.

I also tried to extend the retention period.

Although setting retention works the other operations don't.

Deletion is set in the policy just like policy - is it enabled? Do I need to do additional operations for this?

Extending retention doesn't work either. Setting the special tag doesn't do anything(using SetUserMetadata with user.maui.retentionEnd).

I am using the .Net REST API to do this.

Should this work?

281 Posts

August 22nd, 2011 08:00

ehoywtffggaxisavgzkzpetbnjvg wrote:

Thanks for the detailed answer.

I used the information to set retention & deletion.

I also tried to extend the retention period.

Although setting retention works the other operations don't.

Deletion is set in the policy just like policy - is it enabled? Do I need to do additional operations for this?

Extending retention doesn't work either. Setting the special tag doesn't do anything(using SetUserMetadata with user.maui.retentionEnd).

I am using the .Net REST API to do this.

Should this work?

What version of Atmos are you running?  Please double-check to make sure that retention and expiration are enabled in your policy and that the object is getting assigned to the policy properly (check the 'policyname' system metadata and GetObjectInformation to make sure retentionEnd and expirationEnd are set).  Once everything is enabled, I tested with the following code against Atmos 1.4.1:

EsuApi api = new EsuRestApi(host, port, uid, secret);

string newEnd = "2020-01-01T23:22:14Z";

ObjectId oid = new ObjectId("4e01ffeaa1068f4604e02008b4659904e4be075e938d");

ObjectInfo info = api.GetObjectInfo(oid);

Console.WriteLine("Current retain end: " + info.Retention.EndAt);

Console.WriteLine("Changing to: " + newEnd);

MetadataList mlist = new MetadataList();

mlist.AddMetadata(new Metadata("user.maui.retentionEnd", newEnd, false));

api.SetUserMetadata(oid, mlist);

info = api.GetObjectInfo(oid);

Console.WriteLine("New retain end: " + info.Retention.EndAt);

I then ran this application and got the following output:

Current retain end: 1/1/2012 5:22:14 PM
Changing to: 2020-01-01T23:22:14Z
New retain end: 1/1/2020 5:22:14 PM

No Events found!

Top