All checks were successful
CI/CD / detect-changes (push) Successful in 4s
CI/CD / test-runners (push) Has been skipped
CI/CD / e2e-smoke (push) Has been skipped
CI/CD / test-frontend (push) Successful in 6s
CI/CD / test-go-pg (push) Successful in 2m49s
CI/CD / test-sqlite (push) Successful in 3m4s
CI/CD / build-and-deploy (push) Successful in 1m15s
Co-authored-by: Jeffrey Smith <jasafpro@gmail.com> Co-committed-by: Jeffrey Smith <jasafpro@gmail.com>
77 lines
2.1 KiB
JSON
77 lines
2.1 KiB
JSON
{
|
|
"id": "webhook-notifier",
|
|
"title": "Webhook Notifier",
|
|
"type": "workflow",
|
|
"version": "0.1.0",
|
|
"tier": "starlark",
|
|
"icon": "🔔",
|
|
"author": "Armature",
|
|
"description": "Outbound webhook delivery with connection credential support and delivery logging.",
|
|
"permissions": ["api.http", "connections.read", "db.write"],
|
|
|
|
"db_tables": {
|
|
"webhook_log": {
|
|
"columns": {
|
|
"url": "text",
|
|
"status_code": "text",
|
|
"event": "text",
|
|
"instance_id": "text"
|
|
}
|
|
}
|
|
},
|
|
|
|
"workflow_definition": {
|
|
"name": "Webhook Notifier",
|
|
"slug": "webhook-notifier",
|
|
"entry_mode": "team_only",
|
|
"stages": [
|
|
{
|
|
"name": "configure",
|
|
"ordinal": 0,
|
|
"stage_mode": "form",
|
|
"audience": "team",
|
|
"auto_transition": false,
|
|
"form_template": {
|
|
"fieldsets": [
|
|
{
|
|
"label": "Webhook Configuration",
|
|
"fields": [
|
|
{ "key": "webhook_url", "label": "Webhook URL", "type": "text", "required": true },
|
|
{ "key": "event_name", "label": "Event Name", "type": "text", "required": true },
|
|
{ "key": "payload", "label": "Custom Payload (JSON)", "type": "textarea" }
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "fire-webhook",
|
|
"ordinal": 1,
|
|
"stage_mode": "automated",
|
|
"audience": "system",
|
|
"auto_transition": true,
|
|
"starlark_hook": "webhook-notifier:on_fire"
|
|
},
|
|
{
|
|
"name": "result",
|
|
"ordinal": 2,
|
|
"stage_mode": "form",
|
|
"audience": "team",
|
|
"auto_transition": false,
|
|
"form_template": {
|
|
"fieldsets": [
|
|
{
|
|
"label": "Delivery Result",
|
|
"fields": [
|
|
{ "key": "delivery_status", "label": "Status", "type": "text" },
|
|
{ "key": "status_code", "label": "HTTP Status Code", "type": "text" },
|
|
{ "key": "response_body", "label": "Response", "type": "textarea" }
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|