IP Library Granted Patent US 12,143,394
Granted Patent B2
US 12,143,394 · App. 17/827,331 · Granted Nov 12, 2024

Method, apparatus, and computer program product for installing and updating third party applications requiring variable host address identification in a group-based communication system

Inventors: Sachin Ranchod (San Francisco, CA); Brian Stephen O'Neill (San Francisco, CA); Amy Dong Shan (Redondo Beach, CA); Steven Chen (San Francisco, CA)
Assignee: Salesforce, Inc.
H04L63/104G06F9/54H04L63/0853H04L65/403H04L67/01H04L67/53
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,143,394
App. No.
17/827,331
Granted
Nov 12, 2024
Kind
B2
Abstract

Embodiments of the present disclosure provide methods, systems, apparatuses, and computer program products that enable client devices to install integrations of a third party application that supports variable host address identification.

Claims (50)

1. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed by at least one processor, perform a method for managing permissions for third-party applications in a group-based communication system, the method comprising:

receiving a defined scopes-and-features request for a third-party application, the defined scopes-and-features request indicating a requested set of permissions associated with a plurality of users of the group-based communication system for the third-party application, wherein the requested set of permissions specifies one or more actions of the third-party application associated with one or more group-based communication system objects associated with the group-based communication system, and wherein each user of a plurality of users is associated with one or more group identifiers;

generating an authentication token configured to enable the requested set of permissions for the third-party application, wherein the authentication token is associated with the defined scopes-and-features request for the third-party application and the one or more group identifiers;

transmitting the authentication token to a third-party application provider associated with the third-party application for validation of the requested set of permissions associated with the third-party application for the one or more group-based communication system objects, wherein the validation of the requested set of permissions comprises validation of the one or more group identifiers; and

storing, in a group-based communication system repository, information related to the requested set of permissions for the third-party application, wherein the information includes the one or more group identifiers.

2. The one or more non-transitory computer-readable media of claim 1 , wherein the one or more actions include at least one of:

viewing a history of the one or more group-based communication system objects, reading the one or more group-based communication system objects, or writing to the one or more group-based communication system objects.

3. The one or more non-transitory computer-readable media of claim 1 , wherein the one or more group-based communication system objects include at least one of: a file object, a search object, a chat object, a reaction object, a channel object, a do not disturb object, an instant message object, or an emoji object.

4. The one or more non-transitory computer-readable media of claim 1 , wherein the defined scopes-and-features request corresponds to a workspace within the group-based communication system and wherein the authentication token enables the requested set of permissions for group-based communication system objects only within the workspace.

5. The one or more non-transitory computer-readable media of claim 1 , wherein the defined scopes-and-features request corresponds to a channel within the group-based communication system and wherein the authentication token enables the requested set of permissions for group-based communication system objects only within the channel.

6. The one or more non-transitory computer-readable media of claim 1 , the method further comprising:

receiving a modification request to modify the defined scopes-and-features request for the third-party application;

in response to the modification request to modify the defined scopes-and-features request, generating an updated set of permissions for the third-party application; and

storing, in the group-based communication system repository, updated information related to the updated set of permissions for the third-party application.

7. The one or more non-transitory computer-readable media of claim 6 , the method further comprising:

generating an updated authentication token configured to enable the updated set of permissions for the third-party application; and

transmitting the updated authentication token to the third-party application provider associated with the third-party application.

8. A method for managing permissions for third-party applications in a group-based communication system comprising:

receiving a defined scopes-and-features request for a third-party application, the defined scopes-and-features request indicating a requested set of permissions associated with a plurality of users of the group-based communication system for the third-party application, wherein the requested set of permissions specifies one or more actions of the third-party application associated with one or more group-based communication system objects associated with the group-based communication system, and wherein each user of a plurality of users is associated with one or more group identifiers;

generating an authentication token configured to enable the requested set of permissions for the third-party application, wherein the authentication token is associated with the defined scopes-and-features request for the third-party application and the one or more group identifiers;

