**Source URL:** https://limited.veevavault.dev/vault-api/api-reference/25.3/documents/document-attachments/update-multiple-document-attachment-descriptions

# Update Multiple Document Attachment Descriptions

Update multiple document attachments in bulk with a JSON or CSV input file. This works for version-specific attachments and attachments at the document level. You can only update the latest version of an attachment.

*   The maximum input file size is 1GB.
*   The values in the input must be UTF-8 encoded.
*   CSVs must follow the standard RFC 4180 format, with some [exceptions](/vault-api/references/csv-rfc-deviations).
*   The maximum batch size is 500.

<Endpoint path="/api/{version}/objects/documents/attachments/batch" method="PUT" />

## Headers

<FieldTable>
| Name | Description |
| --- | --- |
| `Content-Type` | `application/json` or `text/csv` |
| `Accept` | `application/json` (default) or `text/csv` or `application/xml` |
</FieldTable>

## Body Parameters

Prepare a CSV or JSON input file.

<FieldTable>
| Name | Description |
| --- | --- |
| `id`<Requiredness type="conditional" /> | The attachment ID to update. Not required if providing a unique field identifier (`idParam`) such as `external_id__v`. |
| `external_id__v`<Requiredness type="conditional" /> | Identify attachments by their external ID instead of regular `id`. You must also add the `idParam=external_id__v` query parameter. |
| `description__v`<Requiredness type="required" /> | Description of the attachment. Maximum 1,000 characters. |
</FieldTable>

 

<DownloadButton href="sample-files/bulk-update-multiple-document-attachment-descriptions.json" label="Download Input File" />

## Query Parameters

<FieldTable>
| Name | Description |
| --- | --- |
| `idParam` | If you’re identifying attachments in your input by external id, add `idParam=external_id__v` to the request endpoint. |
</FieldTable>

## Request

<CodeExample title="">
```bash
curl -X PUT -H "Authorization: {SESSION_ID}" \
-H "Content-Type: text/csv" \
-H "Accept: text/csv" \
--data-binary @"C:\Vault\Documents\update_attachments.csv" \
https://myvault.veevavault.com/api/v17.3/objects/documents/attachments/batch
```
</CodeExample>

## Response

<CodeExample title="">
```json
{
    "responseStatus": "SUCCESS",
    "data": [
        {
            "responseStatus": "SUCCESS",
            "id": 38,
            "version": 2
        }
    ]
}
```
</CodeExample>

## Response Details

On `SUCCESS`, the response gives the `id` and `version` of all successfully updated attachments.

---

**Previous:** [Update Document Attachment Description](/vault-api/api-reference/25.3/documents/document-attachments/update-document-attachment-description)  
**Next:** [Document Annotations](/vault-api/api-reference/25.3/documents/document-annotations)