Fetch Saved Searches
Retrieve all saved property searches for a contact
Returns all non-deleted saved searches for a given contact, ordered by creation date (newest first). Each search includes its filter criteria, notification frequency, last and next run timestamps, result counts, and status.
Requires a valid `api_key` in the JSON request body
Tip:
Send `{"help": true}` as the request body to receive full usage documentation and a sample response directly from the endpoint — no authentication required for help mode.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
api_key |
body | string |
Yes | Your Zyntro API key |
org_id |
body | string |
Yes | Your organization UUID |
contact_id |
body | string |
Yes | The UUID of the contact to retrieve saved searches for |
Request Body
Content-Type: application/json
Example
json
{
"org_id": "YOUR_ORG_ID",
"api_key": "YOUR_API_KEY",
"contact_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
Code Samples
bash
curl -X POST https://app.zyntrohq.com/public/real_estate/fetchSavedSearches \
-H "Content-Type: application/json" \
-d '{
"api_key": "YOUR_API_KEY",
"org_id": "YOUR_ORG_ID",
"contact_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}'
Response
200
Saved searches retrieved
json
{
"data": [
{
"name": "Barrie Detached 3+ BR under $1M",
"uuid": "e7f8a9b0-c1d2-3456-e7f8-a9b0c1d23456",
"status": "Active",
"filters": {
"city": "Barrie",
"min_beds": 3,
"max_price": 1000000,
"min_price": 500000,
"property_type": "Residential",
"property_sub_type": "Detached"
},
"frequency": "weekly",
"created_at": "2026-03-01 10:30:00",
"created_by": "member",
"updated_at": "2026-03-31 12:00:00",
"last_run_at": "2026-03-31 12:00:00",
"next_run_at": "2026-04-07 12:00:00",
"last_results_count": 42,
"notification_email": "[email protected]"
},
{
"name": "Innisfil Waterfront",
"uuid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"status": "Active",
"filters": {
"city": "Innisfil",
"min_price": 800000,
"property_type": "Residential"
},
"frequency": "daily",
"created_at": "2026-03-15 09:00:00",
"created_by": "contact",
"updated_at": "2026-04-02 08:00:00",
"last_run_at": "2026-04-02 08:00:00",
"next_run_at": "2026-04-03 08:00:00",
"last_results_count": 7,
"notification_email": "[email protected]"
}
],
"count": 2,
"status": "success"
}
200
No saved searches found
json
{
"data": [],
"count": 0,
"status": "success"
}
200
Error response
json
{
"status": "error",
"message": "Contact not found"
}
Info:
Deleted saved searches are excluded from the response. Only searches with status `Active` or `Paused` are returned. The response is ordered by creation date, newest first.
Errors
| Code | Message | Resolution |
|---|---|---|
INVALID_JSON |
Invalid JSON input The request body is not valid JSON. |
Send valid JSON. Use `{"help": true}` for usage docs. |
MISSING_FIELDS |
api_key / org_id / contact_id is required One or more required fields are missing. |
Include all three required fields. |
INVALID_API_KEY |
Invalid API key No active user matches the key. |
Verify your key. |
INACTIVE_USER |
User account is not active The account is deactivated. |
Contact your admin. |
CONTACT_NOT_FOUND |
Contact not found No contact with that ID exists in the organization. |
Verify contact_id and org_id. |
DB_ERROR |
Database error — reso_saved_searches table may not exist The saved searches table is not available. |
Contact support — the real estate module may not be provisioned for your account. |