# Upload document for e-signature **POST /upload-sign** This endpoint allows you to upload a document to an e-sign element for signature. You can upload a remote file using the `url` parameter or a file encoded in base64 using the `data` parameter. The file size is limited to 20Mb regardless of the upload method chosen. ## Servers - Production server.: https://api.usecollect.com/v1 (Production server.) ## Authentication methods - Basic auth ## Parameters ### Body: application/json (object) - **elementId** (string) ID of the e-sign element you want to add the document to - **url** (string) URL of the remote file to sign. The file size is limited to 20Mb. - **data** (string) Base64 encoded file. The file size is limited to 20Mb. - **name** (string) Name of the file **with** the file extension. ## Responses ### 200 Successfully uploaded document for signature #### Body: application/json (object) - **id** (string) Element ID - **itemId** (string) Reference of the element in the campaign - **name** (string) Element name - **order** (integer) Element order - **visibility** (boolean) Visibility of the element on the portal - **visibilityConditionnal** (boolean) Whether the visibility is conditional - **status** (string) Status of the signature element - **type** (string) Element type - **request** (object) ### 400 Bad Request -- Your request is invalid. ### 401 Unauthorized -- Your API key is wrong. ### 403 Forbidden -- The object requested is hidden for administrators only. ### 404 Not Found -- The specified object could not be found. ### 429 Too Many Requests -- You're requesting too many objects! Slow down! ### 500 Internal Server Error -- We had a problem with our server. Try again later. ### 503 Service Unavailable -- We're temporarily offline for maintenance. Please try again later. [Powered by Bump.sh](https://bump.sh)