Tenant API

Webhooks

Sodtrack posts these 7 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

Events