Skip to main content

Webhooks

Webhooks allow you to receive real-time HTTP notifications when events occur in your FLTR account. Build event-driven workflows without polling the API.

Overview

FLTR webhooks send HTTP POST requests to your endpoint when:
  • Documents are uploaded or deleted
  • Datasets are created, updated, or deleted
  • Document processing completes
  • Errors occur during processing
Coming Soon: The webhook system is currently in design phase. This documentation describes the planned functionality. Contact us to join the beta.

Use Cases

Processing Notifications

Get notified when document indexing completes

Sync Systems

Keep external systems in sync with FLTR changes

Trigger Workflows

Start automation workflows on FLTR events

Monitor Activity

Track dataset usage and changes in real-time

Event Types

document.uploaded

Fired when a new document is successfully uploaded.

document.processed

Fired when document chunking and embedding is complete.

document.deleted

Fired when a document is deleted.

dataset.created

Fired when a new dataset is created.

dataset.updated

Fired when dataset metadata is updated.

dataset.deleted

Fired when a dataset is deleted.

document.processing_failed

Fired when document processing encounters an error.

Creating Webhooks

Via Dashboard (Coming Soon)

  1. Log in to www.tryfltr.com
  2. Go to SettingsWebhooks
  3. Click Create Webhook
  4. Configure:
    • URL: Your endpoint (must be HTTPS in production)
    • Events: Select which events to receive
    • Secret: Auto-generated signature secret
  5. Click Create

Via API (Planned)

Response:

Receiving Webhooks

Basic Endpoint

Security

Signature Verification

FLTR signs every webhook with HMAC-SHA256:
Always verify signatures to ensure requests came from FLTR:

Best Practices

FLTR will only send webhooks to HTTPS endpoints in production. HTTP is allowed for development/testing with localhost URLs only.
Never trust webhook payloads without signature verification. Attackers could forge requests.
Rotate secrets periodically (every 90 days) or immediately if compromised.
Respond with 200 OK within 5 seconds. Process events asynchronously:
Use event IDs to detect and ignore duplicates:

Retry Logic

How Retries Work

If your endpoint fails (non-200 status or timeout), FLTR will retry:
  • Retry attempts: Up to 3 retries
  • Backoff: Exponential (1min, 5min, 30min)
  • Timeout: 5 seconds per request
  • Failure: Webhook marked as failed after 3 failures

Handling Retries

Return these status codes appropriately: Example: Temporary vs Permanent Errors

Testing Webhooks

Local Testing with ngrok

Expose local endpoint for testing:

Manual Testing

Simulate webhook events:

Test Mode (Coming Soon)

FLTR will provide test mode webhooks:

Monitoring Webhooks

Webhook Logs (Planned)

View webhook delivery attempts in the dashboard:
  • Delivery status (success/failed)
  • Response codes and times
  • Error messages
  • Retry attempts
  • Event payloads

Alerts

Set up alerts for webhook failures:

Common Use Cases

1. Slack Notifications

Get notified when documents are processed:

2. Database Sync

Keep external database in sync:

3. Workflow Trigger

Start automation on document upload:

4. Error Monitoring

Track processing failures:

Webhook Headers

FLTR sends these headers with every webhook:
Access in your handler:

Rate Limits

Webhook deliveries don’t count toward your API rate limit. However:
  • Max 100 webhooks per account
  • Max 1000 deliveries per hour per webhook
  • Webhooks failing >80% over 24h will be auto-disabled

Next Steps

API Reference

Complete webhook API documentation

Event Schemas

Detailed event payload schemas

Security Guide

Webhook security best practices

Join Beta

Get early access to webhooks