--- title: "PutObjectACL" slug: "storage-objectstorage-putobjectacl" updated: 2026-09-17T10:12:27Z published: 2026-09-17T10:12:27Z canonical: "api.ncloud-docs.com/storage-objectstorage-putobjectacl" --- > ## 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. # PutObjectACL Available in Classic and VPC Create an access control list (ACL) to apply to the object. You can control access to specific objects stored in a bucket. Access permissions can be granted by account or by default ACLs created. Note For a description of the types of permissions and default ACLs that can be granted by the Object Storage service, see [Object Storage overview](/docs/en/storage-objectstorage). ## Requests The following describes the request format for the endpoint. The request format is as follows. | Method | URI | | --- | --- | | PUT | /{bucket-name}/{object-name} | ### Request syntax The request syntax is as follows. ``` PUT https://{endpoint}/{bucket-name}/{object-name}?acl= # path style PUT https://{bucket-name}.{endpoint}/{object-name}?acl= # virtual host style ``` ### Request headers The following describes the PutObjectACL header. For headers common to all Object Storage APIs, see [Object Storage common headers](/docs/en/storage-objectstorage#%EA%B3%B5%ED%86%B5-%EC%9A%94%EC%B2%AD-%ED%97%A4%EB%8D%94). | Field | Type | Required | Description | | --- | --- | --- | --- | | `x-amz-acl` | String | Required | Permission type to grant - `private` (default) \| `public-read` \| `authenticated-read` - `private`: grant FULL_CONTROL permissions to the owner - `public-read`: grant FULL_CONTROL permissions to the owner, and grant READ permissions to all users - `authenticated-read`: grant FULL_CONTROL permissions to the owner, and grant READ permissions to authenticated users | ### Request path parameters The following describes the parameters. | Field | Type | Required | Description | | --- | --- | --- | --- | | `bucket-name` | String | Required | Name of the bucket where the object is stored | | `object-name` | String | Required | Object to apply the ACL to | ### Request query parameters The following describes the parameters. | Field | Type | Required | Description | | --- | --- | --- | --- | | `acl` | String | Required | Declare to apply the default ACL to the object - Enter only keys without values | ### Request example The following is a sample request. #### Default ACL The following is an example of assigning a default ACL to an object. ``` PUT /example-bucket/queen-bee?acl= HTTP/1.1 Authorization: {authorization-string} x-amz-date: 20161207T162842Z x-amz-acl: public-read Host: kr.object.ncloudstorage.com ``` #### ACL for object upload The following is an example of assigning an ACL directly when uploading an object. ``` PUT /example-bucket/queen-bee HTTP/1.1 Authorization: {authorization-string} x-amz-date: 20161207T162842Z x-amz-acl: public-read Host: kr.object.ncloudstorage.com ``` #### Custom ACL The following is an example of assigning an ACL defined by the user. ``` PUT /example-bucket/queen-bee?acl= HTTP/1.1 Authorization: {authorization-string} x-amz-date: 20161207T163315Z Content-Type: text/plain Host: kr.object.ncloudstorage.com Content-Length: 564 ``` ``` {owner-user-id} {owner-user-id} {first-grantee-user-id} {first-grantee-user-id} READ_ACP {second-grantee-user-id} {second-grantee-user-id} FULL_CONTROL ``` ## Responses The following describes the response format. ### Response headers For response headers common to all Object Storage APIs, see [Object Storage common response headers](/docs/en/storage-objectstorage#%EA%B3%B5%ED%86%B5%EC%9D%91%EB%8B%B5%ED%97%A4%EB%8D%94). ### Response status codes For response status codes common to all Object Storage APIs, see [Object Storage response status codes](/docs/en/storage-objectstorage#%EC%98%A4%EB%A5%98%EC%BD%94%EB%93%9C). ### Response example The following is a sample response. #### Default ACL The following is a sample default ACL response. ``` HTTP/1.1 200 OK Date: Wed, 07 Dec 2016 16:28:42 GMT Accept-Ranges: bytes x-amz-request-id: b8dea44f-af20-466d-83ec-2a8563f1617b Content-Length: 0 ``` #### ACL for object upload The following is a sample ACL response when uploading an object. ``` HTTP/1.1 200 OK Date: Wed, 07 Dec 2016 16:28:42 GMT Accept-Ranges: bytes x-amz-request-id: b8dea44f-af20-466d-83ec-2a8563f1617b Content-Length: 0 ``` #### Custom ACL The following is a sample custom ACL response. ``` HTTP/1.1 200 OK Date: Wed, 07 Dec 2016 17:11:51 GMT Accept-Ranges: bytes x-amz-request-id: ef02ea42-6fa6-4cc4-bec4-c59bc3fcc9f7 Content-Length: 0 ```