These sites have no public API. Open the listing, select-all (Ctrl/Cmd+A), copy, and paste the page text below with the URL. The portal extracts price, beds, baths, sqft, year built, lot, taxes, HOA dues, and the insurance estimate (Redfin payment-calculator lines) into the selected deal. Always sanity-check the parsed values. Photos: paste image URLs in the deal's Photos box.
Setup — feedback webhook + CSM dashboard (uses your “Deal Round Feedback Record” Google Sheet)
In Google Sheets open the Feedback Record → Extensions → Apps Script → paste this → Deploy → New deployment → Web app (Execute as: Me; Access: Anyone) → copy the URL into the webhook field above. doPost logs client submissions; doGet feeds the CSM dashboard (“Copy CSM dashboard link”).
var SHEET_ID = '1zZM1Oz6bURuJ_8PjRkKXR-31Z1es66AIBBBwVRZSs4Y';
function doPost(e){
var d = JSON.parse(e.postData.contents);
var sh = SpreadsheetApp.openById(SHEET_ID).getSheets()[0];
d.deals.forEach(function(x){
sh.appendRow([x.address, x.market, x.priceValue, x.property, x.cashFlow,
x.taxImpact, x.overallFit, x.offer, x.reason,
d.client, 'Round ' + d.round, new Date()]);
});
return ContentService.createTextOutput('ok');
}
function doGet(e){
var rows = SpreadsheetApp.openById(SHEET_ID).getSheets()[0].getDataRange().getValues();
return ContentService.createTextOutput(JSON.stringify(rows))
.setMimeType(ContentService.MimeType.JSON);
}
Setup — HubSpot integration (optional, no backend needed)
The portal submits each scorecard to a HubSpot form via the public Forms API — submissions land on the client’s contact timeline and can trigger workflows (create a deal, notify the CSM, update lifecycle stage). Setup: in HubSpot go to Marketing → Forms → create a form with these single-line/dropdown fields (internal names must match exactly): email, deal_address, deal_round, score_market, score_price_value, score_property, score_cash_flow, score_tax_impact, score_overall_fit, offer_intent, pass_reason. Then copy your Portal ID (Settings → Account Setup) and the Form GUID (from the form’s embed code or URL) into the fields above, and set the client’s email on each round. Suggested workflow: trigger on form submission where offer_intent = Yes → create Deal in “Offer Requested” stage + Slack/email the CSM.
✅ Scores received — thank you! We review same-day and your ratings tighten the next round.
Under 2 minutes per deal. Your scores drive what we source next — and speed keeps you on pace to be under contract inside 30 days.