Simplesat surveys reach your HubSpot contacts inside the emails HubSpot sends: the email your ticket pipeline sends when a ticket closes, a marketing email, or an automated email from a workflow. A HubSpot workflow can also ask Simplesat to send the survey email itself.
Connect HubSpot, and each rating lands on the HubSpot contact or ticket it belongs to, while HubSpot's ticket and contact details come back onto the response in Simplesat.
Survey code pasted into a HubSpot email works without connecting HubSpot.
What the HubSpot integrations do
The HubSpot page groups its integrations under Account-wide integrations, Survey integrations and Ticket integrations. None of them sends a survey.
Integration | Listed under | What it does | Where it shows |
Sync contacts | Account-wide integrations | Reads your HubSpot contacts once a day and creates or updates a Simplesat customer for each | In Simplesat, on Customers |
Pull contact details | Survey integrations | Right after a response arrives, updates the Simplesat customer from the HubSpot contact with the same email | On the customer in Simplesat |
Update contact properties with rating details | Survey integrations | Writes the response to the contact properties you map | On the contact in HubSpot |
Create custom objects from feedback | Survey integrations | Creates a Simplesat feedback record in HubSpot for the response | In your Simplesat feedback records in HubSpot, and on the contact |
Create follow-up tickets from feedback | Survey integrations | Creates a HubSpot ticket from the response | In your default ticket pipeline in HubSpot |
Create task on contact upon receiving feedback | Survey integrations | Creates a HubSpot task on the contact | On the contact in HubSpot |
Add note to contact after receiving feedback | Survey integrations | Adds a note with the response to the contact | On the contact in HubSpot |
Pull ticket details | Ticket integrations | Adds the HubSpot ticket's subject, owner, contact and company to the response | On the response in Simplesat |
Add notes to rated tickets | Ticket integrations | Adds a note with the response to the ticket | On the ticket in HubSpot |
Update ticket properties with rating details | Ticket integrations | Writes the response to the ticket properties you map | On the ticket in HubSpot |
Integrations under Ticket integrations run only on surveys connected to HubSpot. Those are External email embed surveys with the HubSpot Service Hub or HubSpot Email and Marketing Hub option, and Event-based surveys with Connected service set to HubSpot. Integrations under Survey integrations run on responses from any survey, however it was sent.
Every integration that runs on responses, except Add note to contact after receiving feedback, has a When should this integration run? setting. Under Let me choose, an integration runs only on the surveys you switch on, and new surveys start off. Writing feedback back, and mapping the fields covers these settings and their timing.
Create custom objects from feedback, Create follow-up tickets from feedback and Create task on contact upon receiving feedback also let you pick sentiments, with and without a comment.
Heads up: Surveys sent with HubSpot Email and Marketing Hub count as connected to HubSpot, but their responses have no HubSpot ticket. On each integration under Ticket integrations, choose Let me choose under When should this integration run? and leave those surveys off.
Note: If we've changed one of your HubSpot integrations for you, it can work differently from what's described here. Contact us to check what yours does.
Before you start
Every Simplesat plan includes the HubSpot integrations. Connecting HubSpot and switching integrations on takes the Manage integrations permission in Simplesat, which Owner and Admin have by default.
What you're setting up | What it needs in HubSpot |
Connecting HubSpot | A HubSpot user with Super Admin or App Marketplace access permissions. |
A survey in an automated email a HubSpot workflow sends | Marketing Hub Professional or Enterprise |
A survey in a ticket email, Pull ticket details, Add notes to rated tickets and Update ticket properties with rating details | HubSpot tickets, and surveys sent from a HubSpot ticket |
Update contact properties with rating details and Update ticket properties with rating details | The properties you write to, created in HubSpot |
Create custom objects from feedback | An Enterprise subscription to any HubSpot hub, and a Simplesat feedback object you create in HubSpot |
A survey email Simplesat sends when a HubSpot workflow asks | A custom code action in the workflow, on Data Hub Professional or Enterprise. In Simplesat, an API key. |
Integration security, permissions and data flow covers what the connection can read and write.
Connect HubSpot
On the Integrations page, open HubSpot and click Authenticate.
Sign in to HubSpot, choose the account you want to connect, and connect the app.
You return to the HubSpot page, which now shows Authenticated with HubSpot. Click Activate integration on each integration you want. Its settings, and its Field mapping where it has one, appear once it's on.
A workspace connects to one HubSpot account at a time.
Once an integration is on, send a real response through it to check that it works. Testing an integration end to end walks through it.
Send surveys from HubSpot
To put a survey inside an email HubSpot sends, copy its code in Simplesat:
Create or open the survey and choose External email embed.
Under Choose where to add your survey, choose HubSpot Service Hub for ticket emails, or HubSpot Email and Marketing Hub for marketing and workflow emails.
On Publish, click Generate embed code.
Choose HTML and click Copy survey.
HubSpot then decides who gets the email and when, so Simplesat's Delay and Suppression don't apply. If you want Simplesat to send the email, use an Event-based survey that a HubSpot workflow triggers. Choosing a survey delivery method compares the options.
HubSpot Service Hub
Use this option for the email your ticket pipeline sends when a ticket closes, or for any other email sent from a HubSpot ticket. To add the survey to the closing email:
In HubSpot's design tools, paste the HTML into a custom email module and publish the module.
In your ticket pipeline's automation, edit the email sent when a ticket moves to its closed status, and add the module.
Save the automation. When HubSpot asks whether to send the email now, choose No.
When HubSpot sends the email, it fills in these placeholders in the survey links:
What the link carries | HubSpot placeholder |
Ticket ID |
|
Ticket subject |
|
Customer email |
|
Customer ID |
|
Customer first name |
|
Customer last name |
|
Company |
|
Team member email |
|
Team member first name |
|
Team member last name |
|
For how placeholders work across tools, see Placeholders and merge fields.
The team member is the ticket owner, matched to a Simplesat team member by email. They're credited with the role Team member until Pull ticket details changes it to Owner.
Because the ticket ID travels in the link, Simplesat keeps one response per ticket for each survey. A second rating on the same ticket updates the first response.
HubSpot Email and Marketing Hub
Use this option for marketing emails, and for automated emails a HubSpot workflow sends, which need Marketing Hub Professional or Enterprise. In HubSpot, add a custom email module with the HTML to the marketing email, or to the email the workflow sends.
The code carries the contact's email, HubSpot ID, first and last name and company, from {{contact.email}}, {{contact.hs_object_id}}, {{contact.firstname}}, {{contact.lastname}} and {{company.name}}. Those placeholders work in any workflow email. The link has no ticket or team member, so these responses get a random ticket ID that isn't a HubSpot ticket.
Every click on a rating records a new response, so a contact who clicks twice leaves two.
Simplesat email from a HubSpot workflow
With this route, a HubSpot workflow calls Simplesat, and Simplesat sends the email with the survey's Delay and Suppression applied.
In Simplesat:
Create the survey with Direct email delivery → Event-based.
On the survey's Delivery subtab, set Connected service to HubSpot. Without it, the integrations under Ticket integrations don't run on these responses.
Copy the Endpoint, and the request body from Copy request body.
Create an API key. Direct email surveys covers API keys.
In HubSpot:
Add a custom code action to the workflow. It runs code you write in JavaScript (Node.js) or Python, and needs Data Hub Professional or Enterprise.
Store your API key as a secret in the action. The code reads it as an environment variable.
Write code that sends a POST request to the survey's Endpoint, with the API key in a header named
X-Simplesat-Token, and the request body you copied. In the body, put the contact's email as the customer's email. For the integrations under Ticket integrations, also put the HubSpot ticket's ID in as the ticket ID.
These emails show on the survey's Email activity. When one doesn't arrive, When a survey does not send lists what to check.
Feedback in HubSpot
Integrations that write to a contact use the matching contact, meaning the HubSpot contact whose email is the response's customer email. If a response has no customer email, or its email isn't on a HubSpot contact, nothing is written to contacts.
Integrations that write to a ticket use the rated ticket, meaning the HubSpot ticket whose ID came in with the response. That ID comes only from the HubSpot Service Hub code, or from an Event-based request that includes it.
Simplesat writes to HubSpot no sooner than five minutes after a response arrives, and again when the response changes. A rating changed in Simplesat goes to HubSpot right away. Create follow-up tickets from feedback is the exception: it runs only when a response arrives. Notes, feedback records and tasks are created fresh on every run, so a comment that comes in after the rating adds a second one.
Heads up: When HubSpot refuses an update, Simplesat shows no error. Support can read the integration's log and re-run it once the cause is fixed.
Update contact properties with rating details
Keep each contact's latest feedback in HubSpot properties you choose, where you can filter, report and build workflows on it. On every run, Simplesat writes all your mapped rows to the matching contact in one update, replacing the last response's values.
In HubSpot, create the contact properties you want to write to. Simplesat doesn't create them.
In Simplesat, open the integration. If the page was already open, reload it. The first column of Field mapping, Hubspot V3 field, lists your contact properties as they were when the page loaded.
Map the rows you want, and leave the rest on Ignore. A row can take:
the rating, sentiment or comment of the question your metric rating comes from
the answer to a specific question on a specific survey
another response field, such as the rating label, the survey name or the response's created time
a value you type
Click Save under the table. Nothing is saved until you do.
Update ticket properties with rating details
Put the feedback on the ticket it's about. Simplesat writes your mapped rows to the rated ticket. Its Field mapping lists your HubSpot ticket properties and takes the same kinds of values as the contact version. Create each property on tickets in HubSpot first.
What HubSpot properties accept
Simplesat doesn't check a property's type when you map it, and all mapped values go to HubSpot in one update. If HubSpot refuses one value, nothing in that update is written.
A dropdown property accepts only its options' internal values, matched exactly, punctuation included. The answer "Yes, email me." matches only an option whose internal value ends with the period.
A number property takes digits, with at most one decimal point.
A date property takes only a date at midnight UTC. For the response's created time, use a date and time property.
Add notes to rated tickets
Your team sees the full response on the rated ticket as a note, dated when the response was created. The note opens with "customer name or email left sentiment feedback for survey name", or "Someone left" when there's no customer, and links to the customer and the response in Simplesat. Next comes every question with its answer. The metric rating shows as the rating, an emoji and its label, and follow-up answers sit under their question.
Add note to contact after receiving feedback
Simplesat adds a note to the matching contact with every question and its answer.
Heads up: This integration has no settings, so it runs on every response from every survey, whatever tool sent it, when the customer email belongs to a HubSpot contact. To stop it, click Deactivate integration.
Create custom objects from feedback
Give every response its own Simplesat feedback record in HubSpot, on the matching contact. A record holds the metric rating, its sentiment and its follow-up answer, the survey's name, and a link to the response in Simplesat.
Simplesat doesn't create the object. In HubSpot, create a custom object named Simplesat feedback, which gives it the internal name simplesat_feedback. Make Sentiment its primary display property, and give it these properties:
Label | Internal name | Property type |
Sentiment |
| Single-line text |
Rating |
| Number |
Follow up answer |
| Single-line text |
Survey name |
| Single-line text |
URL |
| Rich text |
Then add an association with Contacts.
Warning: HubSpot sets an object's or property's internal name when you create it, and it can't be changed after you save. Check every internal name before you save. A property with a different internal name, such as comment in place of follow_up_answer, makes HubSpot refuse the whole record.
This integration has no Field mapping. A response without a customer email still gets a record, with no contact.
Ticket, contact and owner details in Simplesat
Responses arrive with the ticket, contact and owner details the survey link carried. Pull ticket details and Pull contact details then read HubSpot and update them. Attribution: linking feedback to tickets, customers and agents covers how Simplesat ties a response to a customer, a ticket and a team member.
Pull ticket details
Simplesat reads the rated ticket as soon as a response arrives, and again when the response changes, and writes to the response:
Team member: the ticket's owner, with their email, name and HubSpot ID, in the role Owner
Customer: the ticket's first associated contact, with their email, name and HubSpot contact ID
Company: the name of that contact's first associated company
Ticket: its ID and subject
The pull replaces the response's team members and customer, and credits whoever owns the ticket when it runs. It doesn't read the ticket's priority, pipeline, stage, category or ticket properties.
If the ticket has no owner, the response still gets the ticket's contact and company. If the ticket has no associated contact, or the contact has no email, the response keeps the customer the link carried. If Simplesat can't read the ticket at all, the response keeps everything the link carried.
Pull contact details
Simplesat updates the customer from the matching contact as soon as a response arrives, and again when it changes. The customer gets their HubSpot contact ID, their name from the first and last name, and their company from the contact's Company name property, not the associated company. The pull needs a customer email on the response. It doesn't change the ticket, the team member, or the customer's attributes and tags.
Sync contacts
Your HubSpot contacts come into Simplesat as customers once a day, at the time of day the sync was switched on. The first run brings in up to 10,000 contacts with an email address. After that, a run brings in the contacts updated in the 24 hours before it.
Customers get their name from the contact's first and last name, their email, their HubSpot contact ID, and their company from the Company name property, not the associated company. There's no filter by list, lifecycle stage or owner, and no other HubSpot properties come in by default. We can add contact properties to the sync on request, and they come in as customer attributes. Once the sync brings in attributes, each run replaces all of a customer's attributes, including ones from a CSV import.
Contact sync from a connected tool covers what every tool's contact sync has in common.
Follow-up tickets and tasks in HubSpot
Turn feedback into work your team sees in HubSpot: a ticket in your pipeline, or a task on the contact. Creating a follow-up ticket from feedback covers follow-ups in every tool.
Create follow-up tickets from feedback
Simplesat opens a HubSpot ticket when a response arrives, once per response.
Heads up: Until you choose Let me choose and switch positive responses off, every rating on every survey creates a ticket.
The subject reads "New sentiment feedback from customer name on ticket ticket ID". The ID there is the one on the response, so it points to a real HubSpot ticket only when the survey was sent from one. The description lists the survey, the customer's name and email, the rating and its label, and the comment.
New tickets land in your default ticket pipeline with no owner or priority. They aren't associated with the contact, a company or the rated ticket, so they don't show on the contact's record. The subject, pipeline and description can't be changed in Simplesat, and there's no Field mapping. To assign the tickets or move them to another pipeline, use a HubSpot workflow.
Create task on contact upon receiving feedback
Give someone a to-do on the matching contact when feedback comes in. The task is due 7 days after Simplesat creates it, with the status Not started and the priority Low.
The subject reads "customer name left sentiment feedback for ticket ticket ID on survey survey name". The body says who left what feedback on which survey, links to the customer and the response in Simplesat, and lists every question with its answer.
The task's owner is the response's team member, matched by their HubSpot owner ID, which a team member has once Pull ticket details has run on a ticket with an associated contact. When the response has no team member, the task is created without an owner. On surveys sent from another tool, the team member carries that tool's ID rather than a HubSpot owner ID, so if you run this integration on those surveys, set an owner in Field mapping. That owner then goes on all of the integration's tasks, not only the ones from those surveys. The same table has rows for the subject, body, due date, status, priority and task type.
Change the HubSpot account or move HubSpot
Change the HubSpot account
To connect another HubSpot user or account:
Click Revoke access. Every HubSpot integration stops, Sync contacts included. Their settings and Field mapping stay.
Click Authenticate, sign in, and choose the account.
Click Activate integration on each integration you use. An integration stays off until you do, and responses that arrive in between aren't sent to HubSpot.
Heads up: If you save Field mapping on an integration that's off, it shows Active, but Simplesat sends it nothing. To start it, click Deactivate integration, then Activate integration.
Survey code in your HubSpot emails keeps working through the change. So does a Simplesat email from a HubSpot workflow, because it runs on a Simplesat API key.
Move to another HubSpot account
For a new HubSpot account, or a move from a HubSpot sandbox to production:
Write down which integrations are on and how they're set.
In the new HubSpot account, create the properties your Field mapping writes to, with the same internal names. If you use Create custom objects from feedback, create the Simplesat feedback object and its properties there too.
Click Revoke access, then Authenticate, and choose the new account.
Click Activate integration on each integration. Then map again any rows whose internal names changed.
Add the survey code to the emails in the new account.
Contact, owner and ticket IDs differ between HubSpot accounts, so IDs Simplesat saved from the old account don't match the new one.
Troubleshooting
I get "Couldn't complete the connection" when I connect HubSpot
HubSpot shows this on its own page when it refuses the connection. Connecting needs a HubSpot user with Super Admin or App Marketplace access permissions. When HubSpot's reason is about scopes, such as "Authorization failed because one or more scopes are invalid" or "Authorization failed because the provided scopes are missing", the scopes come from Simplesat's HubSpot app, not from your HubSpot role. Signing in as a different user won't change them. Contact us with HubSpot's message.
My HubSpot integrations stopped, but the page still says Authenticated with HubSpot
Simplesat doesn't check the connection again after you connect. If Simplesat's app is uninstalled in HubSpot, under Settings → Integrations → Connected Apps, the integrations fail and the page still reads Authenticated with HubSpot. Click Revoke access, then Authenticate, then activate each integration again. Integration error messages and what they mean explains what the page shows.
My HubSpot integration shows Inactive after I activated it
An integration turns off only when someone clicks Deactivate integration, or clicks Revoke access, which turns off every HubSpot integration. After we change one of your integrations for you, it can be off until you click Activate integration. If it still shows Inactive after you activate it, or it shows Inactive while it's writing to HubSpot, contact us with the integration's name.
Responses from my HubSpot email come in as anonymous
A response gets a customer when the survey link carries the contact's email. HubSpot adds it from {{contact.email}} when it sends the email to a contact. Code copied from Generic Embed has no HubSpot placeholders, so copy the code from HubSpot Email and Marketing Hub or HubSpot Service Hub instead. A contact with no email address in HubSpot gives no customer either.
Pull ticket details can add a customer only when the response carries a HubSpot ticket ID, from the HubSpot Service Hub code or an Event-based request, and that ticket has an associated contact with an email. Pull contact details needs a customer email already on the response.
Responses from the survey in our email signatures come in anonymous
Code copied from Generic Embed carries no HubSpot placeholders, and in a signature it's the same in every email. A response from it has a customer only when the respondent enters their name and email. If you type an email address into the code, every response gets that address. In marketing emails HubSpot sends, the code from HubSpot Email and Marketing Hub fills in each recipient's details. In ticket emails, the code from HubSpot Service Hub does.
The HubSpot properties I created aren't in the Field mapping table
Field mapping lists your HubSpot properties as they were when the integration's page loaded, so reload the page after you create a property. Update contact properties with rating details lists contact properties, and Update ticket properties with rating details lists ticket properties. You can't add rows in Simplesat. A property that's still missing after a reload usually doesn't exist on that HubSpot object yet, so create it in HubSpot first. If it does exist there and still isn't listed, contact us with its internal name. Writing feedback back, and mapping the fields has more on mapping.
HubSpot says my value "was not one of the allowed options"
The property is a dropdown, and a dropdown accepts only its options' internal values. A rating of 10 written to a dropdown with the options Promoter, Neutral and Detractor is refused. An answer has to match an option's internal value exactly, punctuation included. Use a number property for a rating, or set each option's internal value to the value Simplesat sends.
HubSpot refuses the whole update, so the other properties in that mapping aren't written either. Support can read HubSpot's message in the integration's log.
Some of my HubSpot contacts don't have their rating in the property
Check each of these:
The response has a customer email, and it's on a HubSpot contact. The integration doesn't create contacts.
The response arrived after you activated the integration. Earlier responses aren't sent.
Under Let me choose, the survey is switched on. New surveys start off.
At least five minutes, plus the time the integration takes to run, have passed since the response arrived.
HubSpot didn't refuse a mapped value. If it refuses one value, nothing in that update is written.
The response isn't hidden or marked as spam. Those responses aren't sent.
If you saved Field mapping while the integration was off, it shows Active but sends nothing. Click Deactivate integration, then Activate integration.
If all of that checks out, send us the response's link. Support can read the integration's log and re-run it once the cause is fixed.
Notes and properties don't show up on my HubSpot tickets
Check each of these:
The response carries a HubSpot ticket ID. The HubSpot Service Hub code carries it from
{{ticket.hs_ticket_id}}. An Event-based survey needs it in the request, with Connected service set to HubSpot. HubSpot Email and Marketing Hub responses have a random ticket ID, so leave those surveys off under Let me choose.The property exists on HubSpot tickets.
At least five minutes, plus the time the integration takes to run, have passed since the response arrived.
If someone clicked Revoke access and Authenticate, each integration has been activated again.
If you saved Field mapping while the integration was off, it shows Active but sends nothing. Click Deactivate integration, then Activate integration.
Simplesat doesn't show HubSpot's refusals. If all of that checks out, send us the response's link and support can read the log.
I activated Create custom objects from feedback, but no records show up in HubSpot
Check each of these:
Your HubSpot account is on Enterprise. Custom objects need it.
The object's internal name is
simplesat_feedback, and its properties' internal names aresentiment,rating,follow_up_answer,survey_nameandurl. A property with another internal name makes HubSpot refuse the record. Internal names can't be changed once saved, so create a new property with the correct internal name. The integration writes only to those five. If the object's internal name came out wrong, delete the object and create it again, named Simplesat feedback.The response arrived after the object existed and while the integration was on.
At least five minutes, plus the time the integration takes to run, have passed since the response arrived.
Look for the records in your Simplesat feedback records in HubSpot, and on the record of the contact with the customer's email.
My follow-up tickets stopped showing up in HubSpot
Look in your default ticket pipeline first. New tickets land there and aren't associated with the contact, so they don't show on the contact's record. Simplesat also creates a ticket only when a response arrives, not when its rating changes or a comment comes in later. Then check each of these:
Under Let me choose, the survey and its sentiment switches are on. A survey created later is off until you switch it on.
The response isn't marked as spam. Those responses aren't sent.
If someone clicked Revoke access and Authenticate, the integration has been activated again.
If all of that checks out, send us a response's link.
My task subject in Field mapping shows codes instead of words
The default subject of Create task on contact upon receiving feedback is "customer name left sentiment feedback for ticket ticket ID on survey survey name". Field mapping shows each of those values as a code in double braces, and HubSpot receives the subject with the values filled in. Leave the row as it is to keep the default, or type your own subject to replace it.
Only some of my HubSpot contacts came in as customers
The first run of Sync contacts brings in up to 10,000 HubSpot contacts with an email address, because HubSpot's contact search returns no more than that. Contacts without one aren't brought in, and contacts that share an email address become one customer. Later runs bring in only the contacts updated in the 24 hours before each run, so a contact the first run missed, or one updated while the sync was off, comes in the next time it's updated. To run the first import again, click Deactivate integration, Reset integration, then Activate integration.
The integration can't raise the 10,000 limit, but a CSV import brings in the rest straight away. It merges on email address, so nobody is duplicated, and the steps are in Customers.
FAQ
Are my HubSpot properties updated when feedback arrives, or once a day?
When feedback arrives. Contact properties, ticket properties, notes, Simplesat feedback records and tasks are written no sooner than five minutes after a response arrives, and again when it changes. A rating changed in Simplesat is written right away. Pull ticket details and Pull contact details run as soon as a response arrives. Only Sync contacts runs once a day.
What can I write to a HubSpot contact property?
You can write:
the metric rating, its sentiment or its comment
the answer to a specific question on a specific survey
another response field, such as the rating label, the survey name or the response's created time
a value you type
Every run replaces the last value, so the property holds the latest response. Create the property in HubSpot first, with a type that takes the value, such as a number property for a rating.
If a survey has three rating questions, will Create custom objects from feedback make three records?
No. A run makes one record, for the metric question only. Simplesat does make another record when the response changes, such as when a comment comes in later.
Can I add other properties to the Simplesat feedback records?
Not in the integration's settings, but we add them on request. By default, the records hold the sentiment, the rating, the follow-up answer, the survey name and the link to the response, and the integration has no Field mapping. To add one, such as the customer's name or company, create the property on the Simplesat feedback object in HubSpot first, then contact us. HubSpot refuses a record that names a property the object doesn't have.
Why are my Simplesat feedback records named positive, neutral or negative?
HubSpot names a record by its primary display property. With Sentiment as the primary display property, each record carries its sentiment as its name. The integration doesn't write the customer's name to the record. The customer is the contact the record is associated with.
Can I activate Create custom objects from feedback before the object exists in HubSpot?
Yes. It looks for the simplesat_feedback object every time it runs. Responses that arrive before the object exists get no record.
Can I connect a HubSpot sandbox?
Yes, but not alongside production, because a workspace connects to one HubSpot account at a time. To switch, click Revoke access, then Authenticate, and choose the other account.
I just imported contacts into HubSpot. Do I need to wait for Sync contacts before I send the survey?
No. When HubSpot sends a marketing email, the survey code carries each contact's email, name, HubSpot ID and company, so responses arrive with them. Sync contacts runs once a day, at the time it was switched on, and brings in contacts updated in the 24 hours before it runs. Nothing in Simplesat shows when it last ran.
Can I send a HubSpot contact property to Simplesat with the survey?
Yes. Add a t_ parameter to the end of every rating link in the copied code, for example &t_market={{contact.market}}. Change the word after t_ to the name you want in Simplesat, and the word after contact. to the property's internal name. Responses then get a ticket field with that name, holding the contact's value. In a Simplesat email from a HubSpot workflow, put the value in the request body as a custom attribute of the ticket. Placeholders and merge fields explains t_ fields. To have the property on the customer as an attribute instead, ask us to add it to Sync contacts.
Can a HubSpot workflow trigger the survey email?
Yes. Make the survey Event-based, and have the workflow call it with a custom code action, which is on HubSpot Data Hub Professional and Enterprise. Simplesat sends the email and applies Delay and Suppression. You can also paste the survey code into an automated email the workflow sends, on Marketing Hub Professional or Enterprise. In that case HubSpot decides when it goes out.
How do I control how the survey looks in my HubSpot email?
The survey code has its own inline styles, so it doesn't take on your email template's styles. Everything around it is your HubSpot email template.
Which HubSpot permissions does Simplesat need, and what can it access?
Connect as a HubSpot user with Super Admin or App Marketplace access permissions. Once connected, Simplesat can reach everything its HubSpot app asks for, across the whole HubSpot account. The role of the person who connected doesn't limit it. The integrations read contacts, companies, owners, tickets, associations and custom object definitions. They create notes, tasks, tickets, custom object records and associations, and update contact and ticket properties. No integration deletes anything in HubSpot.