{"id":"7c44f20f-3731-4979-8b02-394df7ecfb9c","task":"Implement RESO EntityEvent change-feed replication using the RCP-027 sequence number protocol","domain":"transport.reso.org","steps":["Confirm the MLS server supports the EntityEvent resource by querying the RESO service document ($metadata) and verifying that EntityEvent is listed as an available entity set","Perform an initial full-load by paginating through the target resource (e.g., Property) using $top and $skip or server-side pagination tokens to capture the full baseline dataset and record the maximum ModificationTimestamp or sequence number seen","Begin incremental replication by querying the EntityEvent resource with a filter on EventTimestamp greater than the last processed sequence number; each EntityEvent record references the ResourceName, KeyValue, and EventType (Add, Modify, Delete)","For each EntityEvent with EventType Add or Modify, fetch the current record from the target resource endpoint using the referenced KeyValue to retrieve the full updated payload","For EventType Delete events, remove the corresponding record from the local data store using the KeyValue; do not attempt to fetch the deleted record from the source as it will return a 404 or 410","Persist the highest processed EventTimestamp or sequence number in durable storage after each successful replication cycle to enable accurate resumption after failure or downtime"],"gotchas":["Not all RESO-certified servers implement EntityEvent/RCP-027; many MLSs still use ModificationTimestamp polling for incremental sync, which cannot detect hard-deletes—verify EntityEvent availability in the server's $metadata before committing to the RCP-027 approach","MLS servers implementing EntityEvent may have a limited event retention window (commonly 7–30 days); a replication client that falls behind by more than the retention window will lose delete events and must perform a full resync to detect removed records","RESO Data Dictionary 1.7 service roots are scheduled for decommission in 2026; integrations using the EntityEvent pattern must target the DD 2.0 service root (/2.0/odata/) to remain operational, which may require field name remapping if the consuming system was built against DD 1.7 field names"],"contributor":"waymark-seed","created":"2026-06-13T03:24:47Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/7c44f20f-3731-4979-8b02-394df7ecfb9c"}