### Vendor Get Client List - Example Request Source: https://sandbox.reggora.io/docs/vendor/client-management Python example using requests to call GET https://sandbox.reggora.io/vendor/clients. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } response = requests.get('https://sandbox.reggora.io/vendor/clients', headers=headers) ``` -------------------------------- ### Vendor Get Product List By Client - Example Request Source: https://sandbox.reggora.io/docs/vendor/client-management Python example using requests to call GET https://sandbox.reggora.io/vendor/products/. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } response = requests.get('https://sandbox.reggora.io/vendor/products/', headers=headers) ``` -------------------------------- ### Example Request: GET /lender/loans Source: https://sandbox.reggora.io/docs/lender/loans Python example using the requests library to call the GET /lender/loans endpoint. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY. The query_params include offset, limit, and ordering. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } # Just an example query_params = { 'offset': 0, 'limit': 10, 'ordering': '-created', } response = requests.get('https://sandbox.reggora.io/lender/loans', params=query_params, headers=headers) ``` -------------------------------- ### Get All Revisions - Example Request (Python) Source: https://sandbox.reggora.io/docs/lender/revisions Python example using requests to GET all revisions for a specific order. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY. The order_id is hardcoded in the URL. ```python import requests import json headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } response = requests.get('https://sandbox.reggora.io/lender/order/617c30da9967580008c40440/revision', headers=headers) ``` -------------------------------- ### Example Response for Get All Products Source: https://sandbox.reggora.io/docs/lender/products Example response from the GET /lender/products endpoint. It returns a data object containing a products array with fields id, product_name, amount, inspection_type, and requested_forms. The status is 200. ```json { "data": { "products": [ { "id": "5b50a31fc2b109000fc82af5", "product_name": "Products # 1AB", "amount": "300.01", "inspection_type": "interior", "requested_forms": "Product #1 Forms, Product #1 Extra Forms" }, { "id": "5b55d4c68d9472000fc432ef", "product_name": "5000", "amount": "5000.00", "inspection_type": "interior", "requested_forms": "1004 MC" }, { "id": "5beb226a828174000db1613e", "product_name": "Reggora Network Product", "amount": "500.00", "inspection_type": "interior", "requested_forms": null }, { "id": "5c2677c69121aa002245537c", "product_name": "Product 4", "amount": "100.00", "inspection_type": "exterior", "requested_forms": "unsupported forms" } ] }, "status": 200 } ``` -------------------------------- ### Vendor Get Client Branches by ID - Example Request Source: https://sandbox.reggora.io/docs/vendor/client-management Python example using requests to call GET https://sandbox.reggora.io/vendor/branches/. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } response = requests.get('https://sandbox.reggora.io/vendor/branches/', headers=headers) ``` -------------------------------- ### Example Request: GET vendor order by ID Source: https://sandbox.reggora.io/docs/vendor/order-management Python example using the requests library to call the vendor order endpoint. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY environment variables. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } response = requests.get('https://sandbox.reggora.io/vendor/order/', headers=headers) ``` -------------------------------- ### Get All Users Python Example Request Source: https://sandbox.reggora.io/docs/lender/users Example of how to perform a GET request to the users endpoint using the Python requests library, including authorization headers. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } response = requests.get('https://sandbox.reggora.io/lender/users?offset=&limit=', headers=headers) ``` -------------------------------- ### Get Order Example Response Source: https://sandbox.reggora.io/docs/lender/orders Example response for the Get Order endpoint. Shows the order object with fields such as status, priority, due_date, accepted_vendor, products, warranty status, loan_file, consumers, and follow-up order references. The response includes a status of 200. ```json { "data": { "order": { "id": "5c2e718cb61f76001adf9871", "status": "Inspection Scheduled", "priority": "Rush", "due_date": "2018-12-19 12:00:00", "inspection_date": "2018-12-24 21:00:00", "accepted_vendor": { "id": "5b859eecc5a0c9004e38dd8f", "firm_name": "__Alex's Test AMC Firm", "accepting_jobs": true, "company": "5b859eebc5a0c9004e38dd8d" }, "created": "2019-01-03 20:33:16.748000", "allocation_mode": "automatically", "branch_identifier": "5db851297a6980000aa01206", "requested_vendors": [], "inspection_complete": false, "conversation": "5c4f16764672bb00105ea5f9", "team_conversation": "5c4f16764672bb00105ea5f9", "evault": "5c4f16764672bb00105ea5f9", "contract_evault": "5c2e718cb61f76001adf9871", "cu_score": "2.5", "lca_score": "2.5", "ucdp_document_id": "18006805GD", "ead_document_id": "A000003293", "products": [ { "id": "5b55d4c68d9472000fc432ef", "product_name": "Product #1", "amount": "10.0" } ], "reggora_warranty": { "status": "warranty_declined", "warranty_investors": { "fannie_mae": { "investor_status": "investor_declined" }, "freddie_mac": { "investor_status": "investor_declined" } } }, "loan_file": { "id": "5b55d4c68d9472000fc432ae", "loan_number": "ABC", "subject_property_address": "100 Brighton Ave", "subject_property_city": "Boston", "subject_property_state": "MA", "subject_property_zip": "02135" }, "consumers": [{ "id": "5c33c716681f110034effc73", "full_name": "John Smith", "role": "borrower", "email": "john@reggora.com", "home_phone": "999-999-9999", "work_phone": "999-999-9999", "cell_phone": "999-999-9999", "is_primary_contact": true }], "is_follow_up": true, "primary_order": "60f06d1ad12b1051533adb0", "follow_up_orders": [ "60f06d1cd12b1051533adb1", "60f06d1cd12b1051533adb2" ], "has_been_reassigned": false, "active_order": "60f06d1cd12b1051533adb3", "total_fee": 10.0, "cancellation_reason": "" } }, "status": 200 } ``` -------------------------------- ### Vendor Get Product List By Client - Example Response Source: https://sandbox.reggora.io/docs/vendor/client-management Example JSON response from the vendor products endpoint. Contains an array of product objects with fields like id, description, amount, inspection_type, required_report_files, and requested_forms. The "..." placeholder indicates additional entries elided for brevity. ```json { "data": [ { "id": "5df85c1ed608de00343d7122", "description": "1004D - Appraisal Update", "amount": "150.00", "inspection_type": "interior", "required_report_files": "pdf", "requested_forms": [ "1004D - Appraisal Update" ] }, { "id": "5df85c1ed608de00343d715e", "description": "1004D - Final Inspection", "amount": "150.00", "inspection_type": "interior", "required_report_files": "xml", "requested_forms": [ "1004D - Final Inspection" ] }, { "id": "5df85c1ed608de00343d715e", "description": "1025", "amount": "75.00", "inspection_type": "interior", "required_report_files": "both", "requested_forms": [ "1025" ] }, "..." ], "status": 200 } ``` -------------------------------- ### Example Request to GET /vendor/orders Source: https://sandbox.reggora.io/docs/vendor/order-management Python example using the requests library to call the vendor orders endpoint. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY. The status parameter can filter by multiple statuses separated by commas; possible filters include created, finding_appraisers, accepted, inspection_scheduled, inspection_completed, submitted, revision_requested. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } # Just an example query_params = { 'offset': 0, 'limit': 10, # you can filter by multiple statuses, separate with commas 'status': 'accepted,inspection_scheduled', # possible filters: created, finding_appraisers, accepted, inspection_scheduled \ # inspection_completed, submitted, revision_requested } response = requests.get('https://sandbox.reggora.io/vendor/orders', params=query_params, headers=headers) ``` -------------------------------- ### Vendor Get Client List - Example Response Source: https://sandbox.reggora.io/docs/vendor/client-management Example JSON response from the vendor clients endpoint. Contains an array of client objects with fields like id, name, address, city, zip, email, and allow_counter_offer. The "..." placeholder indicates additional entries elided for brevity. ```json { "data": [ { "id": "5c2e718cb61f76001adf9871", "name": "Test Lender", "address": "123 Main St", "city": "Boston", "zip": "022020", "email": "test@lender.com", "allow_counter_offer": true }, { "id": "5d5ae5bb4f418c0009e09dfa", "name": "Test Lender 2", "address": "124 Main St", "city": "Boston", "zip": "022020", "email": "test2@lender.com", "allow_counter_offer": true }, "..." ], "status": 200 } ``` -------------------------------- ### Example Response: GET /lender/loans Source: https://sandbox.reggora.io/docs/lender/loans Sample JSON response from the GET /lender/loans endpoint. Shows a loan object with fields such as id, loan_number, loan_officer, appraisal_type, and consumers. The "..." placeholder indicates additional entries elided for brevity. ```json { "data": { "loans": [ { "id": "5c33c6b1681f110034effc72", "loan_number": "1002918281901", "loan_officer": { "id": "5b5b19d3c643b3000f8f2857", "email": "hello@world.com", "phone_number": "555-444-1234", "firstname": "John", "lastname": "Doe" }, "appraisal_type": "Refinance", "due_date": "2018-12-19 12:00:00", "created": "2019-01-07 21:37:53.938000", "updated": "2019-01-07 21:37:53.938000", "related_order": "5c33c716681f111134effc73", "subject_property_address": "100 Mass Ave", "subject_property_city": "Boston", "subject_property_state": "MA", "subject_property_zip": "02192", "case_number": "10029MA", "loan_type": "FHA", "matched_products": ["5b5b19d3c643b3000f8f2859"], "consumers": [{ "id": "5c33c716681f110034effc73", "full_name": "John Smith", "role": "borrower", "email": "john@reggora.com", "home_phone": "999-999-9999", "work_phone": "999-999-9999", "cell_phone": "999-999-9999", "is_primary_contact": true }] }, "..." ] }, "status": 200 } ``` -------------------------------- ### Example Request: List Branches with Python requests Source: https://sandbox.reggora.io/docs/lender/branch Sends a GET request to the List Branches endpoint with Authorization and integration headers. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY variables to be defined. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } response = requests.get('https://sandbox.reggora.io/lender/branch', headers=headers) ``` -------------------------------- ### Get Document - Example Request (Python) Source: https://sandbox.reggora.io/docs/lender/evault Python requests example to retrieve a document from an eVault using evault_id and document_id. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY. The response is a file object, implemented with Flask's send_file extension. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } response = requests.get('https://sandbox.reggora.io/lender/evault//', headers=headers) ``` -------------------------------- ### Get All Users Example Response Source: https://sandbox.reggora.io/docs/lender/users A sample JSON response body returned by the GET users endpoint, indicating a successful 200 status. ```json { "data": { "users": [ { "id": "5c33c6b1681f110034effc72", "email": "fake@email.com", "phone_number": "1231231234", "cell_number": "1231231235", "firstname": "John", "lastname": "Doe", "created": "2019-01-09T12:00:00.000Z", "nmls_id": "12345", "matched_users": [ { "id": "5c33c6b1681f110034effc72", "email": "more_fake@email.com", "firstname": "Jane", "lastname": "Doe" }, "..." ], "role": "Admin" }, "..." ] }, "status": 200 } ``` -------------------------------- ### Get All Vendors - Example Response JSON Source: https://sandbox.reggora.io/docs/lender/vendors Example response for the Get All Vendors endpoint. The response contains a data object with a vendors array; each vendor includes id, firm_name, email, phone, and accepting_jobs. The "..." placeholder indicates additional entries elided for brevity. ```json { "data": { "vendors": [ { "id": "5c33c6b1681f110034effc72", "firm_name": "Test Vendor", "email": "test@vendor.com", "phone": "1231231234", "accepting_jobs": true }, "..." ] }, "status": 200 } ``` -------------------------------- ### Get All User Roles Response Source: https://sandbox.reggora.io/docs/lender/users Example JSON response containing a list of user roles with their respective names and IDs. ```json { "data": [ { "name": "Admin", "id": "5e4dad9e13a19201a460a22a" }, { "name": "Loan Officer", "id": "5e4dad9e13a19201a460a22b" }, { "name": "Unmatched Processor", "id": "5e4dad9e13a19201a460a22c" }, { "name": "Matched Processor", "id": "5e4dad9e13a19201a460a22d" }, { "name": "Access All Processor", "id": "5e4dad9e13a19201a460a22e" } ] } ``` -------------------------------- ### Get eVault by ID - Example Request (Python) Source: https://sandbox.reggora.io/docs/lender/evault Python requests example to retrieve an eVault by its ID. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY. The response is a JSON object with the eVault data. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } response = requests.get('https://sandbox.reggora.io/lender/evault/', headers=headers) ``` -------------------------------- ### Example response for Get Review Documents Source: https://sandbox.reggora.io/docs/lender/review-documents Example JSON response from the Get Review Documents endpoint. Shows a 200 status with a data object containing a count and a results array; each result includes the document id, order_id, submission_version, timestamps, file_type, and file_name. ```json { "status": 200, "data": { "count": 2, "results": [ { "id": "688d46fe148f8c02179954f4", "order_id": "688d421b2bfb82f7c92d4982", "submission_version": 2, "created": "2025-08-01 23:00:14.024000", "updated": "2025-08-01 23:00:14.024000", "file_type": "review_artifact", "file_name": "review-artifact-6d92a475-a507-4e5b-8052-1c44171513ec.pdf" } ] } } ``` -------------------------------- ### Get All Products with requests Source: https://sandbox.reggora.io/docs/lender/products Use this Python snippet to call the GET /lender/products endpoint. It requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY to be defined. The query parameters offset, limit, and ordering are optional and used for pagination and sorting. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } # Just an example query_params = { 'offset': 0, 'limit': 10, 'ordering': '-created', } response = requests.get('https://sandbox.reggora.io/lender/products', params=query_params headers=headers) ``` -------------------------------- ### Get Product Response Source: https://sandbox.reggora.io/docs/lender/products This is the example response for the Get Product endpoint. It shows the product object with fields such as id, product_name, amount, inspection_type, and requested_forms, along with a status of 200. ```json { "data": { "product": { "id": "5b55d4c68d9472000fc432ef", "product_name": "Product #1", "amount": "5000.00", "inspection_type": "interior", "requested_forms": "1004 MC" } }, "status": 200 } ``` -------------------------------- ### Example response for review notes Source: https://sandbox.reggora.io/docs/lender/review-notes Example JSON response from the GET /lender/review//notes endpoint. Shows a successful 200 status with a count of 1 and a single review note object containing id, body, order_id, submission_version, and last_edited fields. ```json { "status": 200, "data": { "count": 1, "results": [ { "id": "688d46fe148f8c02179954f5", "body": "This is a review note for the lender.", "order_id": "688d421b2bfb82f7c92d4982", "submission_version": 1, "last_edited": "2025-08-01 23:00:14.024000" } ] } } ``` -------------------------------- ### Delete User Example Request Source: https://sandbox.reggora.io/docs/lender/users Python example using the requests library to perform the DELETE operation with authorization headers. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } response = requests.delete('https://sandbox.reggora.io/lender/users/', headers=headers) ``` -------------------------------- ### Request Revision - Example Request (Python) Source: https://sandbox.reggora.io/docs/lender/revisions Python example using requests to POST a revision request. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY. The payload includes title and text fields, and the order_id is hardcoded in the URL. ```python import requests import json headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } # Just an example payload = json.dumps({ "title": "Short Title of Revision Request", "text": "Longer description of why a revision is being requested." }) response = requests.post('https://sandbox.reggora.io/lender/order/617c30da9967580008c40440/revision', headers=headers, data=payload) ``` -------------------------------- ### GET loan request (Python) Source: https://sandbox.reggora.io/docs/lender/loans Sends a GET request to retrieve a loan by ID. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY. The response is a JSON object with loan details. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } response = requests.get('https://sandbox.reggora.io/lender/loan/', headers=headers) ``` -------------------------------- ### Create a Loan (Basic) - Example Request Source: https://sandbox.reggora.io/docs/lender/loans Sends a POST request to create a basic loan. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY environment variables. The body includes required and optional loan fields. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } body = { "loan_number": "2", "loan_officer": "5b5b19d3c643b3000f8f2857", "appraisal_type": "Refinance", "due_date": "2018-12-19T12:00:00Z", "subject_property_address": "100 Mass Ave", "subject_property_city": "Boston", "subject_property_state": "MA", "subject_property_zip": "02192", "case_number": "10029MA", "loan_type": "FHA" } response = requests.post('https://sandbox.reggora.io/lender/loan', json=body, headers=headers) ``` -------------------------------- ### Get Branch - Example Response Source: https://sandbox.reggora.io/docs/lender/branch This is the example response for the Get Branch endpoint. It shows the structure of the returned branch object, including loan_officers, parent_branch_identifier, and exists_in_hierarchy. The status is 200. ```json { "data": { "branch": { "branch_id": "5d6ecfdb69655808d5b3d012", "branch_identifier": "test_branch_1", "name": "test branch", "address": "123 Main St", "city": "Boston", "state": "MA", "ZIP": "90210", "branch_classification": "retail", "is_joint_venture": false, "contact_phone_number": "555-555-5555", "contact_email": "email@testreggora.com", "loan_officers": [ { "id": "6373c8fcd74957d911629dcf", "email": "email@testreggora.com", "firstname": "Homer", "lastname": "Simpson", "phone_number": "1234567890", "created": "2022-11-15 17:15:50.307000" } ], "parent_branch_identifier": "test_branch_2", "exists_in_hierarchy": true } }, "status": 200 } ``` -------------------------------- ### Get eVault by ID - Example Response (JSON) Source: https://sandbox.reggora.io/docs/lender/evault Example JSON response for the Get eVault by ID endpoint, showing the eVault object with its documents array and status 200. ```json { "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 } ``` -------------------------------- ### Counter Offer - Example Request (Python) Source: https://sandbox.reggora.io/docs/vendor/order-management Sends a PUT request to counter offer the lender. The body includes optional due_date and fee parameters. If accepted, the order is assigned to your company. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } body = { 'due_date': '2018-12-19T12:00:00Z', 'fee': 345.67 } response = requests.put('https://sandbox.reggora.io/vendor/order//counter', headers=headers, data=body) ``` -------------------------------- ### Get All Revisions - Example Response (JSON) Source: https://sandbox.reggora.io/docs/lender/revisions Example JSON response for the GET revisions endpoint. Shows a list of revisions with fields like revision_id, created, resolved, text, title, type, and attached_documents. The response includes a status of 200. ```json { "data": { "revisions": [ { "revision_id": "4d52563b-915a-413c-9fcd-1408dd24a763", "created": "2023-01-01 16:00:00.000000", "resolved": null, "text": "Longer description of why a revision is being requested.", "title": "Short Title of Revision Request", "type": "revision", "attached_documents": {} }, { "revision_id": "4d52563b-915a-413c-9fcd-1408dd24a764", "created": "2023-01-02 16:00:00.000000", "resolved": null, "text": "This revision is a Reconsideration of Value request.", "title": "ROV", "type": "reconsideration_of_value", "attached_documents": { "id": "688249d4b9af270062a66ab4", "documents": [ { "id": "81e5c4b2-689e-11f0-81bb-66dcfbaac29d", "evault_id": "688249d4b9af270062a66ab4", "document_name": "reconsideration_of_value.pdf", "upload_datetime": "2023-01-02 16:00:00.000000", "document_url": "https://sandbox.reggora.io/lender/evault/688249d4b9af270062a66ab4/81e5c4b2-689e-11f0-81bb-66dcfbaac29d", "document_owner": null, "document_type": "document" } ] } } ] }, "status": 200 } ``` -------------------------------- ### Accept Order - Example Request (Python) Source: https://sandbox.reggora.io/docs/vendor/order-management Sends a PUT request to accept an order. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY. The order_id in the URL must be replaced with the actual order ID. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } response = requests.put('https://sandbox.reggora.io/vendor/order//accept', headers=headers) ``` -------------------------------- ### Get Review Result - Example Response Source: https://sandbox.reggora.io/docs/lender/loans This is the example response from the Get Review Result endpoint. It shows the structure of the returned data, including the review_data object with fields like cu_score, lca_score, and order_id, as well as download links for the result and SSR documents. The status is 201. ```json { "data": [ { "id": "6193c4ad9681550007a795c7", "source": "external", "created": "2021-11-16 14:48:13.578000", "review_data": { "sample": 1, "cu_score": "1.2", "lca_score": "2", "case_id": "xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx", "order_id": "xxxxxxxx-xxxx-Mxxx-Nxxx-yyyyyyyyyyyy", "reggora_order_id": "62ab53800000000000000000", "reggora_loan_id": "62aaaac00000000000000000", "ucdp_document_id": "10000A0000", "ead_document_id": "A000010000" }, "order_id": "62ab53800000000000000000", "result": "https://sandbox.reggora.io/lender/review-evault/6193c4ad9681550007a795c7/result", "fha_ssr": "https://sandbox.reggora.io/lender/review-evault/6193c4ad9681550007a795c7/fha_ssr", "fannie_ssr": "https://sandbox.reggora.io/lender/review-evault/6193c4ad9681550007a795c7/fannie_ssr", "freddie_ssr": "https://sandbox.reggora.io/lender/review-evault/6193c4ad9681550007a795c7/freddie_ssr" } ], "status": 201 } ``` -------------------------------- ### Create a Product with POST /lender/product Source: https://sandbox.reggora.io/docs/lender/products Creates a product via POST to /lender/product. Requires a Bearer token and integration key in headers, and a JSON body with product_name, amount, inspection_type, and optional requested_forms. The response returns the created product ID in the data field with status 200. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } body = { 'product_name': 'Full Appraisal', 'amount': '100.00', 'inspection_type': 'interior', 'requested_forms': '1004MC, BPO' } response = requests.post('https://sandbox.reggora.io/lender/product', json=body, headers=headers) ``` ```json { "data": "5b55d4c68d9472000fc432ef", "status": 200 } ``` -------------------------------- ### GET loan response (JSON) Source: https://sandbox.reggora.io/docs/lender/loans Example JSON response from the GET loan endpoint. Contains loan details such as id, loan_number, loan_officer, subject_property_address, and consumers. The status field is 200. ```json { "data": { "loan": { "id": "5c33c716681f110034effc73", "loan_number": "1", "loan_officer": { "id": "5b5b19d3c643b3000f8f2857", "email": "hello@world.com", "phone_number": "555-444-1234", "firstname": "John", "lastname": "Doe" }, "appraisal_type": "Refinance", "due_date": "2018-12-19 12:00:00", "created": "2019-01-07 21:39:34.018000", "updated": "2019-01-07 21:39:34.018000", "related_order": "5c33c716681f111134effc73", "subject_property_address": "100 Mass Ave", "subject_property_city": "Boston", "subject_property_state": "MA", "subject_property_zip": "02192", "case_number": "10029MA", "loan_type": "FHA", "matched_products": ["5b5b19d3c643b3000f8f2859"], "consumers": [{ "id": "5c33c716681f110034effc73", "full_name": "John Smith", "role": "borrower", "email": "john@reggora.com", "home_phone": "999-999-9999", "work_phone": "999-999-9999", "cell_phone": "999-999-9999", "is_primary_contact": true }] } }, "status": 200 } ``` -------------------------------- ### Get Product with requests.get Source: https://sandbox.reggora.io/docs/lender/products Use this snippet to retrieve a specific product by its ID from the lender product endpoint. It requires the REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY environment variables. The response contains the product details and a status code. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } response = requests.get('https://sandbox.reggora.io/lender/product/', headers=headers) ``` -------------------------------- ### Vendor Get Client Branches by ID - Example Response Source: https://sandbox.reggora.io/docs/vendor/client-management Example JSON response from the vendor branches endpoint. Contains an array of branch objects with fields like branch_id, branch_identifier, and branch_name. ```json { "data": [ { "branch_id": "5d936b765ed25e003424a3e5", "branch_identifier": "BA", "branch_name": "Branch A" }, { "branch_id": "5de9581f02c5580147af8586", "branch_identifier": "2NDB", "branch_name": "Second Branch" }, { "branch_id": "5de96cf58ba6a000345e10e7", "branch_identifier": "B003", "branch_name": "Branch Three" } ], "status": 200 } ``` -------------------------------- ### Fee Escalation Example Request (Python) Source: https://sandbox.reggora.io/docs/vendor/order-management Sends a POST request to the fee-escalation endpoint with the desired fee in the body. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY. The response indicates the request is pending. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } body = { 'fee': 345.67 } response = requests.post('https://sandbox.reggora.io/vendor/order//fee-escalation', headers=headers, data=body) ``` -------------------------------- ### Vendor Get eVault by ID Response Source: https://sandbox.reggora.io/docs/vendor/evault-management Example JSON response containing the eVault ID and associated documents. ```json { "data": { "id": "5c4f16764672bb00105ea5f9", "documents": [{ "document_name": "test.pdf", "document_id": "24bab39a-4404-11e8-ba10-02420a050006", "upload_datetime": "2018-04-19T15:02:02.157Z" }] }, "status": 200 } ``` -------------------------------- ### Complete Inspection - Example Request (Python) Source: https://sandbox.reggora.io/docs/vendor/order-management Sends a PUT request to set the inspection date on an order. The body includes an optional 'inspection_completed' key with a UTC datetime. Requires REGGORA_AUTH_TOKEN and REGGORA_INTEGRATION_KEY. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } body = { 'inspection_completed': '2019-04-11T21:00:00Z' } response = requests.put('https://sandbox.reggora.io/vendor/order//complete_inspection', headers=headers, data=body) ``` -------------------------------- ### Get Conversation by ID Request Source: https://sandbox.reggora.io/docs/lender/conversation Example Python request to retrieve a conversation object using the requests library. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } response = requests.get('https://sandbox.reggora.io/lender/conversation/', headers=headers) ``` -------------------------------- ### Example Response for Orders Endpoint Source: https://sandbox.reggora.io/docs/lender/orders Example response for the orders endpoint. Shows a single order object with fields such as id, status, priority, due_date, accepted_vendor, products, loan_file, consumers, and warranty status. The "..." placeholder indicates additional entries elided for brevity. ```json { "data": { "orders": [ { "id": "5c1c05f532b211000e15302a", "status": "Submitted", "priority": "Normal", "due_date": "2018-12-28 12:00:00", "inspection_date": "2018-12-28 05:00:00", "accepted_vendor": { "id": "5b859eebc5a0c9004e38dd8e", "firm_name": "__Alex's Test AMC Firm", "accepting_jobs": true, "company": "5b859eebc5a0c9004e38dd8d" }, "conversation": "5c4f16764672bb00105ea5f9", "contract_evault": "5c2e718cb61f76001adf9871", "cu_score": "2.5", "lca_score": "2.5", "ucdp_document_id": "18006805GD", "ead_document_id": "A000003293", "team_conversation": "5c4f16764672bb00105ea5f9", "created": "2018-12-20 21:13:25.102000", "allocation_mode": "manually", "branch_identifier": "5db851297a6980000aa01206", "requested_vendors": [ { "id": "5b859eebc5a0c9004e38dd8e", "firm_name": "__Alex's Test AMC Firm", "accepting_jobs": true, "company": "5b859eebc5a0c9004e38dd8d" } ], "inspection_complete": true, "products": [ { "id": "5b55d4c68d9472000fc432ef", "product_name": "5000", "amount": "7000.00" } ], "evault": "5c4f16764672bb00105ea5f9", "reggora_warranty": { "status": "warranty_declined", "warranty_investors": { "fannie_mae": { "investor_status": "investor_declined" }, "freddie_mac": { "investor_status": "investor_declined" } } }, "loan_file": { "id": "5b55d4c68d9472000fc432ab", "loan_number": "10000030", "subject_property_address": "100002 Sun Street", "subject_property_city": "Brighton", "subject_property_state": "MA", "subject_property_zip": "02135" }, "consumers": [{ "id": "5c33c716681f110034effc73", "full_name": "John Smith", "role": "borrower", "email": "john@reggora.com", "home_phone": "999-999-9999", "work_phone": "999-999-9999", "cell_phone": "999-999-9999", "is_primary_contact": true }], "is_follow_up": true, "primary_order": "60f06d1ad12db1051533adb0", "follow_up_orders": [ "60f06d1cd12db1051533adb1", "60f06d1cd12db1051533adb2" ], "has_been_reassigned": false, "active_order": "60f06d1cd12db1051533adb3", "cancellation_reason": "" }, "..." ], "count": 274 }, "status": 200 } ``` -------------------------------- ### Create Branch Response Example Source: https://sandbox.reggora.io/docs/lender/branch The JSON response returned upon successfully creating a new branch. ```json { "data": { "branch": { "branch_id": "5d6ecfdb69655808d5b3d012", "branch_identifier": "test_branch_1", "name": "test branch", "address": "123 Main St", "city": "Boston", "state": "MA", "ZIP": "90210", "branch_classification": "retail", "is_joint_venture": false, "contact_phone_number": "555-555-5555", "contact_email": "email@testreggora.com", "loan_officers": [], "parent_branch_identifier": "test_branch_2", "exists_in_hierarchy": true } }, "status": 201 } ``` -------------------------------- ### Get Conversation - Example Response Source: https://sandbox.reggora.io/docs/vendor/conversation-management JSON response for the Get Conversation endpoint. The top-level id is the conversation ID; nested sender.id is the user ID of the message sender. The "..." placeholder indicates additional entries elided for brevity. ```json { "data": { "id": "5c4f16764672bb00105ea5f9", "messages": [ { "id": "5c4f16764672bb00105ea5f9", "message": "Reggora is the best!", "sender": { "id": "5c4f16764672bb00105ea5f9", "name": "Johnny Cash" }, "sent_time": "2019-04-11 21:00:00" }, "..." ] }, "status": 200 } ``` -------------------------------- ### Create Branch Request in Python Source: https://sandbox.reggora.io/docs/lender/branch Example of how to send a POST request to the branch creation endpoint using the requests library. ```python import requests headers = { 'Authorization': 'Bearer {}'.format(REGGORA_AUTH_TOKEN), 'integration': '{}'.format(REGGORA_INTEGRATION_KEY) } body = { "branch_identifier" : "Location 123456", "name" : "New Branch", "address" : "822 Main St", "branch_classification" : "retail", "is_joint_venture": False, "city" : "Boston", "state" : "MA", "ZIP" : "06201", "contact_phone_number" : "555-555-5555", "contact_email" : "user@reggorapartner.com", "parent_branch_identifier": "ParentBranch202" } response = requests.post('https://sandbox.reggora.io/lender/branch', headers=headers) ```