# Reonomy URL Construction Research

## Goal
Investigate direct URL construction for advanced search that ensures results have phone and email.

---

## Current Findings

### Help Center Confirms Ownership Tab Filters
From `https://help.reonomy.com/en/articles/3688399-can-i-search-by-type-of-ownership-information`:

> "The Ownership tab in our search filters allows you to search by Owner Contact Information that Includes Phone Number, Includes Email Address or Includes Mailing Address."

**Key Insight**: Search filters exist for:
- **Includes Phone Number** - Filter for properties with phone contacts
- **Includes Email Address** - Filter for properties with email contacts
- **Includes Mailing Address** - Filter for properties with mailing address

---

### URL Patterns Known

From previous scraper memory (`REONOMY-SCRAPER-MEMORY.md`):

```javascript
// Search Page (property list)
https://app.reonomy.com/#!/search/{search-id}

// Property Page (with tabs)
https://app.reonomy.com/#!/property/{property-id}

// Ownership Page (WITH CONTACT INFO) ← KEY!
https://app.reonomy.com/#!/search/{search-id}/property/{property-id}/ownership
```

---

## Open Questions

### URL Parameter Support (Unknown)

1. **Can search parameters be passed directly in URL?**
   - Unknown if Reonomy supports: `/#!/search?q=eatontown+nj`
   - Unknown if filters can be passed: `/#!/search?phone=true&email=true`

2. **Do filters generate shareable URLs?**
   - Unknown if applying "Has Phone" filter creates a shareable URL
   - Unknown if URL can encode: location + phone filter + email filter

3. **Does Reonomy use query strings or hash-based routing?**
   - Current evidence: Hash-based routing (`#!/search/`, `#!/property/`)
   - Unsure if query params work: `?filter=phone:true,email:true`

---

## Next Investigation Steps

### Method 1: Manual Search & URL Capture
1. Log in to Reonomy
2. Navigate to search page
3. Apply "Has Phone" filter
4. Apply "Has Email" filter
5. Enter location (e.g., "Eatontown, NJ")
6. Click search
7. **Capture resulting URL** — inspect full URL after filters applied
8. Test if captured URL can be used directly in new browser session

### Method 2: Help Center Documentation Review
1. Search Help Center for "URL patterns"
2. Search for "advanced search" filters
3. Search for "shareable links" or "direct URLs"
4. Look for API or query string documentation

### Method 3: Browser DevTools Investigation
1. Open Reonomy in Chrome/Firefox with DevTools
2. Perform a search with filters
3. Monitor Network tab in DevTools during search
4. Look for API calls that reveal filter parameters
5. Test reconstructed URLs in incognito mode

---

## Expected URL Pattern (Hypothesis)

Based on typical SPA patterns, possible structure:

```
# Hypothesis 1: Hash-based query params
https://app.reonomy.com/#!/search/location/eatontown+nj/filters/phone:true,email:true

# Hypothesis 2: Query string + hash
https://app.reonomy.com/?phone=true&email=true#!/search/eatontown+nj

# Hypothesis 3: Encoded filter object
https://app.reonomy.com/#!/search?q=%7B%22location%22%3A%22Eatontown%20NJ%22%2C%22filters%22%3A%7B%22phone%22%3Atrue%2C%22email%22%3Atrue%7D%7D

# Hypothesis 4: Multiple path segments
https://app.reonomy.com/#!/search/phone/true/email/true/location/eatontown+nj
```

---

## Status

| Aspect | Status |
|--------|--------|
| **Help center confirms filters exist** | ✅ Confirmed |
| **Filter names** | ✅ "Includes Phone Number", "Includes Email Address" |
| **Direct URL construction possible** | ❓ Unknown - needs testing |
| **Query string support** | ❓ Unknown - needs testing |
| **Hash routing confirmed** | ✅ Yes (`#!/search/`, `#!/property/`) |
| **Search ID extraction** | ✅ Works (from previous scraper) |

---

## What User Can Do to Help

Before I do more investigation, user could:
1. **Log in to Reonomy and perform a search manually** with "Has Phone" and "Has Email" filters
2. **Copy the full URL** from the browser address bar after applying filters
3. **Share that URL** with me so I can analyze the pattern
4. **Test if URL works in incognito mode** to confirm it's shareable and not session-dependent

Alternatively, if user has access to:
- Reonomy account with API access (check documentation for API endpoints)
- Internal Reonomy documentation not public
- Sales/support contact at Reonomy for direct questions

---

**Next step**: Awaiting user-provided URL or manual investigation results to proceed.
