USE CASE: We use a custom property to identity when a contact is known to be a dead lead. However, many of these contacts have pending tasks associated which are no longer applicable once a contact is dead.
PROPOSED FUNCTIONALITY: Add a feature to workflows which would allow changing the status of a task or deleting it. Basically this would be just the opposite of creating a task from a workflow ... but perhaps a bit more complex to implement . Currently workflows auto create many tasks which now no long are applicable and must be manually deleted.
I would also love to be able to create a task with a Task status = Completed.
I'm trying to use Tickets on the HubSpot side but communicate to an Account Manager in Salesforce when a ticket has been completed. Since the Workflow trigger is the Ticket being closed, creating a closed Salesforce Task isn't an option, so I have to create a HubSpot task that then gets synced over to Salesforce. However, since I can't give the Task a status in the workflow, it gets created as an open task in Salesforce for something that already happened.
One of the usecases for me would be to have a task automatically complete when an owner changes. Currently if a client is being neglected and a salesperson has an overdue task, the owner is switched so that a new salesperson can attempt to contact the customer. However if the hew account owner can't complete a task assigned to someone eslse.
The issue is exasturbated when you have to do bulk reassignement. I have about 8000 tasks sand no good way to get rid of them.
This is a simple yet very useful feature. If we are given the choice to create a task, making them complete, removing or changing the ownership should be an option as well.
IMO it's kind of ridiculous that this isn't being worked on.
Task generation via workflows is great, but the fact that tasks can only be marked as completed manually totally undermines this utility. This absence of functionality is made worse by the fact that tasks can't be marked as complete in the object screen where the required task is executed!!
For example, if I assign a task to a rep to follow-up with a lead, the optimal functionality would be the email automatically converting the task status to 'done'. The second best outcome would be being able to mark the task as complete in the deal object with the corresponding communication. The currently availible feature forces the rep to send the email, then navigate to the task tab, scroll through their assigned list and then mark complete. Super inefficent and a huge wast of time.
This is something I also need, i.e. when something happens in a workflow, I want to be able to complete all tasks that were associated with a deal. Seeing as it doesn't look like this feature will be implemented, I wrote some custom code to accomplish this.
Full disclaimer: I have been working with HubSpot for 2 weeks, have no idea if the code will screw up everything in your organisation, and assume no responsibility should this happen. If you are not a developer and/or have no idea what the code does, find someone who does and make sure this is what you want.
Developer notes: From what I can see, the new engagements API hasn't been completed yet, so the code uses the hubspot/api-client to perform the initial find of associated tasks, then uses the V1 API to update the related tasks. I'm assuming this will have to change when the V1 engagements API is deprecated. Also, as per the above, I have very little experience with the HubSpot APIs and am just sharing this because it seems a lot of people would like something like this to be possible. Feel free to improve on the code if you know more and/or spot something that could be done in a more efficient way.
The following code finds all tasks associated with a deal and completes all of the tasks found.
const hubspot = require('@hubspot/api-client'); const request = require("request"); exports.main = (event, callback) => { const hubspotClient = new hubspot.Client({apiKey: process.env.HAPIKEY}); //Find all tasks associated with deal hubspotClient.crm.deals.associationsApi.getAll(event.object.objectId, ["task"]) .then(results => { //Go through each result returned and set status to COMPLETED results.body.results.forEach((task) => { var options = { method: 'PATCH', url: 'https://api.hubapi.com/engagements/v1/engagements/' + task.id, qs: {hapikey: process.env.HAPIKEY}, headers: {'Content-Type': 'application/json'}, body: {engagement: {}, metadata: {status: 'COMPLETED'}}, json: true }; request(options, function (error, response, body) { if (error) throw new Error(error); }); }); }) .catch(err => { throw err; }); }
I was expecting this to be a part of HubSpot pro as default. Come on guys, this makes so much sense.
For example, I want to create task for my sales rep as soon as criteria is met, but if the goal is reached before the due date, why should I bother sales rep to check that task at all?
In my pipeline I have a lot of phases. Moving a deal through the phases generates some tasks that we use as reminder and other stuff.
Anyway, all these tasks are valid while the deal is open. As you can guess, as just as the deal is win/lost, the tasks still open get useless. I would need to cancel (or mark as complete) open tasks related to a deal that goes in a "final phase". I can't see any action in workflow that I could use.
NOTE: it would be useful (in the meanwhile that the team develop the "big" feature") at least to enrich the tasks' filters to add the possibility to filter the tasks by selecting only whom are related to a deal in (or NOT IN) specific states
Here is an idea for other frustrated Hubspot customers on this issue. If you feel as frustrated as I do that Hubspot won't fix such a basic problem, tell people who are considering CRM options to warn them what they'd be in for: https://www.capterra.com/p/214215/HubSpot-SalesHub/ . Not having this functionality causes big problems for customers that have large teams with lots of tasks. It's a huge waste of time for teams to have to manually check every record for tasks and manually make them as complete. Plus because people have to do it manually it doesn't get done and reporting on outstanding tasks is totally innacurate.