Objective
Webhooks let CLO-SET send an automatic HTTP POST to your system the moment something happens in your workspace. Instead of polling the API for changes, your systems and tools get notified in real time and can act on the event right away.
Details
1) Location
Group Console ▶ Developer page ▶ Trigger ▶ Down to Webhook section
Available webhook triggers
| Trigger | Fires when | Common use |
|---|---|---|
| Workflow | A style moves to a new step in a workflow | Update the stage in your PLM or notify the next team |
| Invite / Share | A user is invited to, or content is shared with, a workspace or style | Log access changes; alert partners or vendors |
| Content Upload | New content (style, material, avatar, etc.) is uploaded | Sync new assets to your PLM or DAM |
| Version Upload | A new version of an existing style is uploaded | Keep the latest version in sync downstream |
| Colorway Status | A colorway's status changes (e.g. approved, dropped) | Update line sheets or production status |
| Render Complete | A requested render finishes | Pull finished images into your e-commerce or PLM system |
How to set up a webhook
You need group admin permissions to access the Developer Page.
- In CLO-SET, click Console in the left sidebar.
- Select Developer Page, then open the Trigger tab.
- Under Company, choose the company the webhook applies to.
- Scroll to the Webhook section and expand it.
- Click Add Trigger, then pick an event from the Trigger dropdown.
- Enter the HTTPS endpoint that should receive the event, and save.
- Repeat for each event you want to subscribe to. The counter next to Webhook shows how many are active.
To remove a webhook, click the X on its row.
Webhook request body sample for Workflow
{
"UpdateTime": "2025-03-21T06:25:09.759785Z",
"UpdateUser": "hello@clo-set.com",
"Topic": {
"TopicType": "Style",
"TopicId": "4ea0710a0e5f4e099d92f7a284d167f9",
},
"TriggerType": "Workflow",
"TriggerDetail": null,
"TriggerOption": {
"WorkflowSeq": 1679,
"TriggerStatus": "Changed"
}
}
Webhook body schema
{
"UpdateTime": {
"$id": "#/properties/UpdateTime",
"type": "string",
"format": "date-time",
"description": "The update time that trigger fired."
},
"UpdateUser": {
"$id": "#/properties/UpdateUser",
"type": "string",
"description": "Email address of user"
},
"Topic": {
"$id": "#/properties/Topic",
"type": "object",
"description": "The updated space/style information",
"required": [
"TopicId",
"Version",
"TopicType"
],
"properties": {
"TopicId": {
"$id": "#/properties/Topic/properties/TopicId",
"type": "string",
"description": "The id of updated style or space"
},
"Version": {
"$id": "#/properties/Topic/properties/Version",
"type": "integer",
"description": "Version of style. Will be '0' if topic type is not style.",
"default": 0
},
"TopicType": {
"$id": "#/properties/Topic/properties/TopicType",
"type": "integer",
"enum": [0, 1],
"description": "Enum for what the topic type is. 0 is none, 1 is style.",
"default": "None"
}
}
},
"TriggerType": {
"$id": "#/properties/TriggerType",
"type": "integer",
"enum": [0, 1],
"description": "The trigger type that webhook triggered. 0 is none, 1 is workflow",
"default": 0
},
"TriggerOption": {
"$id": "#/properties/TriggerOption",
"type": "object",
"description": "The object information for trigger",
"required": ["WorkflowSeq", "TriggerStatus"],
"properties": {
"WorkflowSeq": {
"$id": "#/properties/TriggerOption/properties/WorkflowSeq",
"type": "integer",
"description": "Workflow seq that tiggered."
},
"TriggerStatus": {
"$id": "#/properties/TriggerOption/properties/TriggerStatus",
"type": "integer",
"enum": [0, 1],
"description": "The changed trigger status for triggered object. 0 is none, 1 is changed",
"default": 0
}
}
}
}
Tips and troubleshooting
- Use HTTPS. Endpoint URLs must start with
https://; plain HTTP is rejected. - Respond quickly. Return a 2xx status as soon as you receive the event, then do heavy processing in the background.
- Not receiving events? Check that the endpoint is publicly reachable, the correct company is selected, and the trigger is still listed under Webhook.
- Need step-by-step help? Click Tutorial next to the Webhook heading on the Developer Page.
For payload formats and API authentication, see the API Token tab and our developer documentation.