---
title: "Adds or replaces a document in an existing envelope."
method: PUT
path: "/v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents/{documentId}"
tags: ["EnvelopeDocuments"]
---

# Adds or replaces a document in an existing envelope.

`PUT /v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents/{documentId}`

Adds or replaces a document in an existing draft or in-process envelope.
An in-process envelope is one that has been sent but not yet completed or voided.


**Note:** When adding or modifying documents for an in-process envelope,
Docusign recommends
[locking the envelope](/docs/esign-rest-api/reference/envelopes/envelopelocks/create/)
prior to making any changes.

To add a new document, set the `documentId` path parameter to a new document ID.

To replace a document, set the `documentId` path parameter to the document ID of the existing document.
The tabs of the original document will be applied to the new document.
For example, a request in cURL looks like this:

```
$ curl --location --request PUT 'https://demo.docusign.net/restapi/v2.1/accounts/0cdb3ff3-xxxx-xxxx-xxxx-e43af011006d/envelopes/ea4cc25b-xxxx-xxxx-xxxx-a67a0a2a4f6c/documents/1' \
    --header 'Authorization: Bearer eyJ...bqg' \
    --header 'Content-Disposition: filename="newDocument"' \
    --header 'Content-Type: application/pdf' \
    --data-binary '@/location/of/document.pdf'
```


<ds-inlinemessage kind="warning">
If HTML document files contain <code>&lt;img&gt;</code> elements with the <code>src</code> attribute set to a path or URL, those images will not be displayed. Images in HTML files must be encoded in Base64 format, like this:<br/>
<code>&lt;img src="data:image/gif;base64,R0lGODlh...IQAAOw==" alt="Base64 encoded image" width="150" height="150"/&gt;</code>
</ds-inlinemessage>

## Path parameters

- `accountId` string, required
- `documentId` string, required
- `envelopeId` string, required

## Response `200`

Successful response.

## Other responses

- `400` — Error encountered.

---

[API](https://skmtc.net/docusign/apis/docusign-esignature-rest-api.md) · [All operations](https://skmtc.net/docusign/apis/docusign-esignature-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/docusign/docusign-esignature-rest-api/versions/77f1998c313d/schema)