transmitting the authentication token to a third-party application provider associated with the third-party application for validation of the requested set of permissions associated with the third-party application for the one or more group-based communication system objects, wherein the validation of the requested set of permissions comprises validation of the one or more group identifiers; and

storing, in a group-based communication system repository, information related to the requested set of permissions for the third-party application, wherein the information includes the one or more group identifiers.

9. The method of claim 8 , wherein the one or more actions include at least one of:

viewing a history of the one or more group-based communication system objects, reading the one or more group-based communication system objects, or writing to the one or more group-based communication system objects.

10. The method of claim 8 , wherein the one or more group-based communication system objects include at least one of a file object, a search object, a chat object, a reaction object, a channel object, a do not disturb object, an instant message object, or an emoji object.

11. The method of claim 8 , wherein the defined scopes-and-features request corresponds to a workspace within the group-based communication system and wherein the authentication token enables the requested set of permissions for group-based communication system objects only within the workspace.

12. The method of claim 8 , wherein the defined scopes-and-features request corresponds to a channel within the group-based communication system and wherein the authentication token enables the requested set of permissions for group-based communication system objects only within the channel.

13. The method of claim 8 , further comprising:

receiving a modification request to modify the defined scopes-and-features request for the third-party application;

in response to the modification request to modify the defined scopes-and-features request, generating an updated set of permissions for the third-party application; and

storing, in the group-based communication system repository, updated information related to the updated set of permissions for the third-party application.

14. The method of claim 13 , further comprising:

generating an updated authentication token configured to enable the updated set of permissions for the third-party application; and

transmitting the updated authentication token to the third-party application provider associated with the third-party application.

15. A system comprising at least one processor and at least one non-transitory memory storing computer executable instructions that when executed by the at least one processor cause the system to carry out a method for managing permissions for third-party applications in a group-based communication system comprising:

receiving a defined scopes-and-features request for a third-party application, the defined scopes-and-features request indicating a requested set of permissions associated with a plurality of users of the group-based communication system for the third-party application, wherein the requested set of permissions specifies one or more actions of the third-party application associated with one or more group-based communication system objects associated with the group-based communication system, and wherein each user of a plurality of users is associated with one or more group identifiers;

generating an authentication token configured to enable the requested set of permissions for the third-party application, wherein the authentication token is associated with the defined scopes-and-features request for the third-party application and the one or more group identifiers;

transmitting the authentication token to a third-party application provider associated with the third-party application for validation of the requested set of permissions associated with the third-party application for the one or more group-based communication system objects, wherein the validation of the requested set of permissions comprises validation of the one or more group identifiers; and

storing, in a group-based communication system repository, information related to the requested set of permissions for the third-party application, wherein the information includes the one or more group identifiers.

16. The system of claim 15 , wherein the one or more actions include at least one of:

viewing a history of the one or more group-based communication system objects, reading the one or more group-based communication system objects, or writing to the one or more group-based communication system objects.

17. The system of claim 15 , wherein the one or more group-based communication system objects include at least one of a file object, a search object, a chat object, a reaction object, a channel object, a do not disturb object, an instant message object, or an emoji object.

18. The system of claim 15 , wherein the defined scopes-and-features request corresponds to a workspace within the group-based communication system and wherein the authentication token enables the requested set of permissions for group-based communication system objects only within the workspace.

19. The system of claim 15 , wherein the defined scopes-and-features request corresponds to a channel within the group-based communication system and wherein the authentication token enables the requested set of permissions for group-based communication system objects only within the channel.

20. The system of claim 15 , the method further comprising:

receiving a request to modify the defined scopes-and-features request for the third-party application;

in response to the request to modify the defined scopes-and-features request, generating an updated set of permissions for the third-party application;

generating an updated authentication token configured to enable the updated set of permissions for the third-party application;

transmitting the updated authentication token to the third-party application provider associated with the third-party application; and

storing, in the group-based communication system repository, updated information related to the updated set of permissions for the third-party application.