What are Webhooks
Shipwell uses webhooks to notify your applications any time an Events happens, like when a shipment is
in_transit, or when a customer goes over credit. Upon occurrence, Shipwell creates an Event object, like a delayed shipment, or a payout to a carrier. Each event contains data explaining what happened.
When you create a webhook, it listens for specific types of events, then takes action whenever those events get sent to the endpoint. Webhooks contain both the Webhook URL, a publicly available HTTP URL associated with your device, server, or application and handlers a script in a server-side language, like Python, C#, or Node, that handles any events you specify. Events are sent with a POST call to the webhook's endpoint, with the type of event dictating the JSON payload.
We add events weekly to the platform, so if you don't see an event you would like, send a request to email@example.com.
Webhooks can also be used to provide state and API responses to services or systems (such as FMS or CMS software) that use Shipwell data for things like replication, analytics, alerting, or customer success.
When to use webhooks
Webhooks are necessary for behind-the-scenes transactions like the Shipwell Events API and many alerting and long-running tasks in Shipwell. For many supply chain functions (like tracking an order or shipment), Shipwell needs to notify your applications or software integrations about changes to the status of the object so that you can act on them.
Some Shipwell requests (e.g., tracking, tendering, or payments) generate results that Shipwell reports synchronously to your code. These integrations don't require your verification, but the events allow you to share information with other systems. You can also use webhooks in these synchronous integrations to automate business tasks:
- Track an order or a shipment
- Email a customer when a shipment is delivered
- Create a notification to a carrier upon payment
- Make adjustments to an invoice when created (but before payment)
- Create an alert when routing is about to fail