Tenant API

Webhooks

Sodtrack posts these 13 events to the endpoint configured for your tenant as work progresses.

Purpose

Sodtrack supports outbound Webhooks to allow external systems to receive real-time notifications whenever specific events occur within the platform.

Webhooks enable seamless integration with third-party systems by automatically sending an HTTP request to a configured endpoint when a defined event is triggered—such as the creation, update, or completion of a booking, project, or payment transaction.

This mechanism ensures that partner systems remain synchronized with Sodtrack’s operational data without the need for continuous polling or manual updates.


How It Works

  1. Event Trigger:

    Each webhook is associated with a specific event type (e.g., booking_created, booking_done, technician_assigned).

    When the event occurs in Sodtrack, a POST request is sent to the subscriber’s configured endpoint.

  2. Payload Delivery:

    The webhook request body contains a structured JSON payload describing the event and relevant data objects.

    This allows your system to process updates, initiate workflows, or log information in real time.

  3. Headers and Authentication:

    Each tenant can define custom headers (e.g., authorization tokens or client identifiers) to be included in webhook requests.

    To configure or modify these headers, tenants must contact integrations@sodtrack.com.

  4. Delivery Reliability:

    Webhooks are sent as HTTP POST requests with Content-Type: application/json.

    Sodtrack automatically retries failed webhook deliveries according to its retry policy to ensure reliable event propagation.


Typical Use Cases

  • Automatically syncing booking status updates with an ERP or CRM.

  • Triggering post-service surveys or notification workflows upon service completion.

  • Updating availability or project progress in third-party dashboards.

  • Logging transactional or operational events for analytics or auditing.


Security and Best Practices

  • Always validate the webhook’s source and signature (if applicable).

  • Use HTTPS endpoints to ensure data is encrypted in transit.

  • Implement idempotency on your webhook receiver to handle potential retries safely.

  • Avoid blocking the webhook request—respond quickly with a 2xx status and handle processing asynchronously.


Shared Payload Fields

Every webhook payload sent by Sodtrack includes the following top-level fields, regardless of the event type:

FieldTypeDescriptionAlways
timestampstringISO 8601 timestamp representing when the event was emitted.✅
userTriggererEmailstringEmail address of the user or system that triggered the event.✅

These fields are always present at the root level of the webhook payload, alongside the event-specific data (e.g., booking, project, payment).

Booking

Budgets

Dynamic Forms

Lead

Alerts

Events