Docusign ChunkedUploads API

The ChunkedUploads resource provides methods to complete integrity checks, and to add, commit, retrieve, initiate and delete chunked uploads.

Operations 10

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

POST /v2/accounts/{accountId}/chunked_uploads Start a chunked upload · Docusign Initiate a new ChunkedUpload #
Ask an LLM
“How do I upload a document too large to send in one request?”
“What's the first step to begin a chunked upload?”
Tell an agent
Start a new chunked upload in account {account} with the first chunk {data}.
Begin a chunked upload for a large file in account {account}.
GET /v2/accounts/{accountId}/chunked_uploads/{chunkedUploadId} Get a chunked upload's metadata · Docusign Retrieves the current metadata of a ChunkedUpload #
Ask an LLM
“How can I check which parts of a chunked upload have arrived?”
“Can I see the current state of a chunked upload before committing it?”
Tell an agent
Get metadata for chunked upload {upload} in account {account}.
Show the parts received so far for chunked upload {upload} on account {account}.
PUT /v2/accounts/{accountId}/chunked_uploads/{chunkedUploadId} Commit a chunked upload · Docusign Integrity-Check and Commit a ChunkedUpload, readying it for use… #
Ask an LLM
“How do I finalize a chunked upload so I can use it in an envelope?”
“Does committing a chunked upload run an integrity check?”
Tell an agent
Commit chunked upload {upload} in account {account}.
Run action {action} on chunked upload {upload} in account {account}.
DELETE /v2/accounts/{accountId}/chunked_uploads/{chunkedUploadId} Delete a chunked upload · Docusign Delete an existing ChunkedUpload #
Ask an LLM
“Can I discard a chunked upload I no longer need?”
“How do I cancel an unfinished chunked upload?”
Tell an agent destructive · confirm first
Delete chunked upload {upload} from account {account}.
Discard the chunked upload {upload} on account {account}.
PUT /v2/accounts/{accountId}/chunked_uploads/{chunkedUploadId}/{chunkedUploadPartSeq} Add a part to a chunked upload · Docusign Add a chunk, a chunk 'part', to an existing ChunkedUpload #
Ask an LLM
“How do I add the next chunk to an in-progress upload?”
“Do chunk parts need a sequence number?”
Tell an agent
Add part {part} with data {data} to chunked upload {upload} in account {account}.
Append chunk number {part} to upload {upload} on account {account}.
POST /v2.1/accounts/{accountId}/chunked_uploads Initiate a new chunked upload #
GET /v2.1/accounts/{accountId}/chunked_uploads/{chunkedUploadId} Retrieves metadata about a chunked upload #
PUT /v2.1/accounts/{accountId}/chunked_uploads/{chunkedUploadId} Commit a chunked upload #
DELETE /v2.1/accounts/{accountId}/chunked_uploads/{chunkedUploadId} Deletes a chunked upload #
PUT /v2.1/accounts/{accountId}/chunked_uploads/{chunkedUploadId}/{chunkedUploadPartSeq} Add a chunk to an existing chunked upload #

Documentation

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/docusign:docusign-chunkeduploads-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

docusign-chunkeduploads-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Docusign Chunked Uploads API
  termsOfService: https://www.docusign.com/company/terms-and-conditions/web
  version: '1.0'
  description: 'Operations tagged ChunkedUploads across 2 of this provider''s published API definitions: docusign-openapi-original.yml, docusign-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://www.docusign.net/restapi
tags:
- name: ChunkedUploads
  description: The ChunkedUploads resource provides methods to complete integrity checks, and to add, commit, retrieve, initiate and delete chunked uploads.
