Deletion Protocol
The mandatory endpoint to report deleted properties. Without this endpoint, Spot2 cannot detect delistings and deleted properties will remain published.
Endpoint
GET https://your-crm.com/api/v1/spot2/properties/deleted?since=2026-06-29T14:00:00Z
| Parameter | Required | Description |
|---|---|---|
since | Yes (except first cycle) | ISO 8601. Returns IDs deleted since this date. Spot2 does not send it on the first cycle. |
Authentication
Same as the main properties endpoint.
Response format
{
"deleted_ids": ["prop-001", "prop-002", "prop-005"],
"since": "2026-06-29T14:00:00Z",
"generated_at": "2026-06-30T10:00:00Z"
}
| Field | Type | Description |
|---|---|---|
deleted_ids | string[] | external_id of deleted properties. Empty array if no delistings. |
since | ISO 8601 | Echo of the received parameter. |
generated_at | ISO 8601 optional | When the response was generated. |
Retention
Your CRM must retain deletion history for at least 30 days. If since is older than your retention window, return all available deleted IDs.
Frequency
Spot2 queries this endpoint on each scheduled cycle, at the same frequency as the main endpoint.
Cycle flow
- Spot2 sends
GET /properties/deleted?since=<last_successful_cycle>. - Your API returns the
external_ids deleted since that date. - Spot2 processes the list and deactivates those properties.
- If the cycle fails (timeout, 500), Spot2 does not update
since. The next cycle retries from the same date — no data is lost. - If your API returns
"deleted_ids": [], there are no delistings. Spot2 saves the current timestamp assincefor the next cycle.
Partial deletion
If a property has both rent and sale, and only one operation is deleted:
- Do not report it in
deleted_ids. - Update the property in the main feed with the corrected modality (e.g.,
rent_and_sale→sale). - Spot2 updates the modality without deactivating the property.
Timeout and rate limits
Timeout: 30 seconds. Rate limit: we respect Retry-After.