# US 11,451,639 B1 · Application integration into user profiles within a communication platform

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

- Number: US 11,451,639 B1
- Document ID: US11451639B1
- Status: Granted
- Kind: B1
- Application number: 17/334,262
- Filed: 2021-05-28
- Granted: 2022-09-20
- Earliest claimed: 2021-05-28
- Assignees: Slack Technologies, LLC
- Applicants: Slack Technologies, Inc.
- Inventors: Edward Zagat; Neville Bowers; Maxwell Hayman; Michael Brevoort
- Web page: https://patentgrep.com/patent/US11451639B1

## CPC

- H04L 67/306: User profiles
- G06F 16/9535: Search customisation based on user profiles and personalisation
- G06F 16/9538: Presentation of query results
- H04L 67/53: using third party service providers
- H04L 67/535: {Tracking the activity of the user (network monitoring arrangements H04L43/00; recording of computer activity G06F11/34)}
- H04L 67/60: Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources (admission control or resource allocation H04L47/70)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Techniques for providing an enhanced user profile to provide relevant information to a user requesting to view a user profile associated with another user. In an example, a first user submits a request to view a user profile associated with a second user. In response to receiving the request, the communication platform identifies one or more communication objects (e.g., communication channels, direct messaging instances, messages, threads, etc.) and/or one or more applications (third-party applications, first party applications, etc.) associated with the second user and/or the first user. The communication platform causes a display of indicator(s) associated with the communication object(s) and/or application(s) in association with the user profile, such as to enable efficient access to the associated communication object(s) and/or application(s). Additionally, the communication platform can identify additional contacts of the second user and/or inferred characteristics of the second user to present in association with the user profile.

## Claims

### Claim 1

A method, implemented at least in part by one or more computing devices of a communication platform, comprising:
receiving, from a client associated with a first user account of a first user of the communication platform, a request to view a user profile associated with a second user account of a second user of the communication platform;
based at least in part on the request, identifying a third-party application associated with the first user account and the second user account, wherein the third-party application is identified based at least in part on a determination that interactions between the second user account and the third-party application meet or exceed a threshold level of interactions;
accessing third-party application data associated with a third-party account corresponding to the second user; and
causing display of a user profile interface via the client, the user profile interface comprising user data associated with the user profile and the third-party application data.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
receiving, from the client and via the user profile interface, an input associated with the third-party application data;
sending the input to the third-party application;
receiving response data based at least in part on the input; and
causing display of the response data via the user profile interface.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
identifying a first characteristic associated with the first user account and a second characteristic associated with the second user account;
identifying a relationship between the first user and the second user based at least in part on the first characteristic and the second characteristic; and
determining, based at least in part on the relationship, that the first user account is permitted access to the third-party application data,
wherein accessing the third-party application data is based at least in part on a second determination that the first user account is permitted access to the third-party application data.

### Claim 4 (depends on 1)

The method of claim 1, wherein the third-party application is a first third-party application, the method further comprising:
identifying a second third-party application associated with the second user account;
determining that a user preference associated with the first user account includes a preference to not view data associated with the second third-party application; and
in response to a second determination that the user preference includes the preference to not view the data, withholding the data associated with the second third-party application from being presented via the user profile interface.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
determining that a user preference associated with the second user account includes a preference to not publish first data associated with the third-party application; and
in response to a second determination that the user preference includes the preference to not publish the first data, withholding the first data from being presented via the user profile interface,
wherein the third-party application data comprises second data associated with the third-party application.

### Claim 6 (depends on 1)

The method of claim 1, wherein the third-party application is a first third-party application, the method further comprising:
identifying a second third-party application associated with the second user account;
determining a first characteristic associated with the first third-party application and second characteristic associated with the second third-party application; and
ranking the first third-party application and the second third-party application based at least in part on the first characteristic and the second characteristic,
wherein causing the display of the first third-party application is based at least in part on the ranking.

### Claim 7 (depends on 6)

The method of claim 6, wherein the first characteristic and the second characteristic comprise at least one of:
a frequency of use of the first third-party application and the second third-party application;
a recency of use of the first third-party application and the second third-party application;
a priority indication associated with first third-party application data associated with the first third-party application and second third-party application data associated with the second third-party application; or
a level of interaction that is enabled by the first third-party application and the second third-party application.

### Claim 8

A system comprising:
one or more processors; and
one or more non-transitory computer readable media storing instructions that, when executed, cause the system to:
receive, from a client associated with a first user account of a first user of a communication platform, a request to view a user profile associated with a second user account of a second user of the communication platform;
based at least in part on the request, identify a third-party application associated with the first user account and the second user account, wherein the third-party application is identified based at least in part on a determination that interactions between the second user account and the third-party application meet or exceed a threshold level of interactions;
access third-party application data associated with a third-party account corresponding to the second user; and
cause display of a user profile interface via the client, the user profile interface comprising user data associated with the user profile and the third-party application data.

### Claim 9 (depends on 8)