paths:
  /v2/accounts/{accountId}/chunked_uploads:
    post:
      tags:
      - ChunkedUploads
      summary: Docusign Initiate a new ChunkedUpload
      operationId: ChunkedUploads_PostChunkedUploads
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account id GUID.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/chunkedUploadRequest'
          application/xml:
            schema:
              $ref: '#/components/schemas/chunkedUploadRequest'
        required: false
      responses:
        '201':
          description: Successful response.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/chunkedUploadResponse'
        '400':
          description: Error encountered.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/errorDetails'
      deprecated: false
      x-ds-methodname: createChunkedUpload
      x-ds-api-status: beta
      x-ds-method: create
      x-ds-service: Envelopes
      x-ds-in-sdk: true
      x-codegen-request-body-name: chunkedUploadRequest
    servers:
    - url: https://www.docusign.net/restapi
  /v2/accounts/{accountId}/chunked_uploads/{chunkedUploadId}:
    get:
      tags:
      - ChunkedUploads
      summary: Docusign Retrieves the current metadata of a ChunkedUpload
      operationId: ChunkedUploads_GetChunkedUpload
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account id GUID.
        required: true
        schema:
          type: string
      - name: chunkedUploadId
        in: path
        required: true
        schema:
          type: string
      - name: include
        in: query
        description: "A comma-separated list of additional information to include in the response. Valid values are: \n\n- `recipients`: Includes information about template recipients.\n- `folders`: Includes information about the folder that holds the template. \n- `documents` : Includes information about template documents.\n- `custom_fields`: Includes information about template custom fields.\n- `notifications`: Includes information about the notification settings for templates.\n- `advanced_templates`: Includes advanced templates in the response. For example, these include templates that use advanced recipient routing. We recommend that you use this option to ensure that the response includes all relevant templates. "
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/chunkedUploadResponse'
        '400':
          description: Error encountered.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/errorDetails'
      deprecated: false
      x-ds-methodname: getChunkedUpload
      x-ds-api-status: beta
      x-ds-method: get
      x-ds-service: Envelopes
      x-ds-in-sdk: true
    put:
      tags:
      - ChunkedUploads
      summary: Docusign Integrity-Check and Commit a ChunkedUpload, readying it for use…
      operationId: ChunkedUploads_PutChunkedUploads
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account id GUID.
        required: true
        schema:
          type: string
      - name: chunkedUploadId
        in: path
        required: true
        schema:
          type: string
      - name: action
        in: query
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/chunkedUploadResponse'
        '400':
          description: Error encountered.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/errorDetails'
      deprecated: false
      x-ds-methodname: updateChunkedUpload
      x-ds-api-status: beta
      x-ds-method: commit
      x-ds-service: Envelopes
      x-ds-in-sdk: true
    delete:
      tags:
      - ChunkedUploads
      summary: Docusign Delete an existing ChunkedUpload
      operationId: ChunkedUploads_DeleteChunkedUpload
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account id GUID.
        required: true
        schema:
          type: string
      - name: chunkedUploadId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/chunkedUploadResponse'
        '400':
          description: Error encountered.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/errorDetails'
      deprecated: false
      x-ds-methodname: deleteChunkedUpload
      x-ds-api-status: beta
      x-ds-method: delete
      x-ds-service: Envelopes
      x-ds-in-sdk: true
    servers:
    - url: https://www.docusign.net/restapi
  /v2/accounts/{accountId}/chunked_uploads/{chunkedUploadId}/{chunkedUploadPartSeq}:
    put:
      tags:
      - ChunkedUploads
      summary: Docusign Add a chunk, a chunk 'part', to an existing ChunkedUpload
      operationId: ChunkedUploads_PutChunkedUploadPart
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account id GUID.
        required: true
        schema:
          type: string
      - name: chunkedUploadId
        in: path
        required: true
        schema:
          type: string
      - name: chunkedUploadPartSeq
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/chunkedUploadRequest'
          application/xml:
            schema:
              $ref: '#/components/schemas/chunkedUploadRequest'
        required: false
      responses:
        '200':
          description: Successful response.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/chunkedUploadResponse'
        '400':
          description: Error encountered.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/errorDetails'
      deprecated: false
      x-ds-methodname: updateChunkedUploadPart
      x-ds-api-status: beta
      x-ds-method: update
      x-ds-service: Envelopes
      x-ds-in-sdk: true
      x-codegen-request-body-name: chunkedUploadRequest
    servers:
    - url: https://www.docusign.net/restapi
  /v2.1/accounts/{accountId}/chunked_uploads:
    parameters: []
    post:
      tags:
      - ChunkedUploads
      summary: Initiate a new chunked upload
      operationId: postV21AccountsByAccountIdChunkedUploads
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account ID GUID.
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/chunkedUploadResponse_2'
        '400':
          description: Error encountered.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorDetails_2'
      deprecated: false
      x-ds-methodname: createChunkedUpload
      x-ds-api-status: beta
      description: This method initiates a new chunked upload with the first part of the content.
      x-ds-method: create
      x-ds-service: Envelopes
      x-ds-in-sdk: true
      requestBody:
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/chunkedUploadRequest_2'
      x-operation-id-source: normalized
      x-operation-id-original: ChunkedUploads_PostChunkedUploads
    servers:
    - url: https://www.docusign.net/restapi
  /v2.1/accounts/{accountId}/chunked_uploads/{chunkedUploadId}:
    parameters: []
    get:
      tags:
      - ChunkedUploads
      summary: Retrieves metadata about a chunked upload
      operationId: getV21AccountsByAccountIdChunkedUploadsByChunkedUploadId
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account ID GUID.
        required: true
        schema:
          type: string
      - name: chunkedUploadId
        in: path
        required: true
        description: 'The ID of the chunked upload. '
        schema:
          type: string
      - name: include
        in: query
        required: false
        description: (Optional) This parameter enables you to include additional attribute data in the response. The valid value for this method is `checksum`, which returns an SHA256 checksum of the content of the chunked upload in the response. You can use compare this checksum against your own checksum of the original content to verify that there are no missing parts before you attempt to commit the chunked upload.
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/chunkedUploadResponse_2'
        '400':
          description: Error encountered.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorDetails_2'
      deprecated: false
      x-ds-methodname: getChunkedUpload
      x-ds-api-status: beta
      description: 'Returns the details (but not the content) about a chunked upload.


        **Note:** You cannot obtain details about a chunked upload that has expired, been deleted, or consumed by other actions.'
      x-ds-method: get
      x-ds-service: Envelopes
      x-ds-in-sdk: true
      x-operation-id-source: normalized
      x-operation-id-original: ChunkedUploads_GetChunkedUpload
    put:
      tags:
      - ChunkedUploads
      summary: Commit a chunked upload
      operationId: putV21AccountsByAccountIdChunkedUploadsByChunkedUploadId
      parameters:
      - name: accountId
        in: path
        description: (Required) The external account number (int) or account ID GUID.
        required: true
        schema:
          type: string
      - name: chunkedUploadId
        in: path
        required: true
        description: (Required) The ID of the chunked upload to commit.
        schema:
          type: string
      - name: action
        in: query
        required: false
        description: (Required) You must use this query parameter with the value `commit`, which affirms the request to validate and prepare the chunked upload for use with other API calls.
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/chunkedUploadResponse_2'
        '400':
          description: Error encountered.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorDetails_2'
      deprecated: false
      x-ds-methodname: updateChunkedUpload
      x-ds-api-status: beta
      description: 'This method checks the integrity of a chunked upload and then commits it. When this request is successful, the chunked upload is then ready to be referenced in other API calls.


        If the request is unsuccessful, ensure that you have uploaded all of the parts by using the Update method.


        **Note:** After you commit a chunked upload, it no longer accepts additional parts.'
      x-ds-method: commit
      x-ds-service: Envelopes
      x-ds-in-sdk: true
      x-operation-id-source: normalized
      x-operation-id-original: ChunkedUploads_PutChunkedUploads
    delete:
      tags:
      - ChunkedUploads
      summary: Deletes a chunked upload
      operationId: deleteV21AccountsByAccountIdChunkedUploadsByChunkedUploadId
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account ID GUID.
        required: true
        schema:
          type: string
      - name: chunkedUploadId
        in: path
        required: true
        description: 'The ID of the chunked upload. '
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/chunkedUploadResponse_2'
        '400':
          description: Error encountered.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorDetails_2'
      deprecated: false
      x-ds-methodname: deleteChunkedUpload
      x-ds-api-status: beta
      description: 'Deletes a chunked upload that has been committed but not yet consumed.


        This method cannot be used to delete the following types of chunked uploads, which the system deletes automatically:


        - Chunked uploads that have been consumed by use in another API call.

        - Expired chunked uploads.


        **Note:** If you are aware of a chunked upload that can be discarded, the best practice is to explicitly delete it. If you wait for the system to automatically delete it after it expires, the chunked upload will continue to count against your quota.'
      x-ds-method: delete
      x-ds-service: Envelopes
      x-ds-in-sdk: true
      x-operation-id-source: normalized
      x-operation-id-original: ChunkedUploads_DeleteChunkedUpload
    servers:
    - url: https://www.docusign.net/restapi
  /v2.1/accounts/{accountId}/chunked_uploads/{chunkedUploadId}/{chunkedUploadPartSeq}:
    parameters: []
    put:
      tags:
      - ChunkedUploads
      summary: Add a chunk to an existing chunked upload
      operationId: putV21AccountsByAccountIdChunkedUploadsByChunkedUploadIdByChunkedUploadPartSeq
      parameters:
      - name: accountId
        in: path
        description: The external account number (int) or account ID GUID.
        required: true
        schema:
          type: string
      - name: chunkedUploadId
        in: path
        required: true
        description: 'The ID of the chunked upload. '
        schema:
          type: string
      - name: chunkedUploadPartSeq
        in: path
        required: true
        description: 'The sequence or order of the part in the chunked upload. By default, the sequence of the first part that is uploaded as part of the Create request is `0`.


          **Note:** You can add parts out of order. However, the chunked upload must consist of a contiguous series of one or more parts before you can successfully commit it.'
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/chunkedUploadResponse_2'
        '400':
          description: Error encountered.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorDetails_2'
      deprecated: false
      x-ds-methodname: updateChunkedUploadPart
      x-ds-api-status: beta
      description: 'Adds a chunk or part to an existing chunked upload. After you use the Create method to initiate a new chunked upload and upload the first part,

        use this method to upload subsequent parts.


        For simplicity, Docusign recommends that you upload the parts in their sequential order ( 1,2, 3, 4, etc.). The Create method adds the first part and assigns it the `sequence` value `0`. As a result, Docusign recommends that you start with a `sequence` value of `1` when you use this method, and continue uploading parts contiguously until you have uploaded the entirety of the original content to Docusign.


        Example:


        ```

        PUT /v2.1/accounts/{accountId}/chunked_uploads/{chunkedUploadId}/1

        PUT /v2.1/accounts/{accountId}/chunked_uploads/{chunkedUploadId}/2

        PUT /v2.1/accounts/{accountId}/chunked_uploads/{chunkedUploadId}/3

        ```


        **Note:** You cannot replace a part that Docusign has already received, or add parts to a chunked upload that is already successfully committed.'
      x-ds-method: update
      x-ds-service: Envelopes
      x-ds-in-sdk: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/chunkedUploadRequest_2'
          application/xml:
            schema:
              $ref: '#/components/schemas/chunkedUploadRequest_2'
      x-operation-id-source: normalized
      x-operation-id-original: ChunkedUploads_PutChunkedUploadPart
    servers:
    - url: https://www.docusign.net/restapi
