eVault
These endpoints accept the ID of any of an order’s document folders, including the
lender’s internal Team Documents folder — the team_documents ID returned by
GET /lender/orders and GET /lender/order/<order_id>.
Team Documents is governed by its own permission family, separate from the eVault permissions. When the supplied ID is an order’s Team Documents folder, the authenticated user’s role must grant the permission matching the operation:
| Operation | Team Documents permission |
|---|---|
| Get eVault by ID | team_documents_view |
| Get Document | team_documents_download |
| Upload Document | team_documents_upload |
| Delete Document | team_documents_delete |
These permissions are off by default in every standard role template, so an
administrator must enable them explicitly. A caller whose role lacks the matching
permission receives 403 with {"error": "You do not have permission to perform this action."}. Every other eVault — the appraiser-facing eVault, the contract (P&S)
eVault, and the rest — is unaffected by these permissions.
Get eVault by ID
Section titled “Get eVault by ID”This endpoint returns an eVault object.
HTTP Request
Section titled “HTTP Request”GET https://sandbox.reggora.io/lender/evault/<evault_id>
URL Parameters
Section titled “URL Parameters”| Parameter | Description |
|---|---|
| evault_id | The ID of the eVault. May be an order’s team_documents ID, which requires the team_documents_view permission. |
Example Request
Section titled “Example Request”import requests
headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY)}
response = requests.get('https://sandbox.reggora.io/lender/evault/<evault_id>', headers=headers)Example Response
Section titled “Example Response”{ "data": { "evault": { "id": "5c4f16764672bb00105ea5f9", "documents": [{ "document_name": "test.pdf", "document_id": "24bab39a-4404-11e8-ba10-02420a050006", "upload_datetime": "2018-04-19T15:02:02.157Z" }] } }, "status": 200}Get Document
Section titled “Get Document”This endpoint returns a file object specified by the evault ID and the document ID.
HTTP Request
Section titled “HTTP Request”GET https://sandbox.reggora.io/lender/evault/<evault_id>/<document_id>
URL Parameters
Section titled “URL Parameters”| Parameter | Description |
|---|---|
| evault_id | The ID of the eVault. May be an order’s team_documents ID, which requires the team_documents_download permission. |
| document_id | The ID of the document. |
Example Request
Section titled “Example Request”import requests
headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY)}
response = requests.get('https://sandbox.reggora.io/lender/evault/<evault_id>/<document_id>', headers=headers)The above command returns a file object. The file sending is implemented with the flask send_file extension.
Upload Document
Section titled “Upload Document”This endpoint allows you to upload a document to an evault and returns the ID of the document.
HTTP Request
Section titled “HTTP Request”POST https://sandbox.reggora.io/lender/evault
Request Body Parameters
Section titled “Request Body Parameters”| Parameter | Description | Required |
|---|---|---|
| id | The id of the eVault you are uploading to. May be an order’s team_documents ID, which requires the team_documents_upload permission. | True |
| file | The file you want to upload | True |
Example Request
Section titled “Example Request”import requests
headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY)}
body = { "id": "24bab39a-4404-11e8-ba10-02420a050006" "file": File, # Required}
response = requests.post('https://sandbox.reggora.io/lender/evault', json=body, headers=headers)Example Response
Section titled “Example Response”{ "data": "5c4f16764672bb00105ea5f9", "status": 200}Upload P&S
Section titled “Upload P&S”This endpoint allows you to upload a P&S to an order and returns the ID of the P&S document.
HTTP Request
Section titled “HTTP Request”POST https://sandbox.reggora.io/lender/p_and_s
Request Body Parameters
Section titled “Request Body Parameters”| Parameter | Description | Required |
|---|---|---|
| id | The id of the Order you are uploading the Purchase and Sale agreement to | True |
| file | The file you want to upload | True |
| document_name | The name of the document to be uploaded | False |
Example Request
Section titled “Example Request”import requests
headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY)}
body = { "id": "5c4f16764672bb00105ea472" "file": File, # Required "document_name": "my_test.pdf" #This is an optional parameter}
response = requests.post('https://sandbox.reggora.io/lender/p_and_s', json=body, headers=headers)Example Response
Section titled “Example Response”{ "data": "5c4f16764672bb00105ea5f9", "status": 200}Delete Document
Section titled “Delete Document”This endpoint allows you to delete a document from the evault.
HTTP Request
Section titled “HTTP Request”DELETE https://sandbox.reggora.io/lender/evault
Request Body Parameters
Section titled “Request Body Parameters”| Parameter | Description | Required |
|---|---|---|
| id | The ID of the eVault of the document you are deleting. May be an order’s team_documents ID, which requires the team_documents_delete permission. | True |
| document_id | the ID of the document you are deleting | True |
Example Request
Section titled “Example Request”import requests
headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY)}
body = { 'id': '524523ff2d2d223d23', 'document_id': '00a1eb9e-ba6a-11e9-b584-0242ac120002',}
response = requests.delete('https://sandbox.reggora.io/lender/evault', json=body, headers=headers)Example Response
Section titled “Example Response”{ "data": "Your document has been deleted", "status": 200}