The Framer Form Submission trigger starts a SteelEngine workflow when a Framer form sends a native webhook. SteelEngine verifies Framer's signature before admitting the execution, exposes the submitted fields to downstream blocks, and deduplicates retries by Framer submission ID.
Add the trigger
- Add Framer Form Submission to your workflow.
- Enter a webhook signing secret with at least 32 characters.
- Choose how to handle submissions Framer marks as spam:
- Acknowledge and drop (recommended) returns success without running the workflow.
- Deliver to workflow exposes the spam metadata for quarantine or review.
- Deploy the workflow.
- Copy the generated webhook URL from the deployed trigger.
The webhook URL belongs to the deployed Framer trigger block, not the workflow ID. Redeploy after changing the trigger configuration.
Configure Framer
In Framer, select the form and configure its destination as a webhook:
- Paste the SteelEngine trigger URL.
- Enter the exact same signing secret used by the SteelEngine trigger.
- Enable Framer's Advanced antispam protection. Use Block filtering when spam should never enter the workflow.
- Publish the Framer project.
Use a separate Framer trigger URL for each business form. Standard Framer webhook deliveries do not provide a reliable form, project, or page identity for routing multiple forms through one URL.
Trigger output
Downstream blocks can reference:
submissionId— Framer's authenticated submission ID. Use it as an external idempotency key when creating records in another system.fields— the submitted form field names and values.spam.marked— whether Framer marked the submission as spam.spam.classification—possible_spam,likely_spam, or no classification.
For example, connect a JSON Mapper directly after the trigger and use the trigger's entire fields output as the mapper input. Object-valued outputs should be passed as whole-value references rather than embedded inside JSON text.
Delivery and security behavior
- SteelEngine accepts request bodies up to 32 KiB.
- Authentication uses HMAC-SHA256 over the exact raw request body bytes followed by the Framer submission ID.
- Missing or malformed authentication headers are rejected before workflow admission.
- Framer retries failed deliveries up to five times and does not follow redirects.
- For submissions that are not filtered as spam, a direct
2xxresponse means SteelEngine durably admitted the delivery; downstream blocks may still be running. - With Acknowledge and drop, authenticated marked spam receives
200 {"accepted":true,"filtered":"spam"}without admitting a workflow execution. - Repeated deliveries with the same authenticated submission ID reuse the same webhook execution identity.
Troubleshooting
Framer reports a failed delivery
Confirm that the workflow is deployed, the URL is copied from the Framer trigger block, and the signing secrets match exactly. Do not use a workflow UUID as the webhook path.
Trigger fields are empty
Redeploy after editing the workflow. Pass fields as a whole object reference into object-aware blocks such as JSON Mapper instead of interpolating it into a JSON string.
Duplicate external records
Use submissionId as the destination system's external or idempotency key. SteelEngine deduplicates workflow admission, but the destination action should also enforce idempotency before a successful response is recorded.