--- title: "PutObjectLegalHold" slug: "ncloudstorage-putobjectlegalhold" updated: 2026-09-17T09:17:01Z published: 2026-09-17T09:17:01Z canonical: "api.ncloud-docs.com/ncloudstorage-putobjectlegalhold" --- > ## Documentation Index > Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # PutObjectLegalHold Classic/VPC 환경에서 이용 가능합니다. Ncloud Storage 객체에 법적 보존(Legal Hold) 상태를 설정하거나 해제합니다. 법적 보존이 설정된 객체는 보존 기간과 무관하게 삭제·변경할 수 없습니다. ## 요청 요청 형식을 설명합니다. 요청 형식은 다음과 같습니다. | 메서드 | URI | | --- | --- | | PUT | /{Key} | ### 요청 헤더 요청 헤더에 대한 설명은 다음과 같습니다. 참고 Ncloud Storage API에서 공통으로 사용하는 헤더에 대한 정보는 [Ncloud Storage 요청 헤더](/docs/storage-ncloudstorage#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94)를 참조해 주십시오. | 필드 | 필수 여부 | 설명 | | --- | --- | --- | | `Content-MD5` | Required | 요청 바디의 Base64 인코딩된 128비트 MD5 해시값 - 요청 바디 무결성 검증에 사용 - `x-amz-checksum-*` 체크섬 헤더로 대체 가능 | ### 요청 경로 파라미터 요청 경로 파라미터에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `Key` | String | Required | 객체 이름 | ### 요청 쿼리 파라미터 요청 쿼리 파라미터에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `versionId` | String | Optional | 법적 보존을 설정할 객체의 버전 ID - 미 입력 시 최신 버전에 설정 | ### 요청 바디 요청 바디에 대한 설명은 다음과 같습니다. | 필드 | 타입 | 필수 여부 | 설명 | | --- | --- | --- | --- | | `LegalHold` | Object | Required | 법적 보존 설정 | | `LegalHold.Status` | String | Required | 법적 보존 상태 - `ON` \| `OFF` - `ON`: 설정 - `OFF`: 해제 | ### 요청 예시 요청 예시는 다음과 같습니다. ``` PUT /object.csv?legal-hold HTTP/1.1 Host: {Bucket}.kr.ncloudstorage.com Content-MD5: {MD5 해시값} ON ``` ## 응답 응답 형식을 설명합니다. ### 응답 헤더 Ncloud Storage API에서 공통으로 사용하는 헤더에 대한 정보는 [Ncloud Storage 응답 헤더](/docs/storage-ncloudstorage#%EC%9D%91%EB%8B%B5%ED%97%A4%EB%8D%94)를 참조해 주십시오. ### 응답 상태 코드 응답 상태 코드에 대한 설명은 다음과 같습니다. 참고 Ncloud Storage API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 [Ncloud Storage 응답 상태 코드](/docs/storage-ncloudstorage#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C)를 참조해 주십시오. | 에러 코드 | HTTP 상태 코드 | 설명 | | --- | --- | --- | | `InvalidRequest` | 400 | 버킷에 Object Lock 설정이 없음 | | `MalformedXML` | 400 | 요청 바디 XML이 스키마에 맞지 않음 - `Status`가 `ON`/`OFF`가 아님 | | `NoSuchKey` | 404 | 지정한 객체가 존재하지 않음 | | `NoSuchVersion` | 404 | 지정한 버전이 존재하지 않음 | | `MethodNotAllowed` | 405 | 삭제 마커에 법적 보존을 설정함 | ### 응답 예시 응답 예시는 다음과 같습니다. ``` HTTP/1.1 200 OK ```