---
title: "Update attachment"
method: PUT
path: "/api/catalog/pvt/attachment/{attachmentid}"
tags: ["Attachment"]
---

# Update attachment

`PUT /api/catalog/pvt/attachment/{attachmentid}`

Updates a previously existing SKU attachment with new information. 
 >⚠️ To understand the specific syntax for Assembly Options attachments, read the [Assembly Options](https://help.vtex.com/en/tutorial/assembly-options--5x5FhNr4f5RUGDEGWzV1nH#assembly-options-syntax) documentation.

## Permissions

Any user or [API key](https://developers.vtex.com/docs/guides/api-authentication-using-api-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:

| **Product** | **Category** | **Resource** |
| --------------- | ----------------- | ----------------- |
| Catalog | Configuration | **CMS Management** |

There are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).

>❗ To prevent integrations from having excessive permissions, consider the [best practices for managing API keys](https://help.vtex.com/en/tutorial/best-practices-api-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.

## Path parameters

- `attachmentid` string, required

## Headers

- `Content-Type` string, required
- `Accept` string, required

## Request body

- AttachmentRequest — Object with the request.
  - `Name` string, required — Attachment name.
  - `IsRequired` boolean, required — Defines if the attachment is required or not.
  - `IsActive` boolean, required — Defines if the attachment is active or not.
  - `Domains` object[], required — List of characteristics related to the attachment.
    - `FieldName` string — Attachment key name.
    - `MaxCaracters` string — Maximum number of characters in the attachment key.
    - `DomainValues` string — Allowed key values.

## Response `200`

OK

- AttachmentResponse — Attachment response object.
  - `Id` integer, required — Attachment ID.
  - `Name` string, required — Attachment name.
  - `IsRequired` boolean, required — Defines if the attachment is required or not.
  - `IsActive` boolean, required — Defines if the attachment is active or not.
  - `Domains` object[], required — List of characteristics related to the attachment.
    - `FieldName` string — Attachment key name.
    - `MaxCaracters` string — Maximum number of characters in the attachment key.
    - `DomainValues` string — Allowed key values.

---

[API](https://skmtc.net/vtex/apis/catalog-api.md) · [All operations](https://skmtc.net/vtex/apis/catalog-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/vtex/catalog-api/revisions/89aabfd35edf/schema)
