**Source URL:** https://limited.veevavault.dev/safety/vault-api/api-reference/19.1/documents/update-documents/create-multiple-document-versions.md

# Create Multiple Document Versions



Create or add document versions in bulk.

* Your Vault must be in Migration Mode.

* The maximum CSV input file size is 1GB.

* The values in the input must be UTF-8 encoded.

* CSVs must follow the [standard format.](http://tools.ietf.org/html/rfc4180)

* The maximum batch size is 500.

<Endpoint path="/api/{version}/objects/documents/versions/batch" method="POST"></Endpoint>

## Headers {#headers}

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

## Body Parameters {#body-parameters}

<FieldTable>
| Name | Description |
| --- | --- |
| `file` | The filepath of your source files. |
| `id` | The system-assigned document ID of the document to add the versions to. |
| `external_id__v` | Optional: Instead of `id`, you can use this user-defined document external ID. |
| `name__v` | Enter a name for the new document. This may be the same name as the existing document/version or a different name. |
| `type__v` | Enter the name of the document type to assign to the new document. |
| `subtype__v` | Enter the name of the document subtype (if one exists on the document type). |
| `classification__v` | Enter the name of the document classification (if one exists on the document subtype). |
| `lifecycle__v` | Enter the name of the document lifecycle to assign to the new document. This may be the same lifecycle as the existing document/version or a different lifecycle. |
| `major_version_number__v` | Enter the major version number to assign to the new document version. This must be a version that does not yet exist on the document being updated. |
| `minor_version_number__v` | Enter the minor version number to assign to the new document. This must be a version that does not yet exist on the document being updated. |
| `status__v` | Enter a status for the new document, e.g., Draft, In Review, Approved, etc. |
| `product__v` | Example: This is an example object reference field. To assign value for this field type, include either the document field name `product__v` or the document field name plus the name field on the object `product__v.name__v`. |
</FieldTable>

## Query Parameters {#query-parameters}

<FieldTable>
| Name | Description |
| --- | --- |
| `idParam` | If you're identifying documents in your input by their external ID, add `idParam=external_id__v` to the request endpoint. |
</FieldTable>
<DownloadButton href="/sample-files/vault-add-document-versions-sample-csv-input.csv" label="Download Input File"></DownloadButton>

## Request {#request}

<CodeExample title="">
```
curl -X POST -H "Authorization: {SESSION_ID}" \
-H "Content-Type: text/csv" \
-H "Accept: text/csv" \
--data-binary @"C:\Vault\Documents\add_document_versions.csv" \
https://myvault.veevavault.com/api/v10.0/objects/documents/versions/batch

```
</CodeExample>

## Response {#response}

<CodeExample title="">
```
{
    "responseStatus": "SUCCESS",
    "data": [
        {
            "responseStatus": "SUCCESS",
            "id": 771,
            "external_id__v": "ALT-DOC-0771",
            "major_version_number__v": 0,
            "minor_version_number__v": 2
        },
        {
            "responseStatus": "SUCCESS",
            "id": 772,
            "external_id__v": "CHO-DOC-0772",
            "major_version_number__v": 0,
            "minor_version_number__v": 2
        },
        {
            "responseStatus": "SUCCESS",
            "id": 773,
            "external_id__v": "GLU-DOC-0773",
            "major_version_number__v": 1,
            "minor_version_number__v": 0
        },
        {
            "responseStatus": "FAILURE",
            "errors": [
                {
                    "type": "INVALID_DATA",
                    "message": "Error message describing why this document version was not added."
                }
            ]
        }
    ]
}

```
</CodeExample>

---

**Previous:** [Update Document Version](/safety/vault-api/api-reference/19.1/documents/update-documents/update-document-version)  
**Next:** [Create Single Document Version](/safety/vault-api/api-reference/19.1/documents/update-documents/create-single-document-version)