---
title: "HubSpot + OmniChannels.ai: message contacts from your workflows"
description: "Send WhatsApp and SMS from HubSpot workflows through the OmniChannels.ai API, using custom code, webhooks or an automation tool, and log delivery statuses."
canonical: "https://omnichannels.ai/integrations/hubspot/"
language: "en"
updated: "2026-10-10"
publisher: "BroadNet Technologies"
brand: "OmniChannels.ai"
---

# HubSpot + OmniChannels.ai: message contacts from your workflows

Canonical: https://omnichannels.ai/integrations/hubspot/
Language: en
Publisher: OmniChannels.ai by BroadNet Technologies

**In short:** HubSpot workflows can send WhatsApp and SMS through the OmniChannels.ai REST API, using a custom code action or webhook action on HubSpot subscriptions that include them, or an automation tool such as Zapier, Make or n8n. Delivery statuses reach your automation through our webhook, which then logs them to the contact with the HubSpot API. There is no marketplace app.

Connect via API & webhooks · Connect via MCP

## What you can do

### Follow up new leads quickly

When a form submission creates a lead, a workflow sends a WhatsApp template or SMS to the number the contact gave, with their consent.

### Remind contacts about meetings and visits

A workflow delayed until a date property, such as a booked demo or site visit, sends a reminder the day before.

### React to deal stage changes

When a deal moves to a stage such as contract sent or closed won, message the associated contact with the next step.

### Send renewal reminders

Enrol contacts or companies a set number of days before a renewal date property and send an approved WhatsApp template.

### Log statuses and replies on the timeline

Your automation receives delivery statuses and inbound replies from our webhook and writes them to the contact as a note or property with the HubSpot API.

### Ask an assistant to work across both

An AI assistant connected to HubSpot through its own connector and to our MCP server can find the contacts and send the messages.

> Try asking: "Find HubSpot contacts whose deals moved to proposal sent this week and send them our proposal_followup WhatsApp template."

## How it connects

HubSpot does not call the OmniChannels.ai API by itself. On HubSpot subscriptions that include custom code actions, a workflow can run a short JavaScript or Python function that calls our API with your Bearer token stored as a HubSpot secret, which gives full control over headers and body. The workflow webhook action is another option where your subscription includes it, but it is usually easier to point it at an automation tool than to match our request format. Check HubSpot's current plan details.

Without those features, use Zapier, Make or n8n: a HubSpot trigger starts the automation, which sends an HTTP request to our API. For the way back, the webhook URL on your OmniChannels.ai account points at the same automation tool or at your own endpoint, which matches each status to the message ID you stored and updates the contact through the HubSpot API.

- Send: custom code action, workflow webhook action, or Zapier, Make or n8n
- Single SMS is a JSON request; bulk and most other channel sends use multipart/form-data
- Store the returned message ID on the contact or in your automation to match statuses
- Business-initiated WhatsApp messages outside the 24-hour window need approved templates
- AI angle: connect your assistant to HubSpot separately; our MCP server does not read HubSpot data

## Set it up

1. **Request API access:** Request test access and receive an API token. Test sends go only to your own verified numbers. (Guide: https://omnichannels.ai/developers/authentication/)
2. **Choose how HubSpot will send:** Use a custom code action if your HubSpot subscription includes it; otherwise connect HubSpot to Zapier, Make or n8n. (Guide: https://omnichannels.ai/developers/zapier-make-webhooks/)
3. **Build the send request:** Call POST /sms/sendSms with a JSON body, or the channel endpoint from the OpenAPI spec, mapping the phone number and contact properties into the message. (Guide: https://omnichannels.ai/developers/sms/)
4. **Save the message ID:** Write the ID from the API response to a contact property or your automation's data store so statuses can be matched later.
5. **Route statuses back to HubSpot:** Ask our team to point your account's webhook at your automation, then create a note or update a property on the contact with the HubSpot API. (Guide: https://omnichannels.ai/developers/webhooks/)
6. **Test with your own number:** Enrol a test contact with your verified number and check that the message arrives and the status appears on the timeline.

## Example workflow

HubSpot workflow (Lead created, deal stage changed or renewal date reached) → Custom code or automation (Custom code action, or Zapier, Make or n8n) → OmniChannels.ai API (Sends the message and returns a message ID) → Contact's phone (WhatsApp template or SMS delivered) → Status back to HubSpot (Your automation logs the status on the contact timeline)

## Questions

### Is there an official OmniChannels.ai app in the HubSpot marketplace?

No. You connect through HubSpot's own workflow features, such as custom code actions or webhooks where your subscription includes them, or through an automation tool, calling our public REST API with your token.

### Which HubSpot plan do I need?

Custom code and webhook actions in workflows are available only on some paid HubSpot subscriptions. Check HubSpot's current plan details. If yours does not include them, an automation tool such as Zapier, Make or n8n can do the same job.

### How do delivery statuses get into HubSpot?

Our platform posts statuses and inbound replies to the one webhook URL on your account. Point it at your automation tool or endpoint, which looks up the contact by the stored message ID or phone number and writes a note or property through the HubSpot API.

### Can an AI assistant use HubSpot data to send messages?

Yes, if the assistant is connected to HubSpot through HubSpot's own connector or MCP server as well as to our MCP server. Our MCP server sends messages and reads delivery reports; it does not read HubSpot records.

## Developer guides

- https://omnichannels.ai/developers/quickstart/
- https://omnichannels.ai/developers/sms/
- https://omnichannels.ai/developers/webhooks/
- https://omnichannels.ai/developers/zapier-make-webhooks/

## Vendor documentation

- [Use webhooks with HubSpot workflows — HubSpot Knowledge Base](https://knowledge.hubspot.com/workflows/how-do-i-use-webhooks-with-hubspot-workflows)
- [HubSpot developer documentation](https://developers.hubspot.com/docs)

## Related integrations

- https://omnichannels.ai/integrations/salesforce/
- https://omnichannels.ai/integrations/zoho-crm/
- https://omnichannels.ai/integrations/zapier/
- https://omnichannels.ai/integrations/n8n/

HubSpot is a trademark of its owner. OmniChannels.ai is not affiliated with or endorsed by HubSpot; this page describes a connection built with HubSpot's own MCP, HTTP or webhook features.

Updated: 2026-10-10