IP Library › Granted Patent US 12,511,256
Granted Patent B2
US 12,511,256 · App. 17/655,320 · Granted Dec 30, 2025

Multi-service business platform system having custom object systems and methods

Inventors: Stuart P. Layton (Waltham, MA); Bryan Ash (Arlington, MA); Jared Williams (Somerville, MA); Sophie Higgs (Somerville, MA); Robert McEneaney (Concord, MA); Dylan Sellberg (Swampscott, MA); Anna Perko (Wenham, MA)
Assignee: HubSpot, Inc.
G06F16/164G06F16/122G06F16/284
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,511,256
App. No.
17/655,320
Filed
Mar 17, 2022
Granted
Dec 30, 2025
Kind
B2
Art Unit
2165
USPC
707/825
Abstract

The disclosure is directed to various ways of improving the functioning of computer systems, information networks, data stores, search engine systems and methods, and other advantages. Among other things, provided herein are methods, systems, components, processes, modules, blocks, circuits, sub-systems, articles, and other elements (collectively referred to in some cases as the “platform” or the “system”) that collectively enable, in one or more datastores (e.g., where each datastore may include one or more databases) and systems, the creation, development, maintenance, and use of a set of custom objects (and core objects) for use in a wide range of activities, including sales activities, marketing activities, service activities, content development activities, and others, as well as improved methods and systems for sales, marketing and services that make use of such entity resolution systems and methods as well as custom objects.

Claims (46)

1 . A computing system comprising memory storing instructions and comprising a processor that executes the instructions to perform operations comprising:

generating a custom object that uses a primary key to locate an existing object, wherein the primary key is used in defining a first relationship of the custom object to the existing object, wherein the existing object includes a second primary key used to define a second relationship of the existing object to the custom object, wherein the generating comprises interpreting and converting custom object information into custom object metadata inserted into a database for conversion into the custom object by converting the custom object metadata into language-independent data stored into the custom object as a record within the database, wherein the custom object represents a customer;

generating an association, including a first object identification and an existing object identification, for the custom object with the existing object based on custom object information used as part of defining the first relationship, wherein the primary key and the second primary key are directed to the first object identification and the existing object identification based on the first relationship and the second relationship;

storing the customer object, the existing object and the association in a knowledge graph;

inputting data extracted from the custom object, the association, and the existing object as input into a machine learning model to identify an event associated with the customer, wherein the identifying of the event comprising: parsing unstructured content, and detecting within the data that was inputted, a change of the associations between the custom object and the existing object;

and wherein the event is evaluated to determine that a customized service provides a solution for the customer with respect to the event;

updating the knowledge graph based on the detected change of the association;

generating, by the machine learning model, a computer implemented customer interaction including a message for transmission to the customer, wherein the message includes text pertaining to the event and the customized service; and

transmitting the message, including the text pertaining to the event and the customized service, to the customer.

2 . The system of claim 1 , wherein the custom object includes an object name, an object type, and object properties.

3 . The system of claim 1 , comprising: defining the association as a first directed association from the custom object to the existing object; defining a reverse association as a second directed association from the existing object to the customer object; and utilizing the association and the reverse association to perform the computer implemented customer interaction.

4 . The system of claim 1 , wherein the primary key includes an object identification for locating other objects to which the custom object has a relationship.

5 . The system of claim 1 , wherein the association includes an association identification, an association type, and a timestamp.

6 . The system of claim 1 , wherein the computer implemented customer interaction is a marketing activity executed by a marketing process using the custom object, the association, and the existing object.

7 . The system of claim 1 , wherein the association is defined in a direction between the existing object and the custom object, wherein an inverse association is automatically generated for an opposite direction between the existing object and the custom object with respect to the association.

8 . The system of claim 1 , wherein the association is defined in terms of a hierarchy between the custom object and the existing object based on identification numbers, object tables, property values associated with the identification numbers, and object information.

9 . The system of claim 1 , further comprising a multi-tenant data store for storing custom object data of the custom object, association data of the association, and existing object data of the existing object which is segmented such that services are executed across instances of the custom object, the association, and the existing object.

10 . The system of claim 9 , wherein the services include workflow automation, reporting, customer relationship management (CRM)-related actions, analytics, and import/export actions.

11 . The system of claim 1 , wherein the operations include interpreting the custom object information into custom object metadata that is converted into the custom object.

12 . The system of claim 1 , wherein the custom object, the existing object, and the association are part of an ontology that includes other custom objects or core objects, and wherein the ontology further includes associations between the custom object, the other custom objects, and the core objects.

13 . The system of claim 1 , further comprising an instance knowledge structure including an instance of the custom object and an instance of the existing object, wherein the instance knowledge structure includes an association instance of the association between the instance of the custom object and the instance of the existing object.

14 . A computer-implemented method comprising:

generating a custom object that uses a primary key to locate an existing object, wherein the primary key is used in defining a first relationship of the custom object to the existing object, wherein the existing object includes a second primary key used to define a second relationship of the existing object to the custom object, wherein the generating comprises interpreting and converting custom object information into custom object metadata inserted into a database for conversion into the custom object by converting the custom object metadata into language-independent data stored into the custom object as a record within the database, wherein the custom object represents a customer;

generating an association, including a first object identification and an existing object identification, for the custom object with the existing object based on custom object information used as part of defining the first relationship, wherein the primary key and the second primary key are directed to the first object identification and the existing object identification based on the first relationship and the second relationship;

storing the customer object, the existing object and the association in a knowledge graph;

inputting data extracted from the custom object, the association, and the existing object as input into a machine learning model to identify an event associated with the customer, wherein the identifying of the event comprising: parsing unstructured content, and detecting within the data that was inputted, a change of the associations between the custom object and the existing object; and

wherein the event is evaluated to determine that a customized service provides a solution for the customer with respect to the event;

updating the knowledge graph based on the detected change of the association;

generating, by the machine learning model, a computer implemented customer interaction including a message for transmission to the customer, wherein the message includes text pertaining to the event and the customized service; and

transmitting the message, including the text pertaining to the event and the customized service, to the customer.

15 . The method of claim 14 , wherein the computer implemented customer interaction is a sales activity executed by a sales process using the custom object, the association, and the existing object.

16 . The method of claim 14 , wherein the computer implemented customer interaction is a customer service activity executed by a customer service process using the custom object, the association, and the existing object.

17 . The method of claim 14 , further comprising: interpreting the custom object information using logic to create custom object metadata that is converted into the custom object for use by services.

18 . The method of claim 17 , wherein the services include at least one of workflow automation, reporting, customer relationship management (CRM)-related actions, analytics, and import/export actions.

19 . The method of claim 14 , further comprising: submitting object properties of the custom object into the machine learning model to determine additional object properties from a different custom object.

20 . The method of claim 14 , wherein the process includes services provide functionality including providing customer relationship management, social media marketing, content management, lead generation, web analytics, search engine optimization, chat, and customer support.

21 . A non-transitory computer readable storage medium having a plurality of instructions stored thereon which, when executed by a processor, causes the processor to perform operations comprising:

generating a custom object that uses a primary key to locate an existing object, wherein the primary key is used in defining a first relationship of the custom object to the existing object, wherein the existing object includes a second primary key used to define a second relationship of the existing object to the custom object, wherein the generating comprises interpreting and converting custom object information into custom object metadata inserted into a database for conversion into the custom object by converting the custom object metadata into language-independent data stored into the custom object as a record within the database, wherein the custom object represents a customer;

generating an association, including a first object identification and an existing object identification, for the custom object with the existing object based on custom object information used as part of defining the first relationship, wherein the primary key and the second primary key are directed to the first object identification and the existing object identification based on the first relationship and the second relationship;

storing the customer object, the existing object and the association in a knowledge graph;

inputting data extracted from the custom object, the association, and the existing object as input into a machine learning model to identify an event associated with the customer, wherein the identifying of the event comprising: parsing unstructured content, and detecting within the data that was inputted, a change of the associations between the custom object and the existing object; and

wherein the event is evaluated to determine that a customized service would provides a solution for the customer with respect to the event;

updating the knowledge graph based on the detected change of the association;

generating, by the machine learning model, a computer implemented customer interaction including a message for transmission to the customer, wherein the message includes text pertaining to the event and the customized service; and

transmitting the message, including the text pertaining to the event and the customized service, to the customer.

22 . The computer readable storage medium of claim 21 , wherein the computer implemented customer interaction is a customer service activity executed by a customer service process using the custom object, the association, and the existing object.

Assignments (2)
SECURITY INTEREST Recorded Feb 12, 2026
From: HUBSPOT, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 074818/0036 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 7, 2022
From: LAYTON, STUART P.; ASH, BRYAN; WILLIAMS, JARED; HIGGS, SOPHIE; MCENEANEY, ROBERT; SELLBERG, DYLAN; PERKO, ANNA
To: HUBSPOT, INC.
Reel/Frame 059535/0967 →
Continuity (3)
Continuation 17448228 · Sep 21, 2021
Provisional Application 63080900 · Sep 21, 2020
Related Publication 20220206993A1 · Jun 30, 2022
References Cited (186)
US 7136941B2 · Nguyen et al. · 2006 [cited by applicant]
US 7580982B2 · Owen et al. · 2009 [cited by applicant]
US 7584114B2 · Estrada et al. · 2009 [cited by applicant]
US 7779039B2 · Weissman · 2010 [cited by examiner]
US 7792835B2 · Bohannon et al. · 2010 [cited by applicant]
US 7831676B1 · Nagar · 2010 [cited by applicant]
US 7984297B2 · Bohannon et al. · 2011 [cited by applicant]
US 7992145B2 · Emerson et al. · 2011 [cited by applicant]
US 8006261B1 · Haberman et al. · 2011 [cited by applicant]
US 8224902B1 · Glasser et al. · 2012 [cited by applicant]
US 8442969B2 · Gross · 2013 [cited by applicant]
US 8594618B2 · Meyer et al. · 2013 [cited by applicant]
US 8706800B1 · Ahmed et al. · 2014 [cited by applicant]
US 8719356B2 · Dillingham et al. · 2014 [cited by applicant]
US 9304862B2 · Simon et al. · 2016 [cited by applicant]
US 9305104B2 · Wu et al. · 2016 [cited by applicant]
US 9317816B2 · Zeng et al. · 2016 [cited by applicant]
US 9356947B2 · Shraim et al. · 2016 [cited by applicant]
US 10115060B2 · Chestnut et al. · 2018 [cited by applicant]
US 10217058B2 · Gamon et al. · 2019 [cited by applicant]
US 10387559B1 · Wendt et al. · 2019 [cited by applicant]
US 10771425B2 · Kebinger et al. · 2020 [cited by applicant]
US 10826866B2 · Kramer et al. · 2020 [cited by applicant]
US 10853082B1 · Aleti et al. · 2020 [cited by applicant]
US 10867003B2 · O'Donnell et al. · 2020 [cited by applicant]
US 10911394B2 · Kramer et al. · 2021 [cited by applicant]
US 10931623B2 · O'Brien et al. · 2021 [cited by applicant]
US 10992780B1 · Rudrappa Goniwada et al. · 2021 [cited by applicant]
US 11070511B2 · O'Brien et al. · 2021 [cited by applicant]
US 11165741B2 · O'Brien et al. · 2021 [cited by applicant]
US 11200581B2 · Williams et al. · 2021 [cited by applicant]
US 11240193B2 · O'Brien et al. · 2022 [cited by applicant]
US 20020065672A1 · Shigeto · 2002 [cited by examiner]
US 20020099697A1 · Jensen-Grey · 2002 [cited by applicant]
US 20020152254A1 · Teng · 2002 [cited by applicant]
US 20020199194A1 · Ali · 2002 [cited by applicant]
US 20030097617A1 · Goeller et al. · 2003 [cited by applicant]
US 20030110175A1 · Yao · 2003 [cited by examiner]
US 20030208472A1 · Pham · 2003 [cited by applicant]
US 20040034652A1 · Hofmann · 2004 [cited by applicant]
US 20040111327A1 · Kidd · 2004 [cited by applicant]
US 20040122803A1 · Dom et al. · 2004 [cited by applicant]
US 20040260621A1 · Foster · 2004 [cited by applicant]
US 20050160166A1 · Kraenzel · 2005 [cited by applicant]
US 20050188028A1 · Brown et al. · 2005 [cited by applicant]
US 20050210111A1 · Fukudome · 2005 [cited by applicant]
US 20050265319A1 · Clegg et al. · 2005 [cited by applicant]
US 20060095556A1 · Arnold et al. · 2006 [cited by applicant]
US 20060212931A1 · Markmonitor · 2006 [cited by applicant]
US 20060224673A1 · Stern et al. · 2006 [cited by applicant]
US 20060242140A1 · Wnek · 2006 [cited by applicant]
US 20070011073A1 · Gardner et al. · 2007 [cited by applicant]
US 20070136430A1 · Qureshi et al. · 2007 [cited by applicant]
US 20070203996A1 · Davitz et al. · 2007 [cited by applicant]
US 20070299777A1 · Markmonitor · 2007 [cited by applicant]
US 20080027951A1 · Bohannon et al. · 2008 [cited by applicant]
US 20080034432A1 · Bohannon et al. · 2008 [cited by applicant]
US 20080168269A1 · Wilson · 2008 [cited by applicant]
US 20080172606A1 · White · 2008 [cited by applicant]
US 20080294652A1 · Manu · 2008 [cited by examiner]
US 20090013041A1 · Farmer et al. · 2009 [cited by applicant]
US 20090019003A1 · Bohannon et al. · 2009 [cited by applicant]
US 20090119268A1 · Bandaru et al. · 2009 [cited by applicant]
US 20090138711A1 · Heimbigner · 2009 [cited by applicant]
US 20090248813A1 · Sawhney · 2009 [cited by applicant]
US 20100161506A1 · Bosenick et al. · 2010 [cited by applicant]
US 20100161735A1 · Sharma · 2010 [cited by applicant]
US 20100186088A1 · Banerjee et al. · 2010 [cited by applicant]
US 20100228777A1 · Imig et al. · 2010 [cited by applicant]
US 20100235915A1 · Memon et al. · 2010 [cited by applicant]
US 20100312837A1 · Bodapati et al. · 2010 [cited by applicant]
US 20110029504A1 · King et al. · 2011 [cited by applicant]
US 20110149725A1 · Zhao et al. · 2011 [cited by applicant]
US 20110179067A1 · Dalvi et al. · 2011 [cited by applicant]
US 20110258218A1 · Hayes et al. · 2011 [cited by applicant]
US 20120053887A1 · Nurmi · 2012 [cited by applicant]
US 20120191546A1 · Phelan et al. · 2012 [cited by applicant]
US 20120197862A1 · Woytowitz et al. · 2012 [cited by applicant]
US 20120198056A1 · Shama et al. · 2012 [cited by applicant]
US 20120202449A1 · Meyer et al. · 2012 [cited by applicant]
US 20120316904A1 · Eder · 2012 [cited by applicant]
US 20120324580A1 · Glasser et al. · 2012 [cited by applicant]
US 20130007627A1 · Monaco · 2013 [cited by applicant]
US 20130047034A1 · Salomon et al. · 2013 [cited by applicant]
US 20130054622A1 · Karmarkar et al. · 2013 [cited by applicant]
US 20130073336A1 · Heath · 2013 [cited by applicant]
US 20130138555A1 · Shishkov · 2013 [cited by applicant]
US 20130238715A1 · Sanyal et al. · 2013 [cited by applicant]
US 20130339456A1 · Nikolayev et al. · 2013 [cited by applicant]
US 20140006139A1 · Aggarwal et al. · 2014 [cited by applicant]
US 20140025683A1 · Howland et al. · 2014 [cited by applicant]
US 20140025763A1 · Furlong et al. · 2014 [cited by applicant]
US 20140105508A1 · Arora · 2014 [cited by applicant]
US 20140108309A1 · Frank et al. · 2014 [cited by applicant]
US 20140156681A1 · Lee · 2014 [cited by examiner]
US 20140214974A1 · Kurzanski et al. · 2014 [cited by applicant]
US 20140236663A1 · Smith · 2014 [cited by applicant]
US 20140258169A1 · Wong et al. · 2014 [cited by applicant]
US 20140279622A1 · Bharadwaj et al. · 2014 [cited by applicant]
US 20140280453A1 · Mattison et al. · 2014 [cited by applicant]
US 20140280614A1 · Alakuijala et al. · 2014 [cited by applicant]
US 20140328172A1 · Kumar et al. · 2014 [cited by applicant]
US 20140372363A1 · Chestnut et al. · 2014 [cited by applicant]
US 20140372566A1 · Milne et al. · 2014 [cited by applicant]
US 20150006647A1 · Steinberg et al. · 2015 [cited by applicant]
US 20150019910A1 · Simon et al. · 2015 [cited by applicant]
US 20150032826A1 · Gunaratnam · 2015 [cited by applicant]
US 20150032827A1 · Tyler et al. · 2015 [cited by applicant]
US 20150081611A1 · Shivakumar · 2015 [cited by applicant]
US 20150100896A1 · Shmarovoz et al. · 2015 [cited by applicant]
US 20150154664A1 · Mae · 2015 [cited by applicant]
US 20150188874A1 · Feinstein · 2015 [cited by applicant]
US 20150237061A1 · Shraim et al. · 2015 [cited by applicant]
US 20150248490A1 · Myslinski · 2015 [cited by applicant]
US 20150286357A1 · Penha et al. · 2015 [cited by applicant]
US 20150312187A1 · Menna et al. · 2015 [cited by applicant]
US 20150324469A1 · Keyngnaert et al. · 2015 [cited by applicant]
US 20150347924A1 · Zeng et al. · 2015 [cited by applicant]
US 20150379018A1 · Gur et al. · 2015 [cited by applicant]
US 20150381552A1 · Vijay et al. · 2015 [cited by applicant]
US 20160012364A1 · Filgueiras · 2016 [cited by applicant]
US 20160020917A1 · Tuatini et al. · 2016 [cited by applicant]
US 20160026720A1 · Lehrer et al. · 2016 [cited by applicant]
US 20160036750A1 · Yuan · 2016 [cited by applicant]
US 20160063560A1 · Hameed et al. · 2016 [cited by applicant]
US 20160078455A1 · O'Donnell et al. · 2016 [cited by applicant]
US 20160119260A1 · Ghafourifar et al. · 2016 [cited by applicant]
US 20160156858A1 · Lee et al. · 2016 [cited by applicant]
US 20160180248A1 · Regan · 2016 [cited by applicant]
US 20160226808A1 · Lin · 2016 [cited by applicant]
US 20160232540A1 · Gao et al. · 2016 [cited by applicant]
US 20160307191A1 · Turgeman et al. · 2016 [cited by applicant]
US 20160315969A1 · Goldstein · 2016 [cited by applicant]
US 20160359793A1 · Kraios · 2016 [cited by applicant]
US 20170005954A1 · Shaltiel et al. · 2017 [cited by applicant]
US 20170031894A1 · Bettersworth et al. · 2017 [cited by applicant]
US 20170068982A1 · Vangala et al. · 2017 [cited by applicant]
US 20170103439A1 · Kolb et al. · 2017 [cited by applicant]
US 20170103441A1 · Kolb et al. · 2017 [cited by applicant]
US 20170186042A1 · Wong et al. · 2017 [cited by applicant]
US 20170221089A1 · Zhu et al. · 2017 [cited by applicant]
US 20170264577A1 · Ganin · 2017 [cited by applicant]
US 20170289287A1 · Modi et al. · 2017 [cited by applicant]
US 20170317962A1 · Chen · 2017 [cited by applicant]
US 20170337569A1 · Sasson · 2017 [cited by applicant]
US 20170353410A1 · Gonzales · 2017 [cited by applicant]
US 20180039696A1 · Zhai et al. · 2018 [cited by applicant]
US 20180097759A1 · Brechbuhl et al. · 2018 [cited by applicant]
US 20180097828A1 · Coskun · 2018 [cited by applicant]
US 20180121986A1 · Akkiraju et al. · 2018 [cited by applicant]
US 20180137203A1 · Hennekey et al. · 2018 [cited by applicant]
US 20180219818A1 · Kramer et al. · 2018 [cited by applicant]
US 20180219819A1 · O'Brien et al. · 2018 [cited by applicant]
US 20180219820A1 · Kramer et al. · 2018 [cited by applicant]
US 20180219829A1 · Kebinger et al. · 2018 [cited by applicant]
US 20180219830A1 · O'Brien et al. · 2018 [cited by applicant]
US 20180336495A1 · Chestnut et al. · 2018 [cited by applicant]
US 20190347668A1 · Williams et al. · 2019 [cited by applicant]
US 20200036673A1 · O'Brien et al. · 2020 [cited by applicant]
US 20200065857A1 · Lagi · 2020 [cited by examiner]
US 20200067861A1 · Leddy et al. · 2020 [cited by applicant]
US 20200210867A1 · Banis et al. · 2020 [cited by applicant]
US 20200244615A1 · O'Brien et al. · 2020 [cited by applicant]
US 20200294642A1 · Bostic · 2020 [cited by examiner]
US 20210349960A1 · Hennekey et al. · 2021 [cited by applicant]
US 20210352037A1 · O'Brien et al. · 2021 [cited by applicant]
US 20210357375A1 · Urdiales et al. · 2021 [cited by applicant]
US 20210357378A1 · Urdiales et al. · 2021 [cited by applicant]
WO 2016156858A1 · 2016 [cited by applicant]
WO 2018089619A1 · 2018 [cited by applicant]
WO 2018140975A1 · 2018 [cited by applicant]
WO 2018209254A1 · 2018 [cited by applicant]
U.S. Appl. No. 17/121,300, filed Dec. 14, 2020, Pending, O'Donnell, Christopher et al. [cited by applicant]
U.S. Appl. No. 17/448,228, filed Sep. 21, 2021, Pending, Layton, Stuart P., et al. [cited by applicant]
U.S. Appl. No. 17/522,101, filed Nov. 9, 2021, Pending, Williams, Jared, et al. [cited by applicant]
Givens, Brien , “Bounded Knapsack Algorithm”, www.codeproject.com,https://www.codeproject.com/Articles/706838/Bounded-Knapsack-Algorithm, Jan. 8, 2014, 5 pages. [cited by applicant]
Godiksen, Brian , “Best Practices with Sender Policy Framework (SPF)”, www.socketlabs.com,https://www.socketlabs.com/blog/best-practices-sender-policy-framework-spf/, Sep. 14, 2017, 16 pages. [cited by applicant]
Gorrell, Amy , “How to Build Your SPF Record in 5 Simple Steps”, validity.com, https://www.validity.com/blog/how-to-build-your-spf-record-in-5-simple-steps/, Feb. 9, 2019, 3 pages. [cited by applicant]
PCT/US18/32348 , “International Application Serial No. PCT/US18/32348, International Preliminary Report on Patentability mailed Nov. 21, 2019”, HubSpot, Inc., 9 pages. [cited by applicant]
PCT/US18/32348 , “International Application Serial No. PCT/US18/32348, International Search Report and Written Opinion mailed Jul. 30, 2018”, HubSpot, Inc., 10 Pages. [cited by applicant]
PCT/US2017/060835 , “International Application Serial No. PCT/US2017/060835, International Preliminary Report on Patentability mailed May 23, 2019”, HubSpot, Inc., 7 pages. [cited by applicant]
PCT/US2017/060835 , “International Application Serial No. PCT/US2017/060835, International Search Report and Written Opinion mailed Feb. 14, 2018”, HubSpot Inc., 12 pages. [cited by applicant]
PCT/US2018/016038 , “International Application Serial No. PCT/US2018/016038, International Preliminary Report on Patentability mailed Aug. 8, 2019”, HubSpot, Inc., 8 pages. [cited by applicant]
PCT/US2018/016038 , “International Application Serial No. PCT/US2018/016038, International Search Report and the Written Opinion mailed May 29, 2018.”, Hubspot Inc., 12 pages. [cited by applicant]
PCT/US2018/016038 , “International Application Serial No. PCT/US2018/016038, Invitation to Pay Additional Fees and, Where Applicable, Protest Fee mailed on Apr. 2, 2018”, Hubspot Inc., 3 pages. [cited by applicant]
Qureshi , et al., “Improving the Performance of Crawler Using Body Text Normalization”, 2 Compusoft 7, 2013, pp. 215, 216. [cited by applicant]
Cited By (2)
US 12,681,925 US 12,694,411