The system of claim 8, wherein the instructions further cause the system to:
receive, from the client and via the user profile interface, an input associated with the third-party application data;
send the input to the third-party application;
receive response data based at least in part on the input; and
cause display of the response data via the user profile interface.

### Claim 10 (depends on 8)

The system of claim 8, wherein the instructions further cause the system to:
identify a first characteristic associated with the first user account and a second characteristic associated with the second user account;
identify a relationship between the first user and the second user based at least in part on the first characteristic and the second characteristic; and
determine, based at least in part on the relationship, that the first user account is permitted access to the third-party application data,
wherein accessing the third-party application data is based at least in part on a second determination that the first user account is permitted access to the third-party application data.

### Claim 11 (depends on 8)

The system of claim 8, wherein the third-party application is a first third-party application, and wherein the instructions further cause the system to:
identify a second third-party application associated with the second user account;
determine that a user preference associated with the first user account includes a preference to not view data associated with the second third-party application; and
in response to a second determination that the user preference includes the preference to not view the data, withhold the data associated with the second third-party application from being presented via the user profile interface.

### Claim 12 (depends on 8)

The system of claim 8, wherein the instructions further cause the system to:
determine that a user preference associated with the second user account includes a preference to not publish first data associated with the third-party application; and
in response to a second determination that the user preference includes the preference to not publish the first data, withhold the first data from being presented via the user profile interface,
wherein the third-party application data comprises second data associated with the third-party application.

### Claim 13 (depends on 8)

The system of claim 8, wherein the third-party application is a first third-party application, and wherein the instructions further cause the system to:
identify a second third-party application associated with the second user account;
determine a first characteristic associated with the first third-party application and second characteristic associated with the second third-party application; and
rank the first third-party application and the second third-party application based at least in part on the first characteristic and the second characteristic,
wherein causing the display of the first third-party application is based at least in part on the ranking.

### Claim 14 (depends on 13)

The system of claim 13, wherein the first characteristic and the second characteristic comprise at least one of:
a frequency of use of the first third-party application and the second third-party application;
a recency of use of the first third-party application and the second third-party application;
a priority indication associated with first third-party application data associated with the first third-party application and second third-party application data associated with the second third-party application; or
a level of interaction that is enabled by the first third-party application and the second third-party application.

### Claim 15

One or more non-transitory computer readable media storing instructions that, when executed, cause one or more processors to:
receive, from a client associated with a first user account of a first user of a communication platform, a request to view a user profile associated with a second user account of a second user of the communication platform;
based at least in part on the request, identify a third-party application associated with the first user account and the second user account, wherein the third-party application is identified based at least in part on a determination that interactions between the second user account and the third-party application meet or exceed a threshold level of interactions;
access third-party application data associated with a third-party account corresponding to the second user; and
cause display of a user profile interface via the client, the user profile interface comprising user data associated with the user profile and the third-party application data.

### Claim 16 (depends on 15)

The one or more non-transitory computer readable media of claim 15, wherein the instructions further cause the one or more processors to:
receive, from the client and via the user profile interface, an input associated with the third-party application data;
send the input to the third-party application;
receive response data based at least in part on the input; and
cause display of the response data via the user profile interface.

### Claim 17 (depends on 15)

The one or more non-transitory computer readable media of claim 15, wherein the instructions further cause the one or more processors to:
identify a first characteristic associated with the first user account and a second characteristic associated with the second user account;
identify a relationship between the first user and the second user based at least in part on the first characteristic and the second characteristic; and
determine, based at least in part on the relationship, that the first user account is permitted access to the third-party application data,
wherein accessing the third-party application data is based at least in part on a second determination that the first user account is permitted access to the third-party application data.

### Claim 18 (depends on 15)

The one or more non-transitory computer readable media of claim 15, wherein the third-party application is a first third-party application, and wherein the instructions further cause the one or more processors to:
identify a second third-party application associated with the second user account;
determine that a user preference associated with the first user account includes a preference to not view data associated with the second third-party application; and
in response to a second determination that the user preference includes the preference to not view the data, withhold the data associated with the second third-party application from being presented via the user profile interface.

### Claim 19 (depends on 15)

The one or more non-transitory computer readable media of claim 15, wherein the instructions further cause the one or more processors to:
determine that a user preference associated with the second user account includes a preference to not publish first data associated with the third-party application; and
in response to a second determination that the user preference includes the preference to not publish the first data, withhold the first data from being presented via the user profile interface,
wherein the third-party application data comprises second data associated with the third-party application.

### Claim 20 (depends on 15)

The one or more non-transitory computer readable media of claim 15, wherein the third-party application is a first third-party application, and wherein the instructions further cause the one or more processors to:
identify a second third-party application associated with the second user account;
determine a first characteristic associated with the first third-party application and second characteristic associated with the second third-party application; and
rank the first third-party application and the second third-party application based at least in part on the first characteristic and the second characteristic,
wherein causing the display of the first third-party application is based at least in part on the ranking.
