Turn Fillout support requests into HubSpot tickets with Slack alerts

By General Input

Every time a customer files a support form on Fillout, open a HubSpot ticket and ping your support team in Slack so nothing sits in an inbox.

Integrations

  • Fillout
  • HubSpot
  • Slack Bot

Type

Deterministic Code

Categories

  • Customer Support
  • Operations

Build a code workflow that turns every new submission to my Fillout support form into a HubSpot ticket and posts a Slack alert to my support team. Every field mapping is fixed, so this should be a deterministic pipeline with no AI reasoning in the middle.

Trigger: a webhook fired by Fillout on new form submission. On workflow deploy, subscribe the webhook to my support form using Fillout's Create Form Webhook operation. I will provide the form ID when I configure the workflow.

Step 1 — Fetch the full submission. When the webhook fires, take the submission ID from the payload and call Fillout's Get Submission by ID to pull the finished submission with every field. My form has these fields: full name (text), email (email), issue category (radio: Billing, Bug, Feature Request, Other), priority (radio: Low, Medium, High), subject (short text), and description (long text).

Step 2 — Upsert the HubSpot contact. Call HubSpot's Batch Upsert Contacts with the submitter's email as the unique identifier, and set firstname / lastname parsed from the full name field. If no email is present in the submission, skip this step and continue without a contact association. Capture the returned contact ID for the ticket association.

Step 3 — Create the HubSpot ticket. Call HubSpot's Create Ticket with: subject set from the form's subject field, content (description) set from the description field, hs_pipeline set to the default support pipeline, hs_pipeline_stage set to the New Tickets stage of that pipeline, and hs_ticket_priority mapped from the form's priority radio (Low → LOW, Medium → MEDIUM, High → HIGH; default to MEDIUM if the field is missing). Associate the ticket with the contact ID from step 2 when we have one. Also stash the issue category on a custom ticket property or in the ticket description so agents can see it. Capture the returned ticket ID.

Step 4 — Post the Slack alert. Use the Slack Bot integration's Send a Message operation to post to my support channel (I'll configure the channel ID). The message should include: the ticket subject, the submitter's name and email, the selected priority, the issue category, the first ~200 characters of the description, and a link to the ticket in HubSpot using the format https://app.hubspot.com/contacts/{portalId}/ticket/{ticketId}. Ask me for the HubSpot portal ID during setup so the deep link resolves correctly. Format the message with Slack mrkdwn (bold subject, bulleted metadata) so it's scannable at a glance.

Error handling: if the HubSpot ticket creation fails, still post a Slack message to the support channel with the raw submission details and a note that the ticket did not get created, so the team is never left in the dark. If the Fillout submission fetch returns 404, log and exit quietly (the submission was probably deleted).

Please make the form ID, HubSpot pipeline and stage IDs, HubSpot portal ID, and Slack channel ID configurable inputs so I can change them without editing code.

Related prompts

Explore more prompts
A brand asset library your marketing team actually searchesTurn Mailjet email clicks into ranked HubSpot follow-upsClean out the Looker dashboards and Looks nobody opensLiveKit live operations console for room moderationWake up dormant Keap leads with a researched reasoniMessage campaign console with pre-flight checks and delivery boardLiveChat coverage board for planning next week's shiftsPhone routing control panel for LiveKit voice agentsA searchable RFP answer library your bid team drafts fromLinkedIn Ads budget pacing dashboard for every client account