Sample - Box Platform API
PUT/legal_hold_policies/{legal_hold_policy_id}

Update a legal hold policy

Updates an existing legal hold policy. Supply the policy fields you want to change, including policy_name, description, or release_notes, and use the policy identifier in legal_hold_policy_id. A 200 response returns the updated legal hold policy object.

  • RetriesRetries up to 2×, 500ms backoff, 30s timeout.

1 parameter · 3 body fields
legal_hold_policy_idstringrequired
The unique identifier of the legal hold policy to update.

Legal hold policy fields to update.

policy_namestringoptional
The name of the policy.
descriptionstringoptional
A description for the policy.
release_notesstringoptional
Notes around why the policy was released.

3 status codes
200Returns the updated legal hold policy object, including its identifier, name, status, assignment counts, lifecycle timestamps, and release notes.
idstringrequired
The unique identifier for this legal hold policy.
typestringrequired
The value will always be `legal_hold_policy`.
Allowed:legal_hold_policy
policy_namestringoptional
Name of the legal hold policy.
descriptionstringoptional
Description of the legal hold policy. Optional property with a 500 character limit.
statusstringoptional
Possible values: * 'active' - the policy is not in a transition state. * 'applying' - that the policy is in the process of being applied. * 'releasing' - that the process is in the process of being released. * 'released' - the policy is no longer active.
Allowed:activeapplyingreleasingreleased
assignment_countsobjectoptional
Counts of assignments within a legal hold policy by item type.
created_byobjectoptional
created_atstringoptional
When the legal hold policy object was created.
modified_atstringoptional
When the legal hold policy object was modified. Does not update when assignments are added or removed.
deleted_atstringoptional
When the policy release request was sent. (Because it can take time for a policy to fully delete, this isn't quite the same time that the policy is fully deleted). If `null`, the policy was not deleted.
filter_started_atstringoptional
User-specified, optional date filter applies to Custodian assignments only.
filter_ended_atstringoptional
User-specified, optional date filter applies to Custodian assignments only.
release_notesstringoptional
Optional notes about why the policy was created.
409Returned when a legal hold policy with the specified name already exists.
typestringoptional
The value will always be `error`.
Allowed:error
statusintegeroptional
The HTTP status of the response.
codestringoptional
A Box-specific error code.
Allowed:createdacceptedno_contentredirectnot_modifiedbad_requestunauthorizedforbiddennot_foundmethod_not_allowedconflictprecondition_failed
messagestringoptional
A short message describing the error.
context_infoobjectoptional
A free-form object that contains additional context about the error. The possible fields are defined on a per-endpoint basis. `message` is only one example.
help_urlstringoptional
A URL that links to more information about why this error occurred.
request_idstringoptional
A unique identifier for this response, which can be used when contacting Box support.
defaultAn unexpected client error.
typestringoptional
The value will always be `error`.
Allowed:error
statusintegeroptional
The HTTP status of the response.
codestringoptional
A Box-specific error code.
Allowed:createdacceptedno_contentredirectnot_modifiedbad_requestunauthorizedforbiddennot_foundmethod_not_allowedconflictprecondition_failed
messagestringoptional
A short message describing the error.
context_infoobjectoptional
A free-form object that contains additional context about the error. The possible fields are defined on a per-endpoint basis. `message` is only one example.
help_urlstringoptional
A URL that links to more information about why this error occurred.
request_idstringoptional
A unique identifier for this response, which can be used when contacting Box support.

Error handling

legal_hold_policy_id must identify an existing legal hold policy. policy_name must not exceed 254 characters, while description and release_notes must not exceed 500 characters. A 409 is returned when the updated policy name already belongs to another policy.