Skip to main content

Triggered when a configured catalyst signal is detected on a property (e.g. pre-probate, foreclosure).

This webhook is only sent if your account is configured to receive webhook events. Contact your Goliath account manager to enable it.

Overview

When a catalyst event is detected, Goliath sends a POST request to your configured webhook URL. The payload includes:
  • Event metadata (version, timestamp)
  • Catalyst signal details
  • Property details and valuation
  • Ownership data
  • Skip tracing results (phones, emails, relatives)

Example Payload

All data below is mock data for documentation purposes only.
{
  "version": "2026-01-21",
  "triggeredAt": "2026-03-19T14:00:48.135Z",
  "catalystEvent": {
    "type": "PREPROBATE",
    "summary": "{\"city\":\"Springfield\",\"deceasedAge\":\"99\",\"deceasedDate\":\"January 1, 2026\",\"deceasedName\":\"John Doe\"}",
    "publicationDate": "2026-03-19",
    "url": "https://example.com/fake-preprobate-record.json"
  },
  "property": {
    "url": "https://app.example.com/properties/123-main-st",
    "address": "123 MAIN ST, SPRINGFIELD, USA 00000",
    "metrics": {
      "zestimate": 123456,
      "beds": 3,
      "baths": 2,
      "livingAreaSqFt": 1500,
      "lotSizeAcres": 0.15,
      "propertyType": "SINGLE_FAMILY",
      "yearBuilt": 1900,
      "occupancyStatus": "OWNER_OCCUPIED",
      "estimatedTax": 1234.56,
      "estimatedPrice": 120000,
      "estimatedRent": 1500,
      "lastSaleAmount": 50000,
      "lastSaleDate": "2000-01-01",
      "nameOnTitle": "DOE, JOHN; DOE, JANE",
      "ownerMailingAddress": "PO BOX 123, SPRINGFIELD, USA 00000"
    },
    "parcel": {
      "apn": "000-FAKE-APN",
      "countyFips": "00000",
      "legalDescription": "LOT 1, BLOCK 1, FAKE SUBDIVISION",
      "lotSqFt": 6500,
      "lotAcres": 0.15,
      "zoningCode": "FAKE-R1"
    },
    "owners": [
      {
        "type": "person",
        "name": "john doe",
        "nameOnDeed": true,
        "skipTrace": {
          "phones": [
            { "number": "5550000001", "type": "Mobile", "ranking": 1 },
            { "number": "5550000002", "type": "Residential", "ranking": 2 }
          ],
          "emails": [
            { "email": "john.doe@example.com", "ranking": 1 },
            { "email": "jd@example.com", "ranking": 2 }
          ]
        }
      }
    ],
    "skipTraceResults": [
      {
        "firstName": "John",
        "lastName": "Doe",
        "age": 99,
        "deceased": true,
        "isRelative": false,
        "isNameOnDeed": true,
        "ranking": 1,
        "phones": [
          { "number": "5550000001", "type": "Mobile", "ranking": 1 }
        ],
        "emails": [
          { "email": "john.doe@example.com", "ranking": 1 }
        ]
      },
      {
        "firstName": "Jane",
        "lastName": "Doe",
        "age": 95,
        "deceased": false,
        "isRelative": true,
        "isNameOnDeed": true,
        "ranking": 2,
        "phones": [
          { "number": "5550000003", "type": "Mobile", "ranking": 1 }
        ],
        "emails": [
          { "email": "jane.doe@example.com", "ranking": 1 }
        ]
      },
      {
        "firstName": "Jimmy",
        "lastName": "Doe",
        "age": 60,
        "deceased": false,
        "isRelative": true,
        "isNameOnDeed": false,
        "ranking": 3,
        "phones": [
          { "number": "5550000004", "type": "Mobile", "ranking": 1 }
        ],
        "emails": []
      }
    ]
  }
}

Payload Fields

FieldTypeDescription
versionstringSchema version of this webhook payload
triggeredAtstring (ISO 8601)Timestamp when the event was triggered
catalystEventCatalystEventDetails about the triggering signal
propertyPropertyEnriched property and ownership data

Type Reference

All types used in this payload are documented on the Types page.
TypeDescription
CatalystEventThe trigger signal
CatalystSummaryParsed contents of catalystEvent.summary
PropertyFull property object
PropertyMetricsValuation and physical details
ParcelLegal and assessor data
OwnerA single owner entry
SkipTraceContact bundle attached to an owner
SkipTraceResultAn individual in the expanded people graph
PhonePhone number with type and ranking
EmailEmail address with ranking

Notes

  • Opt-in only — you will only receive this payload if your account is configured for webhook delivery.
  • summary must be parsed — it is a stringified JSON object, not a nested object. Call JSON.parse() on it before accessing its fields.
  • Ranking — lower ranking = higher confidence across phones, emails, and skip trace results.
  • Partial data — some fields (emails, ownerMailingAddress, etc.) may be null or empty arrays.
  • Relatives includedskipTraceResults may include relatives of the owner, not just the owner themselves. Use isRelative to filter.