Skip to content

Webhooks: Connect Zea Platform to Your Business Tools

What Are Webhooks?

Think of webhooks as automatic notifications from Zea Platform to your other business systems. When something important happens in your workspace (like a customer placing an order), Zea can instantly send that information to wherever you need it.
In simple terms: Webhooks let Zea “talk” to your other software automatically, without anyone having to manually copy and paste information.

Why Should I Use Webhooks?

Webhooks help you automate your work and connect Zea to the tools you already use. Here are some real-world examples:

Connect to Your Business Systems

Sync orders to your ERP (like SAP, Oracle, or Microsoft Dynamics) automatically
Update your CRM (like Salesforce or HubSpot) when customers place orders
Keep your inventory system up-to-date without manual entry
Automatically create work orders in your production system

Track Everything

Log all orders in a spreadsheet (Google Sheets, Excel)
Build reports and dashboards
Track which products are selling best
Monitor customer ordering patterns

Automate Your Workflow

Start approval processes for large orders
Trigger shipping label creation
Update accounting systems
Send follow-up emails to customers

Get Instant Notifications

Slack/Teams alerts when new orders come in
Email notifications to your fulfillment team
Text messages for urgent orders
Dashboard updates in real-time

How Do Webhooks Work?

Here’s what happens behind the scenes when you set up a webhook:
Something happens in Zea (like a customer placing an order)
Zea prepares the information (order details, customer info, shipping address)
Zea sends it to your system via a secure internet connection
Your system receives and processes it (saves to database, sends notifications, etc.)
If something goes wrong, Zea automatically tries again (up to 3 times)
Simple example: When a customer orders Part #12345, Zea immediately sends that information to your chosen destination (like a Slack channel, your ERP system, or a spreadsheet).

Setting Up Your First Webhook

Step 1: Get to the Webhooks Settings

Go to your Workspace Settings
Click on the Webhooks section in the left sidebar (see image below)
Click the blue Create Webhook button
Screenshot 2025-11-17 at 16.04.08.png
In this view, you can see:
How many webhooks you’ve configured (e.g., “1/10 webhooks configured”)
Your existing webhooks with their status (green “Enabled” badge)
The webhook URL and configuration (Timeout, Retries)
Disable, Edit, and Delete buttons for each webhook

Step 2: Fill Out the Form

When you click “Create Webhook”, you’ll see a form like this:
Screenshot 2025-11-17 at 15.18.57.png

Here’s what each field means:
Event * (Required)
What it is: The action that triggers the webhook ​Currently available: “order.placed” (when a customer places an order) ​Coming soon: File uploaded, part created, and more
In the form: Select from the dropdown - currently shows “Select an event”
URL * (Required)
What it is: Where Zea should send the information ​What to enter: A secure web address (must start with https://)
Examples:
https://hooks.slack.com/services/YOUR/SLACK/WEBHOOK (for Slack)
https://your-company.com/api/webhooks/zea-orders (for your own system)
https://webhook.site/unique-id (for testing - the form suggests this!)
Important: Must be a public, secure address. Can’t use localhost or internal servers.
Tip in the form: “The endpoint that will receive the webhook payload. For testing, try webhook.site”
Secret (Optional but Recommended)
What it is: A password that proves the message really came from Zea ​Why use it: Prevents fake orders or spam ​What to enter: A random string of letters and numbers (like Xy9mK2pLqW8nR4vT)
Tip: You can generate a strong secret using a password generator
Form label: “Optional signing secret” ​Help text: “Optional secret for signing webhook payloads”
Custom Headers (JSON) (Optional)
What it is: Extra authentication information some systems require ​When to use it: If your receiving system needs an API key or token ​Format: JSON (a simple text format)
Example shown in the form:
{"Authorization": "Bearer token"}
Another common example:
{"X-API-Key": "your-api-key-here"}
Ask your developer: They’ll know if you need this and what to put
Form help text: “Optional custom headers as a JSON object”
Timeout (ms) (Default: 30000)
What it is: How long Zea waits for your system to respond ​Default shown: 30000 (which is 30 seconds) ​Increase it if: Your system is slow or does a lot of processing
Most people: Can leave this as the default
Retry Count (Default: 3)
What it is: How many times Zea tries again if delivery fails ​Default shown: 3 ​How it works: If your system is down, Zea will retry 3 times automatically
Most people: Can leave this as the default
Retry Backoff (ms) (Default: 1600)
What it is: How long to wait between retry attempts ​Default shown: 1600 (which is 1.6 seconds) ​How it works: Zea waits longer between each retry (1s, then 2s, then 4s)
Most people: Can leave this as the default
Enable webhook immediately ✓
What it is: A checkbox to turn the webhook on right away ​Checked (default): Webhook starts working immediately ​Unchecked: Webhook is saved but not active (you can enable it later)
Form shows: Blue checkmark box at the bottom

Step 3: Save and Test

Click the blue “Create Webhook” button at the bottom right of the form
Your webhook is now saved and (if you checked the box) immediately active

Step 4: Test It

Before going live with real integrations, test your webhook:
Use webhook.site for testing (recommended by the form!)
Visit (it’s free!)
Copy the unique URL they give you (looks like https://webhook.site/unique-id)
Paste that URL into the URL field in Zea’s webhook form
Save the webhook
Place a test order in Zea
Go back to webhook.site to see the data Zea sent
Once it’s working with webhook.site, edit the webhook and replace the URL with your real destination (Slack, Zapier, your API, etc.)

Managing Your Webhooks

Back in the Webhooks section (see first screenshot), you can:
See all webhooks with their status indicators
Disable a webhook temporarily (button on the right)
Edit a webhook to change its configuration
Delete a webhook (trash icon) if you don’t need it anymore
Important: You can create up to 10 webhooks per workspace. The interface shows “X/10 webhooks configured” at the top.

Security & Safety

Why Webhooks Are Secure

Zea takes several steps to keep your data safe:
Always Uses HTTPS: All data is encrypted when sent (like secure banking websites)
Blocks Dangerous Destinations: Can’t send to internal company networks or your local computer
Optional Secret Key: Like a password that proves the data came from Zea
Automatic Retries: If delivery fails, Zea tries again automatically

Understanding the Secret Key

When you add a secret to your webhook, Zea uses it to create a special signature (like a wax seal on an envelope). Your receiving system can check this signature to make sure:
The data really came from Zea (not a fake/spam message)
The data wasn’t changed during transmission
Do I need a secret?
For testing: No, not required
For production use: Yes, highly recommended
Ask your developer if you’re connecting to your company’s systems

Who Can Create Webhooks?

Only workspace administrators can create, edit, or delete webhooks. Regular users can view them but not make changes.

What Information Gets Sent?

When an Order is Placed

Currently, webhooks trigger when a customer places an order. Here’s what information Zea sends:
The data includes:
{
"event": "order.placed",
"timestamp": "2025-11-10T15:30:45.123Z",
"workspaceId": "workspace-uuid",
"data": {
"quoteId": "quote-uuid",
"customerEmail": "customer@example.com",
"items": [
{
"servicePartId": "part-uuid",
"partNumber": "ABC-123",
"quantity": 5,
"notes": "Urgent delivery requested",
"machineId": "machine-uuid"
},
{
"servicePartId": "part-uuid-2",
"partNumber": "XYZ-456",
Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.