Sign Agreement Documents

View as Markdown
### Sign the agreement documents for a customer application. **Available to:** All authenticated users **Environments:** Live **[Rate Limit](/overview/core-concepts/rate-limits):** 10 requests per hour, 30-second back-off, counts all requests Record the applicant's signature on the agreement documents prepared for a customer application. Call this after generating the documents with [`prepareAgreementDocuments`](/api/rest-api-endpoints/users/prepare-agreement-documents). All fields are required: - `customerApplicationId` — the application being signed, from [`startCustomerApplication`](/api/rest-api-endpoints/users/start-customer-application) - `agreementIds` — the `AgreementDocument` entity IDs to sign; list them with [`agreementDocumentDependents`](/api/rest-api-endpoints/users/agreement-document-dependents) - `agreementReadConfirmation` — must be `true`, confirming the applicant read the agreements - `signature` — must match the applicant's full name exactly - `date` — must be today's date (Central Time) For individual, joint, and IRA applications, the signature is validated against the applicant's first and last name; on joint applications, a co-applicant login signs with the joint applicant's name. For entity applications, the signature must match the full name of the primary contact. A successful response returns a `successHashCode`. **Common Failure Scenarios** - `customerApplicationId` or any of the `agreementIds` does not reference an existing entity. - The application has no applicant details — submit them with [`submitApplicant`](/api/rest-api-endpoints/users/submit-applicant) and prepare the documents before signing. - The signature does not match the applicant's full name, or the date is not today's date. - The caller belongs to a reliance-agreement organization and cannot sign on behalf of customers. **Error Messages** | `errorText` | Trigger | |-------------|---------| | `"No applicant details"` | The application has no applicant record to validate the signature against. | | `"Invalid date"` | `date` cannot be parsed as a date. | | `"Signature date should be today’s date. Please update the date and click Sign."` | `date` is not today's date in Central Time. | | `"Signature should be the same as full name of the applicant"` | `signature` does not match the applicant's full name. | | `"Signature should be the same as full name of the primary contact"` | On an entity application, `signature` does not match the primary contact's full name. | | `"This operation should be performed by your organization"` | The caller's organization has a reliance agreement, and the caller cannot sign on behalf of customers. |

Authentication

AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Request

This endpoint expects an object.
customerApplicationIdlongRequired
agreementReadConfirmationbooleanRequired
signaturestringRequired<=8192 characters
datestringRequired<=8192 characters
agreementIdslist of longsRequired

Response

AgreementDocumentsResponse
errorTextstring<=8192 characters

Non-empty if the request failed

successHashCodelong