Skulytics Webhook Overview

Definition

A webhook is an automatic HTTP request, sometimes called a "reverse API," that is activated by an event in one system and sends data to another system. Unlike standard APIs that need a request to start sending data, a webhook immediately transmits information when an event happens, enabling quick communication and data sharing between systems. This feature makes webhooks an efficient tool for real-time alerts and updates across connected web services.

Why Webhook?

Once you register or subscribe to the webhook, Skulytics will automatically transmit real-time event data to your application's webhook endpoint as activities occur within your account.
Skulytics will transmit webhook events to your application in the form of a JSON payload containing an Event object. Skulytics is valuable for updating product statuses, pricing, LCP details, and information on newly released products.

How to Use Webhook

To begin accepting webhook events in your application, set up and register a webhook endpoint as follows:

1 - Develop a handler for your webhook endpoint to process incoming POST requests with event data.
When setting up webhook requests, use the POST method. For local development, it's acceptable to use HTTP for your webhook endpoint. However, once your endpoint is published, you should switch to HTTPS to ensure security.

Why should you set up your endpoint function?
POST requests can be handled with a JSON payload which consists of event objects. Returning a successful 200 response.

2 - Add your endpoint via the Skulytics Customer Portal
Webhook endpoints can be registered directly through the Skulytics Customer Portal, streamlining the setup process.
Each client may register multiple webhook endpoints, and there are currently five types of webhooks available. You can assign each endpoint to one or more webhook types, depending on your business needs. All webhook URLs must use the HTTPS protocol to ensure secure communication.

Webhook URL format
The standard format for a webhook endpoint URL is:

'client-website.com'/the-webhook-endpoint

For instance,
Domain -> https://companywebsite.com
Route to your webhook endpoint -> @app.route('/skulytics_webhooks', methods=['POST'])
Endpoint URL -> https://companywebsite.com/skulytics_webhooks

Webhook Delivery Rules

Skulytics implements several delivery safeguards to ensure reliable and efficient transmission of webhook data to client endpoints.

Retry Mechanism per Event

  • Each webhook event will be retried up to three times if the previous attempt failed.

  • A retry is only triggered if the response returns a non-2xx status code (e.g., 400, 500).

  • After 3 failed attempts, the webhook will be marked as undelivered.

Webhook Timeout Limitation

  • A strict timeout of 10 seconds is enforced for each delivery attempt.

  • If your server does not respond within 10 seconds, the request will be terminated and flagged as "Request Timed Out."

  • We recommend optimizing your endpoint to handle payloads quickly and return a 200 OK response as soon as possible.

Hit Count Tracking

  • Each webhook event includes a hit counter to track the number of delivery attempts.

  • This tracking helps identify slow endpoints and allows for better diagnostics in case of failure.

These rules ensure fast, reliable, and secure communication between Skulytics and your systems.