Using HubSpot actions in action flows

<body>
<p id="docs-hc-snippet" style="display: none;">Before you can include external actions in your action flows, you must connect the action builder to the external system.</p>
<div class="article-banners">
<div id="docs-wmp-link">
<a href="https://support.zendesk.com/hc/en-us/articles/5411234991258-plan" rel="noopener" target="_blank">What's my plan?</a>
</div>
<div class="article-banner" id="suite_all">
<table>
<tbody>
<tr>
<td>
<strong>All Suites</strong>
</td>
<td>Team, Growth, Professional, Enterprise, or Enterprise Plus</td>
</tr>
</tbody>
</table>
</div>
<div class="article-banner" id="support_all">
<table>
<tbody>
<tr>
<td>
<strong>Support</strong>
</td>
<td>Team, Professional, or Enterprise</td>
</tr>
</tbody>
</table>
</div>
</div>
<div id="docs-ai-summary">
<p id="docs-ai-summary-toggle">Summary: <span id="up-triangle">◀</span><span id="down-triangle">▼</span></p>
<p id="docs-ai-summary-content">You can connect action flows to HubSpot to automate CRM tasks like creating, updating, and looking up contacts, companies, deals, tickets, and users. Use a dedicated service account for secure OAuth 2.0 authentication. This integration helps manage customer data and sales processes within your workflows, improving collaboration and data consistency across platforms.</p>
</div>
<div class="body">
<div class="p">By connecting the <a class="xref" href="https://support.zendesk.com/hc/en-us/articles/8855513857306" target="_blank">action builder</a> to external systems, such as HubSpot, admins
can integrate Zendesk with external systems in automated workflows, improving
collaboration and maintaining a seamless experience across multiple platforms.<div class="note" id="zug_action_flow_external_HubSpot__note_i2z_jtz_v3c">
<span class="notetitle">Note:</span> The steps associated with external systems in action flows are
referred to collectively as <em class="ph i">external actions</em>.</div>
</div>
<div class="p">This article contains the following topics:<ul class="ul" id="zug_action_flow_external_HubSpot__ul_ysp_sn4_zgc">
<li class="li"><a class="xref" href="#topic_fcs_gtn_g3c">Connecting HubSpot to action builder</a></li>
<li class="li"><a class="xref" href="#topic_z1q_htn_g3c">Using HubSpot actions in action flows</a></li>
</ul>
</div>
</div>
<div aria-labelledby="ariaid-title2" class="topic nested1" id="topic_fcs_gtn_g3c">
<h2 class="title topictitle2" id="ariaid-title2">Connecting HubSpot to action builder</h2>
<div class="body">
<p class="p">Before you can include external actions in your action flows, you must connect the
action builder to the external system.</p>
<div class="p">When connecting to external systems for use in action flows, the following best practices are recommended:<ul class="ul" id="topic_fcs_gtn_g3c__d8e13">
<li class="li">All external actions performed by an action flow are attributed to the user who connected the
external system. Therefore, it's a best practice to use a dedicated service
account rather than personal credentials when connecting to each external
system.</li>
<li class="li">All integrations request access to necessary scopes. However, it's important that you review and validate the scopes before authorizing the connection to the external system.</li>
<li class="li">When managing credentials for API key-based tools, such as OpenAI, it's best to store keys in a secure vault or credential manager.</li>
</ul>
</div>
<div class="p">
<strong class="ph b">To connect action builder to HubSpot</strong><ol class="ol" id="topic_fcs_gtn_g3c__ol_psh_lk4_zgc">
<li class="li"><span class="ph">In <a class="xref" href="https://support.zendesk.com/hc/en-us/articles/4581766374554#topic_hfg_dyz_1hb" target="_blank">Admin Center</a>, click <img class="image" src="https://zen-marketing-documentation.s3.amazonaws.com/docs/en/ac_apps_integrations_icon.png">
<strong class="ph b">Apps and integrations</strong> in the sidebar, then select <strong class="ph b">Actions &gt; Action
flows</strong>.</span></li>
<li class="li">
<a class="xref" href="https://support.zendesk.com/hc/en-us/articles/8855601898266" target="_blank">Create</a> or <a class="xref" href="https://support.zendesk.com/hc/en-us/articles/9052312956570" target="_blank">edit</a> an action flow.</li>
<li class="li">Open the step sidebar.</li>
<li class="li">Under <strong class="ph b">External actions</strong>, click <strong class="ph b">HubSpot</strong>.</li>
<li class="li">Click <strong class="ph b">Connect</strong>.</li>
<li class="li">Follow HubSpot's prompts to authenticate and complete the connection.<p class="p">The
HubSpot connection uses OAuth 2.0 for secure authentication. You'll be
redirected to HubSpot to authorize access to your account. The connector
automatically handles token refresh when needed. </p>
<div class="note" id="topic_fcs_gtn_g3c__note_ilr_mtz_v3c">
<span class="notetitle">Note:</span> All external actions performed by an action flow
are attributed to the user who connected the external system. Therefore,
it is a best practice to use a dedicated service account rather than
personal credentials when connecting to each external
system.</div>
</li>
</ol>
</div>
<p class="p">After you've connected to the system, you'll see an indicator that it's connected and
details about the instance you're connected to, as well as the actions available for
HubSpot.</p>
</div>
</div>
<div aria-labelledby="ariaid-title3" class="topic nested1" id="topic_z1q_htn_g3c">
<h2 class="title topictitle2" id="ariaid-title3">Using HubSpot actions in action flows</h2>
<div class="body">
<div class="p">The following HubSpot actions are available:<ul class="ul" id="topic_z1q_htn_g3c__ul_jby_q44_zgc">
<li class="li"><a class="xref" href="#topic_wfm_m4q_jjc">Create contact</a></li>
<li class="li"><a class="xref" href="#topic_vmr_lkz_jjc">Update contact</a></li>
<li class="li"><a class="xref" href="#topic_lqp_skz_jjc">Lookup contact</a></li>
<li class="li"><a class="xref" href="#topic_lvn_1nz_jjc">Create company</a></li>
<li class="li"><a class="xref" href="#topic_lyl_jnz_jjc">Update company</a></li>
<li class="li"><a class="xref" href="#topic_t2w_f5d_qjc">Lookup company</a></li>
<li class="li"><a class="xref" href="#topic_p1f_h5d_qjc">Create deal</a></li>
<li class="li"><a class="xref" href="#topic_ndt_35d_qjc">Update deal</a></li>
<li class="li"><a class="xref" href="#topic_tnt_j5d_qjc">Lookup deal</a></li>
<li class="li"><a class="xref" href="#topic_m4r_k5d_qjc">Create ticket</a></li>
<li class="li"><a class="xref" href="#topic_tll_m5d_qjc">Update ticket</a></li>
<li class="li"><a class="xref" href="#topic_x2f_n5d_qjc">Lookup ticket</a></li>
<li class="li"><a class="xref" href="#topic_vpx_45d_qjc">Lookup user</a></li>
</ul>
</div>
</div>
<div aria-labelledby="ariaid-title4" class="topic nested2" id="topic_wfm_m4q_jjc">
<h3 class="title topictitle3" id="ariaid-title4">Creating a contact</h3>
<div class="body">
<p class="p">Use the <em class="ph i">Create contact</em> action to create a new CRM contact using common
standard fields.</p>
<p class="p">This action has the following inputs and outputs:</p>
<div class="p">
<div class="tablenoborder">
<table border="1" cellpadding="4" cellspacing="0" class="table" frame="border" id="topic_wfm_m4q_jjc__table_zlg_ckz_jjc" rules="all" summary="">
<colgroup>
<col>
<col>
</colgroup>
<thead class="thead" style="text-align:left;">
<tr class="row">
<th class="entry cellrowborder" id="d89e247" style="text-align:left;vertical-align:top;"> </th>
<th class="entry cellrowborder" id="d89e249" style="text-align:left;vertical-align:top;">Variables</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry cellrowborder" headers="d89e247" style="text-align:left;vertical-align:top;">Inputs</td>
<td class="entry cellrowborder" headers="d89e249" style="text-align:left;vertical-align:top;">Required: <code class="ph codeph">Email</code><p class="p">Optional:
<code class="ph codeph">First name</code>, <code class="ph codeph">Last
name</code>, <code class="ph codeph">Phone</code>,
<code class="ph codeph">Mobile phone</code>, <code class="ph codeph">Company
name</code>, <code class="ph codeph">Website</code>, <code class="ph codeph">Job
title</code>, <code class="ph codeph">Lifecycle stage</code>,
<code class="ph codeph">Lead status</code></p>
<p class="p">HubSpot custom
properties defined in your account will appear as
additional optional fields. Lifecycle stage includes
options such as Lead, Customer, etc. Lead status
reflects the status of the lead in the sales
process.</p>
</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" headers="d89e247" style="text-align:left;vertical-align:top;">Output</td>
<td class="entry cellrowborder" headers="d89e249" style="text-align:left;vertical-align:top;">Contact details including ID, properties (email,
firstname, lastname, phone, mobilephone, company, website,
jobtitle, lifecyclestage, hs_lead_status, hubspot_owner_id,
and custom properties), createdAt, updatedAt, and archived
status.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div aria-labelledby="ariaid-title5" class="topic nested2" id="topic_vmr_lkz_jjc">
<h3 class="title topictitle3" id="ariaid-title5">Updating a contact</h3>
<div class="body">
<p class="p">Use the <em class="ph i">Update contact</em> action to update an existing contact's fields. </p>
<p class="p">This action has the following inputs and outputs:</p>
<div class="p">
<div class="tablenoborder">
<table border="1" cellpadding="4" cellspacing="0" class="table" frame="border" id="topic_vmr_lkz_jjc__table_wmr_lkz_jjc" rules="all" summary="">
<colgroup>
<col>
<col>
</colgroup>
<thead class="thead" style="text-align:left;">
<tr class="row">
<th class="entry cellrowborder" id="d89e343" style="text-align:left;vertical-align:top;"> </th>
<th class="entry cellrowborder" id="d89e345" style="text-align:left;vertical-align:top;">Variables</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry cellrowborder" headers="d89e343" style="text-align:left;vertical-align:top;">Inputs</td>
<td class="entry cellrowborder" headers="d89e345" style="text-align:left;vertical-align:top;">Required: <code class="ph codeph">Contact ID</code><p class="p">Optional:
<code class="ph codeph">Email</code>, <code class="ph codeph">First name</code>,
<code class="ph codeph">Last name</code>, <code class="ph codeph">Phone</code>,
<code class="ph codeph">Mobile phone</code>, <code class="ph codeph">Company
name</code>, <code class="ph codeph">Website</code>, <code class="ph codeph">Job
title</code>, <code class="ph codeph">Lifecycle stage</code>,
<code class="ph codeph">Lead status</code></p>
<p class="p">Only the Contact
ID is required. Provide only the fields you want to
update. HubSpot custom properties defined in your
account will appear as additional optional
fields.</p>
</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" headers="d89e343" style="text-align:left;vertical-align:top;">Output</td>
<td class="entry cellrowborder" headers="d89e345" style="text-align:left;vertical-align:top;">Contact details including ID, updatedAt timestamp, and
archived status.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div aria-labelledby="ariaid-title6" class="topic nested2" id="topic_lqp_skz_jjc">
<h3 class="title topictitle3" id="ariaid-title6">Looking up a contact</h3>
<div class="body">
<p class="p">Use the <em class="ph i">Lookup contact</em> action to find a contact by ID or email
address.</p>
<p class="p">This action has the following inputs and outputs:</p>
<div class="p">
<div class="tablenoborder">
<table border="1" cellpadding="4" cellspacing="0" class="table" frame="border" id="topic_lqp_skz_jjc__table_nqp_skz_jjc" rules="all" summary="">
<colgroup>
<col>
<col>
</colgroup>
<thead class="thead" style="text-align:left;">
<tr class="row">
<th class="entry cellrowborder" id="d89e442" style="text-align:left;vertical-align:top;"> </th>
<th class="entry cellrowborder" id="d89e444" style="text-align:left;vertical-align:top;">Variables</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry cellrowborder" headers="d89e442" style="text-align:left;vertical-align:top;">Inputs</td>
<td class="entry cellrowborder" headers="d89e444" style="text-align:left;vertical-align:top;">
<p class="p">Optional: <code class="ph codeph">Contact ID</code>,
<code class="ph codeph">Email</code></p>
<p class="p">Provide either Contact ID or Email to look up a contact.
If both are provided, Contact ID takes precedence.</p>
</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" headers="d89e442" style="text-align:left;vertical-align:top;">Output</td>
<td class="entry cellrowborder" headers="d89e444" style="text-align:left;vertical-align:top;">Contact details including ID, properties (standard and
custom fields), createdAt, updatedAt, and archived
status.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div aria-labelledby="ariaid-title7" class="topic nested2" id="topic_lvn_1nz_jjc">
<h3 class="title topictitle3" id="ariaid-title7">Creating a company</h3>
<div class="body">
<p class="p">Use the <em class="ph i">Create company</em> action to create a company record.</p>
<p class="p">This action has the following inputs and outputs:</p>
<div class="p">
<div class="tablenoborder">
<table border="1" cellpadding="4" cellspacing="0" class="table" frame="border" id="topic_lvn_1nz_jjc__table_nvn_1nz_jjc" rules="all" summary="">
<colgroup>
<col>
<col>
</colgroup>
<thead class="thead" style="text-align:left;">
<tr class="row">
<th class="entry cellrowborder" id="d89e517" style="text-align:left;vertical-align:top;"> </th>
<th class="entry cellrowborder" id="d89e519" style="text-align:left;vertical-align:top;">Variables</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry cellrowborder" headers="d89e517" style="text-align:left;vertical-align:top;">Inputs</td>
<td class="entry cellrowborder" headers="d89e519" style="text-align:left;vertical-align:top;">Required: <code class="ph codeph">Company name</code><p class="p">Optional:
<code class="ph codeph">Company domain name</code>,
<code class="ph codeph">Phone</code>, <code class="ph codeph">Website</code>,
<code class="ph codeph">Industry</code>, <code class="ph codeph">City</code>,
<code class="ph codeph">State/region</code>,
<code class="ph codeph">Country</code>, <code class="ph codeph">Owner
ID</code></p>
<p class="p">Owner ID should be the HubSpot user ID
of the company owner. HubSpot custom properties defined
in your account will appear as additional optional
fields.</p>
</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" headers="d89e517" style="text-align:left;vertical-align:top;">Output</td>
<td class="entry cellrowborder" headers="d89e519" style="text-align:left;vertical-align:top;">Company details including ID, properties (name, domain,
phone, website, industry, city, state, country,
hubspot_owner_id, and custom properties), createdAt,
updatedAt, and archived status.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div aria-labelledby="ariaid-title8" class="topic nested2" id="topic_lyl_jnz_jjc">
<h3 class="title topictitle3" id="ariaid-title8">Updating a company</h3>
<div class="body">
<p class="p">Use the <em class="ph i">Update company</em> action to update company fields.</p>
<p class="p">This action has the following inputs and outputs:</p>
<div class="p">
<div class="tablenoborder">
<table border="1" cellpadding="4" cellspacing="0" class="table" frame="border" id="topic_lyl_jnz_jjc__table_myl_jnz_jjc" rules="all" summary="">
<colgroup>
<col>
<col>
</colgroup>
<thead class="thead" style="text-align:left;">
<tr class="row">
<th class="entry cellrowborder" id="d89e610" style="text-align:left;vertical-align:top;"> </th>
<th class="entry cellrowborder" id="d89e612" style="text-align:left;vertical-align:top;">Variables</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry cellrowborder" headers="d89e610" style="text-align:left;vertical-align:top;">Inputs</td>
<td class="entry cellrowborder" headers="d89e612" style="text-align:left;vertical-align:top;">Required: <code class="ph codeph">Company ID</code><p class="p">Optional:
<code class="ph codeph">Company name</code>,
<code class="ph codeph">Domain</code>, <code class="ph codeph">Phone</code>,
<code class="ph codeph">Website</code>, <code class="ph codeph">Industry</code>,
<code class="ph codeph">City</code>,
<code class="ph codeph">State/region</code>, <code class="ph codeph">Country</code>,
<code class="ph codeph">Owner ID</code></p>
<p class="p">Only the Company ID
is required. Provide only the fields you want to update.
HubSpot custom properties defined in your account will
appear as additional optional fields.</p>
</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" headers="d89e610" style="text-align:left;vertical-align:top;">Output</td>
<td class="entry cellrowborder" headers="d89e612" style="text-align:left;vertical-align:top;">Company details including ID, updatedAt timestamp, and
archived status.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div aria-labelledby="ariaid-title9" class="topic nested2" id="topic_t2w_f5d_qjc">
<h3 class="title topictitle3" id="ariaid-title9">Looking up a company</h3>
<div class="body">
<p class="p">Use the <em class="ph i">Lookup company</em> action to find a company by ID or name.</p>
<p class="p">This action has the following inputs and outputs:</p>
<div class="p">
<div class="tablenoborder">
<table border="1" cellpadding="4" cellspacing="0" class="table" frame="border" id="topic_t2w_f5d_qjc__table_u2w_f5d_qjc" rules="all" summary="">
<colgroup>
<col>
<col>
</colgroup>
<thead class="thead" style="text-align:left;">
<tr class="row">
<th class="entry cellrowborder" id="d89e706" style="text-align:left;vertical-align:top;"> </th>
<th class="entry cellrowborder" id="d89e708" style="text-align:left;vertical-align:top;">Variables</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry cellrowborder" headers="d89e706" style="text-align:left;vertical-align:top;">Inputs</td>
<td class="entry cellrowborder" headers="d89e708" style="text-align:left;vertical-align:top;">
<p class="p">Optional: <code class="ph codeph">Company ID</code>, <code class="ph codeph">Company
Name</code></p>
<p class="p">Provide either Company ID or Company name to look up a
company. If both are provided, Company ID takes
precedence.</p>
</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" headers="d89e706" style="text-align:left;vertical-align:top;">Output</td>
<td class="entry cellrowborder" headers="d89e708" style="text-align:left;vertical-align:top;">Company details including ID, properties (standard and
custom fields), createdAt, updatedAt, and archived
status.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div aria-labelledby="ariaid-title10" class="topic nested2" id="topic_p1f_h5d_qjc">
<h3 class="title topictitle3" id="ariaid-title10">Creating a deal</h3>
<div class="body">
<p class="p">Use the <em class="ph i">Create deal</em> action to create a deal.</p>
<p class="p">This action has the following inputs and outputs:</p>
<div class="p">
<div class="tablenoborder">
<table border="1" cellpadding="4" cellspacing="0" class="table" frame="border" id="topic_p1f_h5d_qjc__table_q1f_h5d_qjc" rules="all" summary="">
<colgroup>
<col>
<col>
</colgroup>
<thead class="thead" style="text-align:left;">
<tr class="row">
<th class="entry cellrowborder" id="d89e780" style="text-align:left;vertical-align:top;"> </th>
<th class="entry cellrowborder" id="d89e782" style="text-align:left;vertical-align:top;">Variables</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry cellrowborder" headers="d89e780" style="text-align:left;vertical-align:top;">Inputs</td>
<td class="entry cellrowborder" headers="d89e782" style="text-align:left;vertical-align:top;">Required: <code class="ph codeph">Deal name</code>, <code class="ph codeph">Deal
stage</code><p class="p">Optional: <code class="ph codeph">Amount</code>,
<code class="ph codeph">Close date</code>, <code class="ph codeph">Owner
ID</code>, <code class="ph codeph">Company ID</code>,
<code class="ph codeph">Contact ID</code>, <code class="ph codeph">Deal
type</code>,
<code class="ph codeph">Description</code></p>
<p class="p">Close date should be
in YYYY-MM-DD format or Unix timestamp in milliseconds.
Owner ID should be the HubSpot user ID of the deal
owner. Company ID and Contact ID can be used to
associate the deal with a company and contact. HubSpot
custom properties defined in your account will appear as
additional optional fields.</p>
</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" headers="d89e780" style="text-align:left;vertical-align:top;">Output</td>
<td class="entry cellrowborder" headers="d89e782" style="text-align:left;vertical-align:top;">Deal details including ID, properties (dealname,
pipeline, dealstage, amount, closedate, hubspot_owner_id,
dealtype, description, and custom properties), createdAt,
updatedAt, and archived status.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div aria-labelledby="ariaid-title11" class="topic nested2" id="topic_ndt_35d_qjc">
<h3 class="title topictitle3" id="ariaid-title11">Updating a deal</h3>
<div class="body">
<p class="p">Use the <em class="ph i">Update deal</em> action to update a deal.</p>
<p class="p">This action has the following inputs and outputs:</p>
<div class="p">
<div class="tablenoborder">
<table border="1" cellpadding="4" cellspacing="0" class="table" frame="border" id="topic_ndt_35d_qjc__table_odt_35d_qjc" rules="all" summary="">
<colgroup>
<col>
<col>
</colgroup>
<thead class="thead" style="text-align:left;">
<tr class="row">
<th class="entry cellrowborder" id="d89e873" style="text-align:left;vertical-align:top;"> </th>
<th class="entry cellrowborder" id="d89e875" style="text-align:left;vertical-align:top;">Variables</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry cellrowborder" headers="d89e873" style="text-align:left;vertical-align:top;">Inputs</td>
<td class="entry cellrowborder" headers="d89e875" style="text-align:left;vertical-align:top;">Required: <code class="ph codeph">Deal ID</code><p class="p">Optional:
<code class="ph codeph">Deal name</code>,
<code class="ph codeph">Pipeline</code>, <code class="ph codeph">Deal
stage</code>, <code class="ph codeph">Amount</code>,
<code class="ph codeph">Close date</code>, <code class="ph codeph">Owner
ID</code>, <code class="ph codeph">Company ID</code>,
<code class="ph codeph">Contact ID</code>, <code class="ph codeph">Deal
type</code>,
<code class="ph codeph">Description</code></p>
<p class="p">Only the Deal ID is
required. Provide only the fields you want to update.
Close date should be in YYYY-MM-DD format or Unix
timestamp in milliseconds. HubSpot custom properties
defined in your account will appear as additional
optional fields.</p>
</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" headers="d89e873" style="text-align:left;vertical-align:top;">Output</td>
<td class="entry cellrowborder" headers="d89e875" style="text-align:left;vertical-align:top;">Deal details including ID, updatedAt timestamp, and
archived status.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div aria-labelledby="ariaid-title12" class="topic nested2" id="topic_tnt_j5d_qjc">
<h3 class="title topictitle3" id="ariaid-title12">Looking up a deal</h3>
<div class="body">
<p class="p">Use the <em class="ph i">Lookup deal</em> action to find a deal by ID or name.</p>
<p class="p">This action has the following inputs and outputs:</p>
<div class="p">
<div class="tablenoborder">
<table border="1" cellpadding="4" cellspacing="0" class="table" frame="border" id="topic_tnt_j5d_qjc__table_unt_j5d_qjc" rules="all" summary="">
<colgroup>
<col>
<col>
</colgroup>
<thead class="thead" style="text-align:left;">
<tr class="row">
<th class="entry cellrowborder" id="d89e972" style="text-align:left;vertical-align:top;"> </th>
<th class="entry cellrowborder" id="d89e974" style="text-align:left;vertical-align:top;">Variables</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry cellrowborder" headers="d89e972" style="text-align:left;vertical-align:top;">Inputs</td>
<td class="entry cellrowborder" headers="d89e974" style="text-align:left;vertical-align:top;">
<p class="p">Optional: <code class="ph codeph">Deal ID</code> or <code class="ph codeph">Deal
name</code></p>
<p class="p">Provide either Deal ID or Deal name to look up a deal. If
both are provided, Deal ID takes precedence.</p>
</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" headers="d89e972" style="text-align:left;vertical-align:top;">Output</td>
<td class="entry cellrowborder" headers="d89e974" style="text-align:left;vertical-align:top;">Deal details including ID, properties (standard and
custom fields), createdAt, updatedAt, and archived
status.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div aria-labelledby="ariaid-title13" class="topic nested2" id="topic_m4r_k5d_qjc">
<h3 class="title topictitle3" id="ariaid-title13">Creating a ticket</h3>
<div class="body">
<p class="p">Use the <em class="ph i">Create ticket</em> action to create a ticket.</p>
<p class="p">This action has the following inputs and outputs:</p>
<div class="p">
<div class="tablenoborder">
<table border="1" cellpadding="4" cellspacing="0" class="table" frame="border" id="topic_m4r_k5d_qjc__table_n4r_k5d_qjc" rules="all" summary="">
<colgroup>
<col>
<col>
</colgroup>
<thead class="thead" style="text-align:left;">
<tr class="row">
<th class="entry cellrowborder" id="d89e1047" style="text-align:left;vertical-align:top;"> </th>
<th class="entry cellrowborder" id="d89e1049" style="text-align:left;vertical-align:top;">Variables</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry cellrowborder" headers="d89e1047" style="text-align:left;vertical-align:top;">Inputs</td>
<td class="entry cellrowborder" headers="d89e1049" style="text-align:left;vertical-align:top;">Required: <code class="ph codeph">Ticket name</code>, <code class="ph codeph">Ticket
stage</code><p class="p">Optional: <code class="ph codeph">Description</code>,
<code class="ph codeph">Ticket pipeline</code>,
<code class="ph codeph">Priority</code>, <code class="ph codeph">Source</code>,
<code class="ph codeph">Owner ID</code></p>
<p class="p">Ticket stage
represents the stage of the ticket within the pipeline.
Priority levels include options such as High, Medium,
and Low. Source indicates the channel or origin of the
ticket. Owner ID should be the HubSpot user ID of the
ticket owner. HubSpot custom properties defined in your
account will appear as additional optional
fields.</p>
</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" headers="d89e1047" style="text-align:left;vertical-align:top;">Output</td>
<td class="entry cellrowborder" headers="d89e1049" style="text-align:left;vertical-align:top;">Ticket details including ID, properties (subject,
content, hs_pipeline, hs_pipeline_stage, hs_ticket_priority,
source_type, hubspot_owner_id, and custom properties),
createdAt, updatedAt, and archived status.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div aria-labelledby="ariaid-title14" class="topic nested2" id="topic_tll_m5d_qjc">
<h3 class="title topictitle3" id="ariaid-title14">Updating a ticket</h3>
<div class="body">
<p class="p">Use the <em class="ph i">Update ticket</em> action to update a ticket.</p>
<p class="p">This action has the following inputs and outputs:</p>
<div class="p">
<div class="tablenoborder">
<table border="1" cellpadding="4" cellspacing="0" class="table" frame="border" id="topic_tll_m5d_qjc__table_ull_m5d_qjc" rules="all" summary="">
<colgroup>
<col>
<col>
</colgroup>
<thead class="thead" style="text-align:left;">
<tr class="row">
<th class="entry cellrowborder" id="d89e1133" style="text-align:left;vertical-align:top;"> </th>
<th class="entry cellrowborder" id="d89e1135" style="text-align:left;vertical-align:top;">Variables</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry cellrowborder" headers="d89e1133" style="text-align:left;vertical-align:top;">Inputs</td>
<td class="entry cellrowborder" headers="d89e1135" style="text-align:left;vertical-align:top;">Required: <code class="ph codeph">Ticket ID</code><p class="p">Optional:
<code class="ph codeph">Ticket name</code>,
<code class="ph codeph">Description</code>, <code class="ph codeph">Ticket
pipeline</code>, <code class="ph codeph">Ticket stage</code>,
<code class="ph codeph">Priority</code>, <code class="ph codeph">Owner
ID</code></p>
<p class="p">Only the Ticket ID is required.
Provide only the fields you want to update. HubSpot
custom properties defined in your account will appear as
additional optional fields.</p>
</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" headers="d89e1133" style="text-align:left;vertical-align:top;">Output</td>
<td class="entry cellrowborder" headers="d89e1135" style="text-align:left;vertical-align:top;">Ticket details including ID, updatedAt timestamp, and
archived status.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div aria-labelledby="ariaid-title15" class="topic nested2" id="topic_x2f_n5d_qjc">
<h3 class="title topictitle3" id="ariaid-title15">Looking up a ticket</h3>
<div class="body">
<p class="p">Use the <em class="ph i">Lookup ticket</em> action to find a ticket by ID or name.</p>
<p class="p">This action has the following inputs and outputs:</p>
<div class="p">
<div class="tablenoborder">
<table border="1" cellpadding="4" cellspacing="0" class="table" frame="border" id="topic_x2f_n5d_qjc__table_y2f_n5d_qjc" rules="all" summary="">
<colgroup>
<col>
<col>
</colgroup>
<thead class="thead" style="text-align:left;">
<tr class="row">
<th class="entry cellrowborder" id="d89e1220" style="text-align:left;vertical-align:top;"> </th>
<th class="entry cellrowborder" id="d89e1222" style="text-align:left;vertical-align:top;">Variables</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry cellrowborder" headers="d89e1220" style="text-align:left;vertical-align:top;">Inputs</td>
<td class="entry cellrowborder" headers="d89e1222" style="text-align:left;vertical-align:top;">
<p class="p">Optional: <code class="ph codeph">Ticket ID</code>, <code class="ph codeph">Ticket
name</code>, <code class="ph codeph">Content</code></p>
<p class="p">Provide either Ticket ID or Ticket name to look up a
ticket. If both are provided, Ticket ID takes
precedence.</p>
</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" headers="d89e1220" style="text-align:left;vertical-align:top;">Output</td>
<td class="entry cellrowborder" headers="d89e1222" style="text-align:left;vertical-align:top;">Ticket details including ID, properties (standard and
custom fields), createdAt, updatedAt, and archived
status</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div aria-labelledby="ariaid-title16" class="topic nested2" id="topic_vpx_45d_qjc">
<h3 class="title topictitle3" id="ariaid-title16">Looking up a user</h3>
<div class="body">
<p class="p">Use the <em class="ph i">Lookup user</em> action to find a user by ID or email address.</p>
<p class="p">This action has the following inputs and outputs:</p>
<div class="p">
<div class="tablenoborder">
<table border="1" cellpadding="4" cellspacing="0" class="table" frame="border" id="topic_vpx_45d_qjc__table_wpx_45d_qjc" rules="all" summary="">
<colgroup>
<col>
<col>
</colgroup>
<thead class="thead" style="text-align:left;">
<tr class="row">
<th class="entry cellrowborder" id="d89e1297" style="text-align:left;vertical-align:top;"> </th>
<th class="entry cellrowborder" id="d89e1299" style="text-align:left;vertical-align:top;">Variables</th>
</tr>
</thead>
<tbody class="tbody">
<tr class="row">
<td class="entry cellrowborder" headers="d89e1297" style="text-align:left;vertical-align:top;">Inputs</td>
<td class="entry cellrowborder" headers="d89e1299" style="text-align:left;vertical-align:top;">
<p class="p">Optional: <code class="ph codeph">User ID</code>,
<code class="ph codeph">Email</code></p>
<p class="p">Provide either User ID or Email to look up a user. If
both are provided, User ID takes precedence.</p>
</td>
</tr>
<tr class="row">
<td class="entry cellrowborder" headers="d89e1297" style="text-align:left;vertical-align:top;">Output</td>
<td class="entry cellrowborder" headers="d89e1299" style="text-align:left;vertical-align:top;">User details including ID, email, firstName, and
lastName.</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
<script id="docs-schema-markup" type="application/ld+json">{
"@context": "https://schema.org",
"@type": "TechArticle",
"@id": "https://support.zendesk.com/hc/en-us/articles/10917655354138-Using-HubSpot-actions-in-action-flows",
"url": "https://support.zendesk.com/hc/en-us/articles/10917655354138-Using-HubSpot-actions-in-action-flows",
"headline": "Using HubSpot actions in action flows",
"description": "You can connect the action builder to HubSpot to automate workflows by creating, updating, and looking up contacts, companies, deals, tickets, and users through external actions in action flows.",
"articleSection": "Product help",
"datePublished": "2026-06-19T00:41:35.400623+00:00",
"dateModified": "2026-06-19T00:41:37.558107+00:00",
"inLanguage": "en-US",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://support.zendesk.com/hc/en-us/articles/10917655354138-Using-HubSpot-actions-in-action-flows"
},
"author": {
"@type": "Organization",
"name": "Zendesk",
"url": "https://www.zendesk.com"
},
"publisher": {
"@type": "Organization",
"name": "Zendesk"
},
"isPartOf": {
"@type": "WebSite",
"name": "Zendesk Help",
"url": "https://support.zendesk.com/hc/en-us"
},
"about": {
"@type": "SoftwareApplication",
"name": "Zendesk"
}
}</script><script id="ai-summary-script">
//<![CDATA[
const ai_summary_style = document.createElement('style');
ai_summary_style.innerHTML = `#styled-article-body{padding:0 0 0}#article-body #docs-ai-summary{background-color:#f3f3f3;border:1px solid #d3d3d3;padding:10px 10px 6px;margin-bottom:16px}#article-body #docs-ai-summary #docs-ai-summary-toggle{font-size:.9em;font-weight:700;margin-bottom:4px;cursor:pointer;display:flex;justify-content:space-between;align-items:center}#article-body #docs-ai-summary #docs-ai-summary-toggle #up-triangle{margin-left:auto;padding-right:10px;display:none}#article-body #docs-ai-summary #docs-ai-summary-toggle #down-triangle{margin-left:auto;padding-right:10px}#article-body #docs-ai-summary #docs-ai-summary-content{font-size:.9em;padding-left:25px;padding-right:25px;margin-bottom:12px}`;
document.head.appendChild(ai_summary_style);

const toggleAISummary = () => {
const summary = document.getElementById("docs-ai-summary-content");
const upTriangle = document.getElementById("up-triangle");
const downTriangle = document.getElementById("down-triangle");
if (summary.style.display === "none") {
summary.style.display = "block";
upTriangle.style.display = "none";
downTriangle.style.display = "inline";
} else {
summary.style.display = "none";
upTriangle.style.display = "inline";
downTriangle.style.display = "none";
}
};

document.getElementById("docs-ai-summary-toggle").addEventListener("click", toggleAISummary);
//]]>
</script>
</body>