Hey Activepieces community ![]()
I’ve opened a new Pull Request that enhances webhook management by introducing environment-based URLs and externalId support, along with several related UI improvements.
This update aims to make webhook URLs stable, environment-aware, and easier to manage across multiple deployments (DEV, QA, PROD).
What This PR Does
- Adds stable webhook URLs using environment names and
externalId. - Keeps legacy
/flowIdroutes working for backward compatibility. - Exposes
ENVIRONMENT_NAMEas a flag and system prop. - Adds UI support to view/update a flow’s Webhook ID.
- Improves Git Sync and Worker URL generation for environment-specific setups.
How It Works
- New route structure:
/v1/webhooks/:environment/:identifier[/sync|/draft|/test]
→ whereidentifierresolves toexternalIdfirst, then falls back toflowId. - Frontend uses
ENVIRONMENT_NAMEto render URLs dynamically. - Users can now update the webhook
externalIddirectly from the UI.
Why It’s Important
- Simplifies webhook management across multiple environments.
- Enables consistent URLs for CI/CD and Git sync setups.
- Reduces risk of broken integrations during import/export or deployment.
How You Can Help
- Review the PR for architecture and code style consistency.
- Test webhook creation/update behavior in different environments.
- Share any feedback on naming, route design, or UI flow.
Notes
- Legacy routes remain supported (
/v1/webhooks/:flowId). - Requires
AP_ENVIRONMENT_NAMEto be set (defaults todefault). flow.externalIdis now nullable with new DB indices.
Thanks in advance to everyone reviewing! ![]()
Your feedback will help ensure this feature is stable and ready for upcoming releases.
— Nagarajan