Dataset Webhook Export
This feature requires an active Query Builder subscription. Contact our sales team if you need access to this product.
xport datasets asynchronously and receive the results via webhook when processing is complete. The dataset export endpoint (/dataset/export, dataset-export-async in the API Reference) uses the same query engine and data model as Query Builder—it returns the same data with the same limitations (e.g. no unit-level data; week is the finest time granularity). This is ideal for large datasets that would timeout with synchronous requests, or when you want to process data in the background without maintaining an active connection.
The webhook export is perfect for:
- Large datasets with thousands of rows
- Scheduled or automated data exports
- Background processing workflows
- Integration with data pipelines
How It Works
- Submit Export Request: Send your dataset query along with a webhook URL
- Receive Confirmation: Get immediate 201 response with export queued
- Processing: Your export is processed asynchronously in the background
- Webhook Notification: Your endpoint receives the results when complete
Request Format
The request requires:
- dataset: Your query configuration (columns, filters, limits)
- webhookURL: HTTPS endpoint where results will be sent
- name: Descriptive name for your export
- format: Either ‘csv’ or ‘jsonl’
Webhook Response
When your export completes, you’ll receive a POST request with this payload:
Implementing Your Webhook Handler
Your webhook endpoint should handle the incoming POST request and verify the HMAC signature for security. The signature is included in the SHA256-HMAC-Signature header. You’ll use the body of the request and your API key to create a SHA256 HMAC signature. This signature can be compared to the one in the header in order to verify that the request has come from us.
Security & Verification
Always verify the HMAC signature to ensure the webhook request is legitimate:
- Compute HMAC: Use your API key and the payload
- Compare Signatures: Match against the
SHA256-HMAC-Signatureheader - Reject Invalid Requests: Return 401 for signature mismatches
Important Notes
Download URLs expire in 30 days - make sure to download your files promptly after receiving the webhook notification.
- Processing Time: Large exports may take several minutes to complete
- File Format: Files are compressed with gzip for efficient transfer
- Webhook Requirements: Your endpoint must be HTTPS and publicly accessible
- Response Expected: Your webhook should respond with 2xx status to confirm receipt
- Tracking: Use the
queryUUIDto match requests with responses
API vs Query Builder: when to use which
Power BI and similar tools: Use Query Builder / dataset export when you need data for a large number of properties (e.g. entire markets or regions). Use the API when you’re tracking a specific, bounded list of properties (portfolio, deal list, comps).
Pricing: The API is per-request; Query Builder and dataset export require a Query Builder subscription (contact sales for details).
Data granularity and limitations
The dataset export endpoint returns the same data as Query Builder, with the same restrictions:
- No unit-level data. You cannot export individual unit rows (e.g. per-unit rent history). Data is at property, unit-type (bed/bath, floorplan), or aggregated level. Unit-level detail is available via the API (property details and history).
- Time dimension: week at finest. For time breakdowns, week is the highest granularity (
as_of_week). Month and quarter are also supported. Finer-than-week (e.g. day-level) breakdowns are not available in Query Builder or dataset export.
Error Handling
If the export fails during processing, your webhook will not be called. Monitor your webhook endpoint for delivery failures.
Use Cases
Data Pipeline Integration
Scheduled Reports
Full Documentation
Find complete technical details in our API Reference.