components:
  schemas:
    chunkedUploadPart:
      type: object
      properties:
        sequence:
          type: string
          description: ''
        size:
          type: string
          description: 'Reserved: TBD'
      description: ''
      x-ds-definition-name: chunkedUploadPart
      x-ms-summary: ''
    chunkedUploadResponse:
      type: object
      properties:
        checksum:
          type: string
          description: ''
        chunkedUploadId:
          type: string
          description: ''
        chunkedUploadParts:
          type: array
          description: ''
          items:
            $ref: '#/components/schemas/chunkedUploadPart'
        chunkedUploadUri:
          type: string
          description: ''
        committed:
          type: string
          description: ''
        expirationDateTime:
          type: string
          description: ''
        maxChunkedUploadParts:
          type: string
          description: ''
        maxTotalSize:
          type: string
          description: ''
        totalSize:
          type: string
          description: ''
      description: ''
      x-ds-definition-name: chunkedUploadResponse
      x-ms-summary: ''
    chunkedUploadRequest:
      type: object
      properties:
        chunkedUploadId:
          type: string
          description: ''
        data:
          type: string
          description: ''
      description: ''
      x-ds-definition-name: chunkedUploadRequest
      x-ms-summary: ''
    errorDetails:
      type: object
      properties:
        errorCode:
          type: string
          description: An error code associated with the error.
        message:
          type: string
          description: A short error message.
      description: This object describes errors that occur. It is only valid for responses, and ignored in requests.
      x-ds-definition-name: errorDetails
      x-ms-summary: This object describes errors that occur. It is only valid for responses, and ignored in requests.
    chunkedUploadPart_2:
      type: object
      properties:
        sequence:
          description: The order of the part in the chunked upload.
          type: string
        size:
          description: "The size of the part in bytes. \n\nDocusign recommends that a chunked upload part is no larger than a few MB in size."
          type: string
      description: An object that contains information about the chunked upload part.
      x-ds-definition-name: chunkedUploadPart
      x-ms-summary: An object that contains information about the chunked upload part.
    chunkedUploadRequest_2:
      type: object
      properties:
        chunkedUploadId:
          description: 'The ID of the chunked upload.


            **Note:** This property is ignored in requests, and overridden with an auto-generated value in responses.'
          type: string
        data:
          description: "A base64-encoded representation of the content that is used to upload the file. \n\nMaximum size: 50 MB. However, data is also subject to REST API limits regarding request sizes, and Internet Information Systems (IIS) might place further constraints on file size."
          type: string
      description: This is the request object for uploading a chunked upload.
      x-ds-definition-name: chunkedUploadRequest
      x-ms-summary: This is the request object for uploading a chunked upload.
    chunkedUploadResponse_2:
      type: object
      properties:
        checksum:
          description: A 64-byte, Secure Hash Algorithm 256 (SHA256) checksum that the caller computes across the entirety of the original content that has been uploaded to the chunked upload. Docusign compares this value to its own computation. If the two values are not equal, the original content and received content are not the same and the commit action is refused.
          type: string
        chunkedUploadId:
          description: 'The ID of the chunked upload. '
          type: string
        chunkedUploadParts:
          description: A list of the parts that compose the chunked upload, including their byte sizes. The list must be contiguous before you can commit the chunked upload.
          type: array
          items:
            $ref: '#/components/schemas/chunkedUploadPart_2'
        chunkedUploadUri:
          description: 'The URI that you use to reference the chunked upload in other API requests, such as envelope document and envelope attachment requests. '
          type: string
        committed:
          description: 'When **true,** the chunked upload has been committed. A committed chunked upload can no longer receive any additional parts and is ready for use within other API requests. '
          type: string
        expirationDateTime:
          description: "The UTC time at which the chunked upload expires and is no longer addressable. \n\n**Note:** You must fully upload and use a chunked upload within 20 minutes of initializing it.\n"
          type: string
        maxChunkedUploadParts:
          description: 'The maximum number of parts allowed for a chunked upload. This value is configurable per Docusign environment, account, or integrator. The default value is 128. The maximum possible value is 256.  '
          type: string
        maxTotalSize:
          description: The maximum total size allowed for a chunked upload. This value is configured per Docusign environment, account, or integrator. The default value is 50 MB.
          type: string
        totalSize:
          description: 'The total size of the parts of the chunked upload.


            **Note:** When a chunked upload is used as an envelope document, it is subject to the PDF size limit (25 MB) and page count limit that apply to all envelope documents.'
          type: string
      description: This response object is returned after you upload a chunked upload.
      x-ds-definition-name: chunkedUploadResponse
      x-ms-summary: This response object is returned after you upload a chunked upload.
    errorDetails_2:
      description: This object describes errors that occur. It is only valid for responses and ignored in requests.
      type: object
      properties:
        errorCode:
          description: The code associated with the error condition.
          type: string
        message:
          description: A brief message describing the error condition.
          type: string
      x-ds-definition-name: errorDetails
      x-ms-summary: This object describes errors that occur. It is only valid for responses and ignored in requests.
x-refined-from:
- docusign-openapi-original.yml
- docusign-openapi.json
x-ds-categories:
- name: UserManagement
  summary: Methods to manage users in an account.
  description: Methods to manage users in an account.
- name: BulkOperations
  summary: Methods to import and export users and accounts.
  description: Methods to import and export users and accounts.
- name: IdentityProviders
  summary: Methods to get a list of identity providers.
  description: Methods to get a list of identity providers.
- name: ReservedDomains
  summary: Methods to get a list of reserved domains.
  description: Methods to get a list of reserved domains.
- name: Organization
  summary: Methods for working with organizations.
  description: Methods for working with organizations.
x-original-swagger-version: '2.0'