Webhook workflows should support nested JSON fields
- Dominant language
- Rust
- Stars
- 32.7k
- Forks
- 4.3k
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 253
Description
Webhook-triggered workflows can currently use only top-level fields from the JSON body.
For example:
```json
{
"type": "workflow.failed",
"data": {
"title": "Deploy production",
"reason": "Health check timed out"
}
}
```
`{{trigger.type}}` works, but `{{trigger.data.title}}` does not. `data` is treated as one JSON string, so the workflow cannot use fields inside it.
Nested payloads are common in webhooks. CloudEvents, for example, keeps application data under `data`. Without nested field access, senders have to duplicate useful fields at the top level just for Buzz.
Could Buzz support basic dot notation for nested object fields, such as:
```text
Workflow {{trigger.data.title}} failed: {{trigger.data.reason}}
```
Ideally, the same fields would also be available in workflow conditions. Existing top-level fields such as `{{trigger.type}}` should keep working.
I'm not asking for full JSONPath, wildcards, or array handling. Simple nested object lookup would cover the common case.
I searched the open and closed issues and couldn't find an existing request for this.
Contributor guide
Assessment
This issue has not been assessed yet.