Programmable automation for HubSpot
Make HubSpot do
Add a real code step to any workflow. JavaScript or Python, any package, minutes of runtime—and every execution is observable, replayable, and safe to test.
- Runtime
- up to 15m
- Packages
- npm + pip
- Data Hub
- not required
Company enrolled
object 4471
- domain
- acme.co
- industry
- —
A real execution
20 seconds is where native stops.
Turbyn pauses the workflow enrollment, gives your code the time it actually needs, then hands the result back and resumes the workflow.
No black boxes
See what your code did.
The editor is only half the product. The rest is knowing what happened after a workflow handed your code a real customer record.
- 01
Imports are the manifest
Use any npm or pip package. Turbyn resolves and pins the dependency tree when you publish.
- 02
Test without writing
Build the event from a real CRM record, then intercept every write before it reaches HubSpot.
- 03
Keep the whole execution
Payload, console, outputs, timing and stack trace. Replay one run or every failure from the last day.
enrich-company
run_8f31 · company 4471
00:00.041 INFO received company 4471
00:00.096 INFO resolving domain acme.co
00:20.000 WAIT enrollment parked
00:40.941 INFO enrichment returned 200
00:41.108 DRY would write industry = "Software"
00:41.214 2 output fields · 74 MB
$
Bring what already works
Paste it in.
Turbyn speaks HubSpot’s handler signature verbatim. The same exports.main, the same event object, and both callback and return styles.
The optional ctx object adds Turbyn’s package, secret and HubSpot helpers. Ignore it until you need it.
HubSpot custom code
normalize-email.js
exports.main = async (event, callback) => {
const email = event.inputFields['email'];
callback({
outputFields: {
normalized: email.trim().toLowerCase()
}
});
};Test passed
callback detected automatically
From code to canvas
A workflow step in
No infrastructure project and no separate webhook service. The action appears in HubSpot beside the steps your team already uses.
- 01
Connect
Install Turbyn and authorise a portal.
- 02
Write
Start from a template or paste an existing action.
- 03
Test
Run against a real record without writing to it.
- 04
Publish
Snapshot the code and pin every dependency.
Place
Pick the action inside the HubSpot workflow builder.
Existing action? Start at step two and paste it unchanged.
Open the quickstartSide by side
The differences.
Concrete limits and behaviour, not a wall of green checkmarks.
The native action is still the simpler choice when its limits are enough. Languages are identical, and keeping code inside HubSpot can be a genuine advantage.
Five more details
Native custom code also requires Data Hub Professional. Read how the gating actually works.
FAQ
Common questions
Do I need Data Hub Professional to use this?
No. Turbyn provides its own workflow action through HubSpot's app platform, and app-provided actions are not gated by Data Hub. You do need the workflow tool itself, which means Professional or Enterprise on some hub.
How is this different from the native custom code action?
The native action stops at 20 seconds and 128 MB. It ships about a dozen packages with no install step, and its test mode writes to the real record. Turbyn has none of those three limits.
Will my existing HubSpot custom code work?
Usually yes, unchanged. Turbyn uses HubSpot's handler signature verbatim, including the same exports.main and event object. Both the modern return style and the older callback style work.
Where does my code actually run?
In an isolated sandbox on Turbyn's infrastructure, one micro-VM per execution. Code from different customers never shares a runtime. Secrets are decrypted at the moment of invocation and injected as environment variables.
What happens to running actions if I disconnect the portal?
In-flight runs are parked rather than lost, and their workflow enrollments stay paused. Reconnect and they resume. HubSpot's pause window is about a week, which is the practical outer bound.
Does it work in the new Agent Hub workflow builder?
Yes. Actions from connected apps appear on HubSpot's new canvas-based builder alongside the native ones. The same saved action works in both the legacy tool and the new one.
Ready when you are
Give one workflow more room.
Bring an action you already have or start from a template. The free tier does not ask for a card.