Add a Signer to a Project
This endpoint allows you to add a new signer or participant to a project document. You can specify the user's role (Signer, Approver, Viewer, or Issuee) and their details. The document must be in 'Draft' status (not yet sent to users) to add signers.
HTTP Method and URL
-
Method:
POST -
URL:
{{host}}/projects/:uuid/signers?user_type=ENTERPRISE_API
Authentication Requirements
- Requires a valid authentication token (e.g., Bearer token) in the request headers.
Path and Query Parameters
| Parameter | Location | Type | Required | Description |
|---|---|---|---|---|
| uuid | Path | string | Yes | The unique identifier of the project. Use {{project-uuid}}. |
| user_type | Query | string | Yes | Must be set to ENTERPRISE_API. |
Request Body
-
Content-Type:
application/json -
Body Schema:
| Field | Type | Required | Description |
|---|---|---|---|
| string | Yes | Email address of the signer. | |
| first_name | string | Yes | First name of the signer. |
| last_name | string | Yes | Last name of the signer. |
| type | string | Yes | Type of signer (e.g., GUEST). |
| signer_role | string | Yes | Role of the signer (e.g., Signer). |
| sequence | integer | No | Order/sequence number of the signer in the signing workflow. |
| receives_email_notifs | integer | No | Whether the signer receives email notifications. 1 (yes) or 0 (no). |
| completed_email_notifs | integer | No | Whether the signer receives email notification when document is completed. 1 (yes) or 0 (no). |
| company | string | No | Company name of the signer. |
| add_as_contact | integer | No | Whether to add this signer as a contact. 1 (yes) or 0 (no). |
Example Request Body:
{
"email": "[email protected]",
"first_name": "F",
"last_name": "Test",
"type": "GUEST",
"signer_role": "Signer",
"sequence": 1,
"receives_email_notifs": 1,
"completed_email_notifs": 1,
"company": "Company Name",
"add_as_contact": 1
}
Example Request
POST {{host}}/projects/{{project-uuid}}/signers?user_type=ENTERPRISE_API
Content-Type: application/json
Authorization: Bearer <user-token>
{
"email": "[email protected]",
"first_name": "F",
"last_name": "Test",
"type": "GUEST",
"signer_role": "Signer"
}
Example Successful Response
-
Status:
200 OK -
Response Body:
{ "message": "", "data": [ { "id": 0, "project_id": 0, "client_id": 0, "email": "[email protected]", "first_name": "F", "last_name": "Test", "country": "", "role": "", "photo": "", "verified": 0, "verified_at": "", "type": "GUEST", "sequence": 0, "status": "", "company": "", "job_title": "", "team": null, "deliver_status": "", "in_contact": true, "color_code": "", "sent_at": null, "opened_at": null, "signed_at": null, "created_at": "", "deleted_at": null, "signature": null, "signature_source": "", "initial": "", "initial_source": "", "signer_role": "Signer", "project_role": "", "project_role_id": null } ] }
Error Responses
| Status Code | Description |
|---|---|
| 422 | Invalid field type or missing fields. |
| 401/403 | Authentication failed or unauthorized. |
| 404 | Project not found. |
Example 422 Error Response:
{
"message": "Invalid field type",
"errors": {
"email": ["The email must be a valid email address."]
}
}
Usage Notes
-
Only documents in 'Draft' status can have signers added.
-
Ensure all required fields are provided and valid.
-
The
user_typequery parameter must always be set toENTERPRISE_API. -
The endpoint requires authentication; include a valid token in the
Authorizationheader. -
If you receive a 422 error, check that all fields are present and correctly formatted.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
