Create feed
Create a new alert feed that delivers matching real estate events to your webhook URL.
Alert Delivery Format
Events are delivered as a POST request with a single JSON object body:
{
"alert_id": 100042,
"url": "https://www.casafari.com/listing/12345",
"address": "Rua do Exemplo 12, Lisbon",
"location": "Lisbon",
"sale_status": "active",
"sale_price": 250000,
"sale_price_psqm": 2500.0,
"sale_currency": "EUR",
"rent_status": "none",
"rent_price": 0,
"rent_period": "none",
"rent_price_psqm": 0.0,
"rent_currency": "EUR",
"thumbnails": [
"https://cdn.example.com/thumb1.jpg"
],
"matched_feeds": [
{
"feed_id": 42,
"feed_name": "My Alert Feed"
}
]
}
Your server must respond with HTTP 200. Any other status code is treated as a failure.
Before You Start: Configure Your Webhook
Feeds deliver to your per-user webhook URL — one URL for all feeds, managed separately:
- PUT /webhooks — set your delivery URL (it is probed with a GET and must answer 200)
- Create feeds — this endpoint returns 409 until the webhook is configured
Changing the URL via PUT /webhooks instantly affects all feeds, including already-queued alerts.
Retry Policy
If your server does not respond with HTTP 200 within 5 seconds, delivery is retried — 60 seconds after the first failure, then every 10 minutes — until the alert expires (typically 24h). Feeds are never disabled automatically.
Authentication of deliveries
Every delivery is signed with Standard Webhooks: each POST carries webhook-id, webhook-timestamp, and webhook-signature headers. Verify the HMAC-SHA256 signature over the raw request body using the secret from PUT /webhooks (rotate it via POST /webhooks/rotate-secret).
Request
- Base URL: https://api.casafari.com
- URL: https://api.casafari.com/alerts-api/feeds
- Auth: HTTP bearer
Request body
Response
Successful Response
Changes
No recorded changes to this operation across all 1 revision of this API.