Creates a retention policy.
trueWhether owner and co-owners of a file are notified when the policy nears expiration.
trueWhether the owner of a file will be allowed to extend the retention.
12312312The id of the user to notify
apple@example.comThe email address the user uses to notify
Tim AppleThe name of the user to notify
userValue is always user
permanently_deleteThe disposition action of the retention policy.
This action can be permanently_delete, which
will cause the content retained by the policy
to be permanently deleted, or remove_retention,
which will lift the retention policy from the content,
allowing it to be deleted by users,
once the retention policy has expired.
Value is one of permanently_delete,remove_retention
Some Policy NameThe name for the retention policy
finiteThe type of the retention policy. A retention
policy type can either be finite, where a
specific amount of time to retain the content is known
upfront, or indefinite, where the amount of time
to retain the content is still unknown.
Value is one of finite,indefinite
3651The length of the retention policy. This length
specifies the duration in days that the retention
policy will be active for after being assigned to
content. If the policy has A policy_type of
indefinite, the retention_length will also be
indefinite.
Returns a new retention policy object.
Returns a bad_request error with the retention_length was
specified for a infinite retention policy, or an incorrect
disposition_action was set.
Returns an error if a retention policy with the given name already exists
An unexpected client error.
curl -X POST https://api.box.com/2.0/retention_policies \
-H 'Authorization: Bearer <ACCESS_TOKEN>'
-H 'Content-Type: application/json" '
-d '{
"policy_name": "Some Policy Name",
"policy_type": "finite",
"retention_length": 365,
"disposition_action": "permanently_delete"
}'var policyParams = new BoxRetentionPolicyRequest()
{
PolicyName = "Important Documents!",
PolicyType = "finite",
RetentionLength = 365,
DispositionAction = "remove_retention"
};
BoxRetentionPolicy policy = await client.RetentionPoliciesManager
.CreateRetentionPolicyAsync(policyParams);BoxRetentionPolicy.createIndefinitePolicy(api, name);policy_name = 'Test Indefinite Policy Name'
disposition_action = 'remove_retention'
indefinite_retention_policy = client.create_retention_policy(policy_name, disposition_action, float('inf'))
print('Indefinite Retention Policy ID is {0} and the policy name is {1}'.format(indefinite_retention_policy.id, indefinite_retention_policy.policy_name))client.retentionPolicies.create(
'Tax Documents',
client.retentionPolicies.policyTypes.INDEFINITE,
client.retentionPolicies.dispositionActions.REMOVE_RETENTION)
).then(policy => {
/* policy -> {
type: 'retention_policy',
id: '123456789',
policy_name: 'Tax Documents',
policy_type: 'indefinite',
retention_length: 'indefinite',
disposition_action: 'remove_retention',
can_owner_extend_retention: false,
status: 'active',
are_owners_notified: true,
custom_notification_recipients: []
assignment_counts: { enterprise: 0, folder: 1, metadata_template: 0 },
created_by:
{ type: 'user',
id: '11111',
name: 'Example User',
login: 'user@example.com' },
created_at: '2015-05-01T11:12:54-07:00',
modified_at: '2015-06-08T11:11:50-07:00' }
*/
});