Use HubL to access and display CRM data within your Custom Quote Template. The template_data object holds most of the data associated to the quote. For anything not found there you can either associated the object record to the quote, or use the HubL CRM_object functions.
@hubspot
folder, navigate to the cms-quotes-theme
folder. Within the templates
folder, view the basic.html
, modern.html
, or original.html
templates. These templates contain the following code block at the top:
mock_data.html
file, then is set to the QUOTE
variable to use the data found in template_data
if available. The QUOTE
variable is also used to populate the other variables in this list, such as ASSOCIATED_OBJECTS
, to make accessing that data less verbose. However, you can structure your data differently, depending on your preferences.
In the above code, you’ll notice that template_data
is also used to set the main QUOTE
variable. template_data
is an object containing all of the actual data for the quote and deal in the page. If that object is not found in the template, HubSpot loads the data from mock_data.html
instead.
template_data
object. You can use {{ template_data|pprint }}
in your template to see the full object provided.
Variable | Type | Description |
---|---|---|
template_data | dict | A dict containing the quote, quote.associated_objects, and totals dicts. |
Variable | Type | Description |
---|---|---|
template_data.quote | dict | Dict containing all of the data for the quote itself. |
template_data.quote.associated_objects.deal.hs_object_id | Integer | Deal Id |
template_data.quote.hubspot_owner_id | Integer | Deal owner id |
template_data.quote.hs_all_owner_ids | integer or array of integers | Deal owner ids |
template_data.quote.hs_created_by_user_id | Integer | User that created the quote. |
template_data.quote.hs_lastmodifieddate | datetime | Date the quote was last modified. In epoch format. |
template_data.quote.hubspot_owner_assigneddate | datetime | Date the quote was assigned an owner. In epoch format. |
template_data.quote.hs_createdate | datetime | Date and time the quote was created. In epoch format. |
template_data.quote.hs_expiration_date | datetime | Date quote expires. In epoch format. |
template_data.quote.hs_title | String | Quote Title |
template_data.quote.hs_template_type | String | ”CUSTOMIZABLE_QUOTE_TEMPLATE” |
template_data.quote.hs_slug | String | URL slug for quote web page. |
template_data.quote.hs_proposal_template_path | String | Developer file system path to template. (includes file extension) |
template_data.quote.hs_quote_amount | String | Amount of money |
template_data.quote.hs_currency | String | Currency the quote amount is in in 3 character ISO 4217 currency code.”USD” |
template_data.quote.hs_language | String | Language code”en” |
template_data.quote.hs_locale | String | Locale code”en-us” |
template_data.quote.hs_terms | String | Terms text provided by quote creator |
template_data.quote.hs_sender_firstname | String | First name of the person sending the quote. |
template_data.quote.hs_sender_company_name | String | Company name of the person sending the quote |
template_data.quote.hs_sender_company_image_url | String | Company logo for the person sending the quote. |
template_data.quote.hs_status | String | Status of the quote.”APPROVAL_NOT_NEEDED” |
template_data.quote.hs_primary_color | string/hex color code | ”#425b76” |
template_data.quote.hs_quote_number | String | Unique quote id number. |
template_data.quote.hs_payment_enabled | boolean | Use to test if payment fields need to be shown. |
template_data.quote.hs_esign_enabled | boolean | Use to test if esignature fields need to be shown. |
template_data
. Use |pprint
to view them. Additionally some variables in quote associations may only be available based on the quote/deal.We will be iterating on this documentation to showcase and explain more of the data you have access to. Aside from pretty printing, you can view the mock data file within the cms-quote-theme, to see what is available and the structure it comes in.associated_objects
.
For example, you can add the logo from the quote recipient’s associated company record to a quote by using the following code:
if
statement, the template displays that logo, if available. If no logo has been manually set for the company, no logo is displayed.
template_data
by default has custom associated objects in it. For example, custom objects associated with deals are included.
To access them, you can use the following code:
template_data.quote.associated_objects.deal.associated_objects.custom_objects._2_2193031
You can also look up a custom object by using the crm_associations()
function and crm_objects()
functions.
For example, if you wanted to look up a custom object associated with a deal, you could pass in data from template_data
: