# US 11,909,834 B2 · Systems and methods for generating a master group node graph from systems of record

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,909,834 B2
- Document ID: US11909834B2
- Status: Granted
- Kind: B2
- Application number: 16/418,836
- Filed: 2019-05-21
- Published: 2019-11-28
- Granted: 2024-02-20
- Earliest claimed: 2018-05-24
- Assignees: People.ai, Inc.
- Applicants: People.ai, Inc.
- Inventors: Oleg Rogynskyy; Yurii Brunets; Devin Rice; Vardhman Jain
- Web page: https://patentgrep.com/patent/US11909834B2

## CPC

- G06Q 10/107: Computer-aided management of electronic mailing [e-mailing]
- G06F 7/14: Merging, i.e. combining at least two sets of record carriers each arranged in the same ordered sequence to produce a single set having the same ordered sequence
- G06F 9/542: {Event management; Broadcasting; Multicasting; Notifications}
- G06F 11/3024: {where the computing system component is a central processing unit [CPU]}
- G06F 11/3452: {Performance evaluation by statistical analysis}
- G06F 11/3495: {for systems}
- G06F 16/122: {using management policies (point-in-time backing up or restoration of persistent data G06F11/1446; file migration policies for HSM systems G06F16/185)}
- G06F 16/1734: {Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs}
- G06F 16/178: Techniques for file synchronisation in file systems
- G06F 16/182: Distributed file systems
- G06F 16/212: {with details for data modelling support}
- G06F 16/215: Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
- G06F 16/219: {Managing data history or versioning (querying versioned data G06F16/2474; querying temporal data G06F16/2477)}
- G06F 16/22: Indexing; Data structures therefor; Storage structures
- G06F 16/221: {Column-oriented storage; Management thereof}
- G06F 16/2228: {Indexing structures}
- G06F 16/2264: {Multidimensional index structures}
- G06F 16/2272: {Management thereof}
- G06F 16/23: Updating
- G06F 16/235: {Update request formulation}
- G06F 16/2358: {Change logging, detection, and notification (replication G06F16/27)}
- G06F 16/2365: {Ensuring data consistency and integrity}
- G06F 16/2379: {Updates performed during online database operations; commit processing}
- G06F 16/2386: {Bulk updating operations (data conversion details G06F16/258)}
- G06F 16/245: Query processing
- G06F 16/24558: {Binary matching operations}
- G06F 16/24564: {Applying rules; Deductive queries}
- G06F 16/2457: with adaptation to user needs
- G06F 16/24575: {using context}
- G06F 16/24578: {using ranking}
- G06F 16/2477: {Temporal data queries}
- G06F 16/254: {Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses}
- G06F 16/256: {in federated or virtual databases}
- G06F 16/26: Visual data mining; Browsing structured data
- G06F 16/27: Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F 16/273: {Asynchronous replication or reconciliation}
- G06F 16/28: Databases characterised by their database models, e.g. relational or object models
- G06F 16/285: {Clustering or classification}
- G06F 16/288: {Entity relationship models}
- G06F 16/289: {Object oriented databases}
- G06F 16/29: Geographical information databases
- G06F 16/313: {Selection or weighting of terms for indexing}
- G06F 16/337: {Profile generation, learning or modification}
- G06F 16/355: Creation or modification of classes or clusters
- G06F 16/901: Indexing; Data structures therefor; Storage structures (for retrieval from the web G06F16/951)
- G06F 16/9024: {Graphs; Linked lists (G06F16/9027 takes precedence)}
- G06F 16/90344: {by using string matching techniques}
- G06F 16/9035: Filtering based on additional data, e.g. user or group profiles
- G06F 16/906: Clustering; Classification
- G06F 16/93: Document management systems
- G06F 16/9535: Search customisation based on user profiles and personalisation
- G06F 21/6218: {to a system of files or objects, e.g. local or distributed file system or database}
- G06F 21/6245: {Protecting personal data, e.g. for financial or medical purposes}
- G06F 40/20: Natural language analysis (semantic analysis of natural language G06F40/30)
- G06F 40/237: Lexical tools
- G06F 40/295: Named entity recognition
- G06F 40/30: Semantic analysis
- G06N 3/08: Learning methods
- G06N 3/09: Supervised learning
- G06N 5/022: Knowledge engineering; Knowledge acquisition
- G06N 5/025: Extracting rules from data
- G06N 5/04: Inference or reasoning models
- G06N 7/02: using fuzzy logic (computing arrangements based on biological models G06N3/00; computing arrangements using knowledge-based models G06N5/00)
- G06Q 10/04: Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem" (market predictions or forecasting for commercial activities G06Q30/0202)
- G06Q 10/063114: {Status monitoring or status determination for a person or group}
- G06Q 10/06312: {Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling}
- G06Q 10/06315: {Needs-based resource requirements planning or analysis}
- G06Q 10/06393: {Score-carding, benchmarking or key performance indicator [KPI] analysis}
- G06Q 10/06398: {Performance of employee with respect to a job function}
- G06Q 10/109: Time management, e.g. calendars, reminders, meetings or time accounting
- G06Q 10/1091: Recording time for administrative or management purposes
- G06Q 10/1093: Calendar-based scheduling for persons or groups
- G06Q 10/40: Business processes related to social networking or social networking services
- G06Q 30/0201: Market modelling; Market analysis; Collecting market data
- G06Q 50/22: Social work or social welfare, e.g. community support activities or counselling services
- G16H 50/20: for computer-aided diagnosis, e.g. based on medical expert systems
- H04L 12/14: Charging, metering or billing arrangements specially adapted for data communications, e.g. authentication, authorisation and accounting [AAA] framework
- H04L 12/1831: {Tracking arrangements for later retrieval, e.g. recording contents, participants activities or behavior, network status}
- H04L 41/082: the condition being updates or upgrades of network functionality
- H04L 41/14: Network analysis or design
- H04L 43/026: using flow identification
- H04L 43/045: for graphical visualisation of monitoring data
- H04L 43/062: related to network traffic
- H04L 43/065: related to network devices
- H04L 43/067: using time frame reporting
- H04L 43/0876: Network utilisation, e.g. volume of load or congestion level
- H04L 43/14: {using software, i.e. software packages (network security related monitoring H04L63/1408)}
- H04L 51/046: Interoperability with other network applications or services
- H04L 51/212: using filtering or selective blocking
- H04L 51/234: for tracking messages
- H04L 51/42: Mailbox-related aspects, e.g. synchronisation of mailboxes
- H04L 61/45: Network directories; Name-to-address mapping
- H04L 67/125: involving control of end-device applications over a network
- H04L 67/30: Profiles
- H04L 67/303: Terminal profiles
- H04L 67/306: User profiles
- H04L 67/535: {Tracking the activity of the user (network monitoring arrangements H04L43/00; recording of computer activity G06F11/34)}
- H04M 3/436: Arrangements for screening incoming calls {, i.e. evaluating the characteristics of a call before deciding whether to answer it (based on the calling party profile H04M3/42059; based on location H04M3/42348; based on presence H04M3/42365; diversion H04M3/54)}
- H04M 3/5175: {Call or contact centers supervision arrangements}
- H04M 15/00: Arrangements for metering, time-control or time indication {; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP}
- H04M 15/41: {Billing record details, i.e. parameters, identifiers, structure of call data record [CDR]}
- H04M 15/58: {based on statistics of usage or network monitoring}
- H04M 15/60: {based on actual use of network resources}
- H04M 15/66: {Policy and charging system}
- H04M 15/755: {Account identification}
- H04W 4/24: Accounting or billing
- G06F 40/205: Parsing
- G06N 20/00: Machine learning
- G06Q 10/10: Office automation; Time management
- G16H 15/00: ICT specially adapted for medical reports, e.g. generation or transmission thereof
- G16H 50/30: for calculating health indices; for individual health risk assessment
- H04L 12/1407: {Policy-and-charging control [PCC] architecture}
- H04L 43/08: Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L 61/4594: Address books, i.e. directories containing contact information about correspondents (telephone directories in user terminals H04M1/27453)
- H04L 2101/00: Indexing scheme associated with group H04L61/00
- H04L 2101/35: containing special prefixes
- H04L 2101/37: E-mail addresses
- H04M 3/2218: {Call detail recording}
- H04M 3/56: Arrangements for connecting several subscribers to a common circuit, i.e. affording conference facilities (video conference systems H04N7/15)
- H04M 15/50: {for cross-charging network operators}
- H04M 2203/556: Statistical analysis and interpretation
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G16H: HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04M: TELEPHONIC COMMUNICATION (circuits for controlling other apparatus via a telephone cable and not involving telephone switching apparatus G08)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

The present disclosure relates to generating a master group node graph from a plurality of systems of record. Record objects of a system of record corresponding to a data source provider may be accessed. Each record object can have a record object type and identify a group entity. Each record object can be linked to one or more second record objects of a second record object type and identifying a respective member entity. A record object corresponding to a group entity can be identified. A connection profile between the record objects of the group entity and another group entity can be generated. An association between the group node profiles and the connection profile can be stored.

## Claims

### Claim 1

A method, comprising:
accessing, by one or more processors of a first set of servers, via a connection to a second set of servers on which a first non-shadow system of record is maintained by a first company that has provided access to the first non-shadow system of record to the one or more processors of the first set of servers, the first non-shadow system of record including a plurality of non-shadow account record objects of an account record object type, each non-shadow account record object of the plurality of account record objects i) identifying a respective second company of a plurality of second companies and ii) linked to one or more non-shadow contact record objects of a contact record object type, each non-shadow contact record object of the one or more contact record objects identifying an employee of the second company identified in the non-shadow account record object to which the non-shadow contact record object is linked;
generating, by the one or more processors of the first set of servers, responsive to accessing the first non-shadow system of record, a first shadow system of record that is stored on the first set of servers, the first shadow system of record including i) a plurality of shadow account record objects that include data of respective non-shadow account record objects of the first non-shadow system of record, ii) a plurality of shadow contact record objects, each shadow contact record object linked to a respective shadow account record object and including data of a respective non-shadow contact record object linked to a corresponding non-shadow account record object of the first non-shadow system of record;
maintaining, by the one or more processors of the first set of servers, a first group node profile identifying the first company of the plurality of companies and a second group node profile identifying a particular second company of the plurality of companies;
maintaining, by the one or more processors of the first set of servers, a plurality of member node profiles, each member node profile identifying a person and including data included in a corresponding non-shadow contact record object of the first non-shadow system of record, each member node profile including node field-value pairs that are configured to be updated using electronic activities transmitted or received via one or more electronic accounts associated with the member node profile;
for the first shadow system of record of the first company:
identifying, by the one or more processors of the first set of servers, from the plurality of shadow account record objects, a particular shadow account record object included in the first shadow system of record identifying the particular second company;
identifying, by the one or more processors of the first set of servers, a plurality of particular shadow contact record objects that are linked to the particular shadow account record object in the first shadow system of record, each particular shadow contact record object of the plurality of particular shadow contact record objects identifying a respective employee of the particular second company identified by the particular shadow account record object;
validating, by the one or more processors of the first set of servers, for each identified particular shadow contact record object of the plurality of particular shadow contact record objects, that the person identified by the particular shadow contact record object is a current employee of the particular second company by comparing data included in the particular shadow contact record object and node field-value pairs of a corresponding member node profile, the node field-value pairs of the corresponding member node profile updated using emails transmitted or received via one or more electronic accounts associated with the member node profile;
generating, by the one or more processors of the first set of servers, responsive to determining, for each identified particular shadow contact record object, that the person identified by the particular shadow contact record object is a current employee of the particular second company, a connection profile between the first group node profile and the second group node profile based on the particular shadow contact record objects, wherein the connection profile is based on at least one of a number of particular shadow contact record objects or electronic activities transmitted or received via electronic accounts associated with the particular shadow contact record objects; and
storing, by the one or more processors of the first set of servers, in at least one data structure of the first set of servers, an association between the first group node profile corresponding to the first company, the second group node profile corresponding to the particular second company, and the connection profile.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
extracting, by the one or more processors of the first set of servers, one or more object field-value pairs from at least one of the particular shadow account record object or the one or more shadow contact record objects linked to the particular shadow account record object;
determining, by the one or more processors of the first set of servers, that the one or more object field-value pairs satisfy a classification value; and
assigning, by the one or more processors of the first set of servers, a classification tag corresponding to the classification value to the connection profile.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
accessing, by the one or more processors of the first set of servers, a second non-shadow system of record, the second non-shadow system of record maintained by the particular second company; and
wherein generating, by the one or more processors, the connection profile between the first group node profile and the second group node profile comprises generating the connection profile using data stored in a second shadow system of record corresponding to the second non-shadow system of record, the second shadow system of record generated by the one or more processors of the first set of servers using data included in the second non-shadow system of record.

### Claim 4 (depends on 1)

The method of claim 1, further comprising generating the connection profile based on a timestamp indicating when at least one shadow contact record object of the plurality of shadow contact record objects linked to the particular shadow account record object was last updated.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
determining, by the one or more processors of the first set of servers, a health score of the first non-shadow system of record by comparing at least one object field-value pair of the first non-shadow system of record to a corresponding node field-value pair of a node profile maintained by the one or more processors of the first set of servers; and
assigning, by the one or more processors of the first set of servers, a connection confidence score to the connection profile based on the health score of the first non-shadow system of record.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
identifying, by the one or more processors of the first set of servers, for each employee identified by a respective shadow contact record object with which the shadow account record object is linked in the first shadow system of record, a member node profile linked to the first group node profile, the member node profile including node field-value pairs generated from object field-value pairs of the respective shadow contact record object;
wherein generating, by the one or more processors of the first set of servers, the connection profile comprises generating the connection profile based on the identified member node profile.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
identifying, by the one or more processors of the first set of servers, a first member node profile corresponding to at least one employee of the first company;
determining, by the one or more processors of the first set of servers, from the first member node profile, that an object field-value pair of a candidate shadow contact record object corresponding to the at least one employee does not match a node field-value pair of the first member node profile identified as current; and
restricting, by the one or more processors, use of the candidate shadow contact record object for generating the connection profile based on the object field-value pair not matching the node field-value pair of the first member node profile.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
generating, by the one or more processors of the first set of servers, a third group node profile corresponding to a third company using i) a respective shadow record object included in the first shadow system of record of the first company and ii) a corresponding shadow record object included in a second shadow system of record of the second company, the respective shadow record object and the corresponding shadow record object identifying the third company.

### Claim 9 (depends on 8)

The method of claim 8, further comprising:
identifying, by the one or more processors of the first set of servers, at least one common member node profile identified by shadow contact record objects of the first shadow system of record and the second shadow system of record; and
generating, by the one or more processors of the first set of servers, the connection profile between the first group node profile and the second group node profile based on the at least one common member node profile.

### Claim 10 (depends on 8)

The method of claim 8, further comprising:
generating, by the one or more processors of the first set of servers, the third group node profile corresponding to the third company responsive to determining that the third group node profile does not exist.

### Claim 11 (depends on 1)

The method of claim 1, wherein the shadow account record object is linked to one or more third shadow record objects of a third record object type, each third shadow record object of the one or more third shadow record objects identifying a respective opportunity, the method further comprising generating the connection profile between the first group node profile and the second group node profile based on the one or more third shadow record objects.

### Claim 12 (depends on 11)

The method of claim 11, further comprising generating the connection profile based on a time difference between a time of the connection profile and a timestamp of at least one third shadow record object indicating when the at least one third shadow record object was last updated.

### Claim 13 (depends on 6)

The method of claim 6, further comprising:
updating, by the one or more processors of the first set of servers, the member node profile responsive to an electronic activity matching the member node profile; and
updating, by the one or more processors of the first set of servers, the connection profile between the first group node profile and the second group node profile responsive to updating the member node profile.

### Claim 14 (depends on 1)

The method of claim 1, further comprising generating, by the one or more processors, a second connection profile between the second group node profile and the first group node profile using a second shadow system of record generated from a second non-shadow system of record maintained by the particular second company by:
identifying, by the one or more processors of the first set of servers, from one or more shadow account record objects of the account record object type included in the second shadow system of record, a particular shadow account record object identifying the first company, the particular shadow account record object linked to one or more shadow contact record objects of the contact record object type included in the second shadow system of record;
identifying, by the one or more processors, from the one or more shadow contact record objects included in the second shadow system of record, one or more particular shadow contact record objects that are linked to the particular shadow account record object in the second shadow system of record, each particular shadow contact record object of the one or more shadow contact record objects identifying a respective employee of the first company identified by the particular shadow account record object; and
generating, by the one or more processors, the second connection profile between the second group node profile and the first group node profile based on the one or more particular shadow contact record objects maintained in the second shadow system of record that are linked to the particular shadow account record object and not the one or more particular shadow contact record objects that are maintained in the first shadow system of record.

### Claim 15

A system comprising:
one or more processors of a first set of servers configured by machine-readable instructions to:
access, via a connection to a second set of servers on which a first non-shadow system of record is maintained by a first company that has provided access to the first non-shadow system of record to the one or more processors of the first set of servers, the first non-shadow system of record including a plurality of non-shadow account record objects of an account record object type, each non-shadow account record object of the plurality of account record objects i) identifying a respective second company of a plurality of second companies and ii) linked to one or more non-shadow contact record objects of a contact record object type, each non-shadow contact record object of the one or more contact record objects identifying an employee of the second company identified in the non-shadow account record object to which the non-shadow contact record object is linked;
generate, responsive to accessing the first non-shadow system of record, a first shadow system of record that is stored on the first set of servers, the first shadow system of record including i) a plurality of shadow account record objects that include data of respective non-shadow account record objects of the first non-shadow system of record, ii) a plurality of shadow contact record objects, each shadow contact record object linked to a respective shadow account record object and including data of a respective non-shadow contact record object linked to a corresponding non-shadow account record object of the first non-shadow system of record;
maintain a first group node profile identifying the first company of the plurality of companies and a second group node profile identifying a particular second company of the plurality of companies;
maintain a plurality of member node profiles, each member node profile identifying a person and including data included in a corresponding non-shadow contact record object of the first non-shadow system of record, each member node profile including node field-value pairs that are configured to be updated using electronic activities transmitted or received via one or more electronic accounts associated with the member node profile;
for the first shadow system of record of the first company:
identify, from the plurality of shadow account record objects, a particular shadow account record object included in the first shadow system of record identifying the particular second company;
identify, a plurality of particular shadow contact record objects that are linked to the particular shadow account record object in the first shadow system of record, each particular shadow contact record object of the plurality of particular shadow contact record objects identifying a respective employee of the particular second company identified by the particular shadow account record object;
validate, for each identified particular shadow contact record object of the plurality of particular shadow contact record objects, that the person identified by the particular shadow contact record object is a current employee of the particular second company by comparing data included in the particular shadow contact record object and node field-value pairs of a corresponding member node profile, the node field-value pairs of the corresponding member node profile updated using emails transmitted or received via one or more electronic accounts associated with the member node profile;
generate, responsive to determining, for each identified particular shadow contact record object, that the person identified by the particular shadow contact record object is a current employee of the particular second company, a connection profile between the first group node profile and the second group node profile based on the particular shadow contact record objects, wherein the connection profile is based on at least one of a number of particular shadow contact record objects or electronic activities transmitted or received via electronic accounts associated with the particular shadow contact record objects; and
store, in at least one data structure of the first set of servers, an association between the first group node profile corresponding to the first company, the second group node profile corresponding to the particular second company, and the connection profile.

### Claim 16 (depends on 15)

The system of claim 15, wherein the one or more processors are further configured to:
access a second non-shadow system of record, the second non-shadow system of record maintained by the particular second company; and
wherein to generate the connection profile between the first group node profile and the second group node profile, the one or more processors are configured to generate the connection profile using data stored in a second shadow system of record corresponding to the second non-shadow system of record, the second shadow system of record generated by the one or more processors of the first set of servers using data included in the second non-shadow system of record.

### Claim 17 (depends on 15)

The system of claim 15, wherein the one or more processors are further configured to generate the connection profile based on a timestamp indicating when at least one shadow contact record object of the plurality of shadow contact record objects linked to the particular shadow account record object was last updated.

### Claim 18 (depends on 15)

The system of claim 15, wherein the one or more processors are further configured to:
determine a health score of the first non-shadow system of record by comparing at least one object field-value pair of the first non-shadow system of record to a corresponding node field-value pair of a node profile maintained by the one or more processors of the first set of servers; and
assign a connection confidence score to the connection profile based on the health score of the first non-shadow system of record.

### Claim 19 (depends on 15)

The system of claim 15, wherein the one or more processors are further configured to:
identify, for each employee identified by a respective shadow contact record object with which the shadow account record object is linked in the first shadow system of record, a member node profile linked to the first group node profile, the member node profile including node field-value pairs generated from object field-value pairs of the respective shadow contact record object;
wherein the one or more processors are configured to generate the connection profile by generating the connection profile based on the identified member node profile.

### Claim 20

A non-transitory computer-readable storage medium having instructions embodied thereon, the instructions being executable by one or more processors of a first set of servers to:
access, via a connection to a second set of servers on which a first non-shadow system of record is maintained by a first company that has provided access to the first non-shadow system of record to the one or more processors of the first set of servers, the first non-shadow system of record including a plurality of non-shadow account record objects of an account record object type, each non-shadow account record object of the plurality of account record objects i) identifying a respective second company of a plurality of second companies and ii) linked to one or more non-shadow contact record objects of a contact record object type, each non-shadow contact record object of the one or more contact record objects identifying an employee of the second company identified in the non-shadow account record object to which the non-shadow contact record object is linked;
generate, responsive to accessing the first non-shadow system of record, a first shadow system of record that is stored on the first set of servers, the first shadow system of record including i) a plurality of shadow account record objects that include data of respective non-shadow account record objects of the first non-shadow system of record, ii) a plurality of shadow contact record objects, each shadow contact record object linked to a respective shadow account record object and including data of a respective non-shadow contact record object linked to a corresponding non-shadow account record object of the first non-shadow system of record;
maintain a first group node profile identifying the first company of the plurality of companies and a second group node profile identifying a particular second company of the plurality of companies;
maintain a plurality of member node profiles, each member node profile identifying a person and including data included in a corresponding non-shadow contact record object of the first non-shadow system of record, each member node profile including node field-value pairs that are configured to be updated using electronic activities transmitted or received via one or more electronic accounts associated with the member node profile;
for the first shadow system of record of the first company:
identify, from the plurality of shadow account record objects, a particular shadow account record object included in the first shadow system of record identifying the particular second company;
identify, a plurality of particular shadow contact record objects that are linked to the particular shadow account record object in the first shadow system of record, each particular shadow contact record object of the plurality of particular shadow contact record objects identifying a respective employee of the particular second company identified by the particular shadow account record object;
validate, for each identified particular shadow contact record object of the plurality of particular shadow contact record objects, that the person identified by the particular shadow contact record object is a current employee of the particular second company by comparing data included in the particular shadow contact record object and node field-value pairs of a corresponding member node profile, the node field-value pairs of the corresponding member node profile updated using emails transmitted or received via one or more electronic accounts associated with the member node profile;
generate, responsive to determining, for each identified particular shadow contact record object, that the person identified by the particular shadow contact record object is a current employee of the particular second company, a connection profile between the first group node profile and the second group node profile based on the particular shadow contact record objects, wherein the connection profile is based on at least one of a number of particular shadow contact record objects or electronic activities transmitted or received via electronic accounts associated with the particular shadow contact record objects; and
store, in at least one data structure of the first set of servers, an association between the first group node profile corresponding to the first company, the second group node profile corresponding to the particular second company, and the connection profile.
