Document Upload
POST
/document/uploadprivate keyprk_This service allows initiating a process to request attachments for signature or just attachments without signature. Each attachment can be configured as mandatory or optional.
info
If you want to include a signature process, you can directly send a PDF document in base64 format. If you want the signature and attachment request to be part of a template, note that this flow cannot be configured directly through the endpoint; you must request support from our team.
info
Before integrating this endpoint, you may want to see how to define signature positions and identity validation settings.
Authentication
Include your private key in the Authorization header.
Authorization: prk_xxx...
Creation Parameters
| Name | Type | Description |
|---|---|---|
email | String required | Email address of the process creator. |
code | String optional | Code of a document previously put into edit. Sending it overwrites that process instead of creating a new one, keeping its code. Resend the full payload: whatever you leave out is removed. Read more |
document | String conditional | If you want to create the process using a template, you must send the template ID in this field. To view and obtain templates, access this documentation. |
name | String required | Name of the document signing process, only if the attachments process includes document signing. |
message | String conditional | Message that will be included in the body of the email notifying signers or approvers of the document. Required when any participant is notified by email. |
subject | String conditional | Subject line for the notification email sent to signers or approvers. Required when any participant is notified by email. |
file | String conditional | If you want to upload the document in the same request, send the PDF file in Base64 in this parameter. (Only for small files) |
compress | Boolean conditional | If the PDF file to be uploaded is too large, it is recommended not to send the file parameter; instead, use compress: true. This way, the service returns a signed URL to upload the PDF file in binary format via a PUT request. |
folder | String conditional | If you want to save this process in a specific folder, provide the path of that folder in this parameter. Note that the folder must exist and belong to the process creator. |
remember | Number conditional | Parameter that enables automatic reminders with the time interval (in hours) between each notification. |
expiredDate | Date optional | Expiration date of the document. This must be more than 3 days after the process creation date and is sent in JSON Date format. |
camera | Boolean optional | This parameter indicates if photo validation is required. Default is false. |
otpCode | Boolean optional | This parameter indicates if OTP code validation is required. Default is false. |
options | Object optional | This parameter specifies the identity validation settings. See more |
notification | Boolean optional | Defines whether Auco notifies participants once the process is created. Default is true. It is the default for every signer; each one can override it with signProfile[x].notification. |
targetWebhooks | Array[String] optional | If you have several webhooks, you can send the name of the webhook to which you want the updates of this process to be notified. |
tags | Array[String] optional | If you want to classify processes with tags, you can send the names of the tags to relate the process to (They must exist). |
custom | Object optional | Free-form object to send integrator-defined parameters (for example, internal identifiers or metadata). Auco stores it as-is and forwards it in webhook notifications and in the GET /document response, without interpreting or validating its contents. |
readers | Array optional | This parameter is a list of objects defining participants who are not part of the signing process but should be able to observe each phase of the signing process. |
readers[x].name | String required | Name of the reader. |
readers[x].email | String required | Email of the reader. |
signProfile | Array required | This field is a list of objects containing information for each signer or approver for their notification and signature. |
signProfile[x].name | String required | Name of the signer. |
signProfile[x].email | String required | Email of the signer. |
signProfile[x].phone | String required | Phone number of the signer. |
signProfile[x].role | String conditional | This parameter defines the participant's role; it can be 'APPROVER' or 'SIGNER'. |
signProfile[x].order | String conditional | This parameter defines the order in which the notification process for signing or approval will take place. |
signProfile[x].label | Boolean(true) | String conditional | Parameter indicating if signature positioning will be done using labels in the PDF. |
signProfile[x].position | Array conditional | In this parameter, the signature positions for this signer on each page are sent. Signature positions can be preloaded in templates. Obtain more information in the documentation. |
signProfile[x].type | String conditional | Name used to identify the signer type if pre-saved in a template, e.g., 'co-signer'. |
signProfile[x].options | Object optional | Allows defining custom validations for a specific signer. If you want to apply validations individually by signer, See more. |
signProfile[x].camera | Boolean optional | If you want individual validations per signer and require photo validation, send this parameter as true. Default is false. |
signProfile[x].otpCode | Boolean optional | If you want individual validations per signer and require OTP validation, send this parameter as true. Default is false. |
signProfile[x].notification | Boolean optional | Overrides the global notification for this signer, in either direction: false silences them even if the global is true, and true makes Auco notify them even if the global is false. Silenced signers get an id in the response. |