Managing Deleted Listings
Overview
Deleted listings are an important aspect of listing lifecycle management that may require proper handling depending on your integration approach. This article explains what deleted listings are, how they differ from terminated listings, and provides implementation guidance for keeping your system synchronized when replicating data.
Note: If you're using Repliers APIs in real-time without replicating data locally, deleted listings will automatically be removed from your search results. This is one of the key benefits of real-time API usage versus data replication - no additional deleted listing handling is required.
Understanding Deleted vs Terminated Listings
Deleted Listings
A deleted listing is permanently removed from the platform and should not be visible to anyone, including logged-in users. When a listing is deleted:
- It is completely removed from public view
- Even authenticated users cannot access the listing
- The listing should be removed from your local database/cache
- Any references to the listing should be cleaned up
Terminated/Cancelled Listings
A terminated or cancelled listing maintains limited visibility:
- Not visible to the general public
- Still accessible to logged-in users (typically the owner or administrators)
- May retain historical data for reporting purposes
- Should be marked as inactive but not removed from your system
Why Listings Get Deleted
Listings may be deleted for various reasons:
- Policy violations: Content that violates MLS® guidelines
- User request: Property owners choosing to permanently remove their listing
- Data quality issues: Duplicate or fraudulent listings
- Legal compliance: Regulatory requirements or legal disputes
- Platform maintenance: Cleanup of outdated or abandoned listings
- Age restrictions: Some MLS® systems have 2-year display policies and automatically delete listings older than that timeframe
Implementation: Staying Synchronized with Deleted Listings
Important: This section only applies if you are replicating listing data locally. If you're using Repliers APIs in real-time without local data storage, deleted listings are automatically handled and no additional implementation is needed.
To maintain data consistency when replicating data, you need to handle deleted listings in your integration. There are two recommended approaches:
Method 1: Webhook Subscription (Recommended)
Subscribe to listing.deleted
webhooks for real-time notifications:
Advantages:
- Immediate notification when listings are deleted
- Reduces data inconsistency windows
- Lower API usage compared to polling
- Event-driven architecture
Implementation considerations:
- Ensure your webhook endpoint can handle the expected volume
- Implement proper error handling and retry logic
- Validate webhook signatures for security
For detailed webhook implementation guidance, see our Webhooks Implementation Guide.
Method 2: Polling the Deleted Listings Endpoint
Use GET /listings/deleted
to periodically check for deleted listings:
Usage guidelines:
- Daily checks minimum: Poll this endpoint at least once per day
- Reconciliation use: Use for periodic data reconciliation beyond daily checks
- Recovery tool: Helpful for recovering from webhook delivery failures
Best practices:
- Store the last check timestamp to efficiently query for new deletions
- Process deletions in batches for better performance
- Respect API rate limits when polling
Implementation Workflow
Real-time Processing (Webhooks)
- Receive
listing.deleted
webhook event - Extract the listing ID from the payload
- Remove the listing from your database
- Clean up any associated data (images, reviews, bookings)
- Update any cached data or search indices
- Log the deletion for audit purposes
Batch Processing (API Polling)
- Query
GET /listings/deleted
with appropriate date filters - Process the returned list of deleted listing IDs
- For each deleted listing:
- Remove from your database
- Clean up associated data
- Update indices and caches
- Update your last processing timestamp
- Log the reconciliation results
For additional technical support or questions about implementing deleted listing handling, please contact our developer support team.
Updated on: 18/09/2025
Thank you!