Update legal hold policy

put
https://api.box.com/2.0
/legal_hold_policies/:legal_hold_policy_id

Update legal hold policy.

Request

bearer [ACCESS_TOKEN]
application/json

Path Parameters

Request Body

stringin bodyoptional
"A custom policy for the sales team"500

A description for the policy.

stringin bodyoptional
"Sales Policy"254

The name of the policy.

stringin bodyoptional
"Required for GDPR"500

Notes around why the policy was released.

Response

application/jsonLegal hold policy

Returns a new legal hold policy object.

application/jsonClient error

Returns an error if a policy with this name already exists.

application/jsonClient error

An unexpected client error.

put
Update legal hold policy
You can now try out some of our APIs live, right here in the documentation.
Log in

Request Example

cURL
curl -i -X PUT "https://api.box.com/2.0/legal_hold_policies/324432" \
     -H "authorization: Bearer <ACCESS_TOKEN>" \
     -H "content-type: application/json" \
     -d '{
       "policy_name": "Policy 4"
     }'
.NET
var updates = new BoxLegalHoldPolicyRequest()
{
    Description = "Hold for documents related to the IRS audit"
};
BoxLegalHoldPolicy updatedPolicy = await client.LegalHoldPoliciesManager
    .UpdateLegalHoldPolicyAsync("11111", updates);
Java
BoxLegalHoldPolicy policy = new BoxLegalHoldPolicy(api, id);
BoxLegalHoldPolicy.Info policyInfo = policy.new Info();
info.setDescription("new description");
info.setPolicyName("new policy name");
policy.updateInfo(info);
Python
policy_update = {'description': 'New Description', 'release_notes': 'Example Notes'}
updated_policy = client.legal_hold_policy(policy_id='12345').update_info(data=policy_update)
Node
client.legalHoldPolicies.update('11111', {description: 'Documents related to IRS audit'})
	.then(policy => {
		/* policy -> {
			type: 'legal_hold_policy',
			id: '11111',
			policy_name: 'IRS Audit',
			description: 'Documents related to IRS audit',
			status: 'active',
			assignment_counts: { user: 1, folder: 0, file: 0, file_version: 0 },
			created_by: 
			{ type: 'user',
				id: '22222',
				name: 'Example User',
				login: 'user@example.com' },
			created_at: '2016-05-18T10:28:45-07:00',
			modified_at: '2016-05-18T11:25:59-07:00',
			deleted_at: null,
			filter_started_at: '2016-05-17T01:00:00-07:00',
			filter_ended_at: '2016-05-21T01:00:00-07:00' }
		*/
	});
iOS
client.legalHolds.update(policyId: "1234", policyName: "New Name") { (result: Result<LegalHoldPolicy, BoxSDKError>) in
    guard case let .success(policy) = result else {
        print("Error updating legal hold policy")
        return
    }
    print("Updated legal hold policy name is \"\(policy.name)\"")
}
TypeScript (Beta)
await client.legalHoldPolicies.updateLegalHoldPolicyById(legalHoldPolicyId, {
  policyName: updatedLegalHoldPolicyName,
} satisfies UpdateLegalHoldPolicyByIdRequestBody);
Python (Beta)
client.legal_hold_policies.update_legal_hold_policy_by_id(legal_hold_policy_id, policy_name=updated_legal_hold_policy_name)
.NET (Beta)
await client.LegalHoldPolicies.UpdateLegalHoldPolicyByIdAsync(legalHoldPolicyId: legalHoldPolicyId, requestBody: new UpdateLegalHoldPolicyByIdRequestBody(policyName: updatedLegalHoldPolicyName)).ConfigureAwait(false)

Response Example

{
  "id": "11446498",
  "type": "legal_hold_policy",
  "assignment_counts": {
    "file": 3,
    "file_version": 4,
    "folder": 2,
    "user": 1
  },
  "created_at": "2012-12-12T10:53:43-08:00",
  "created_by": {
    "id": "11446498",
    "type": "user",
    "login": "ceo@example.com",
    "name": "Aaron Levie"
  },
  "deleted_at": "2012-12-12T10:53:43-08:00",
  "description": "Postman created policy",
  "filter_ended_at": "2012-12-12T10:53:43-08:00",
  "filter_started_at": "2012-12-12T10:53:43-08:00",
  "modified_at": "2012-12-12T10:53:43-08:00",
  "policy_name": "Policy 4",
  "release_notes": "Example",
  "status": "active"
}