US 12,066,983 B2
Building collaborative data processing flows
Kongposh Sapru, Redwood City, CA (US); Joshua Goodman, Portland, OR (US); and Alexander John Trzeciak, San Francisco, CA (US)
Assigned to Salesforce, Inc., San Francisco, CA (US)
Filed by Salesforce, inc., San Francisco, CA (US)
Filed on Jan. 23, 2023, as Appl. No. 18/158,228.
Application 18/158,228 is a continuation of application No. 16/546,677, filed on Aug. 21, 2019, granted, now 11,561,936.
Prior Publication US 2023/0161738 A1, May 25, 2023
Int. Cl. G06F 16/176 (2019.01); G06F 16/25 (2019.01); G06Q 30/016 (2023.01); H04L 67/131 (2022.01)
CPC G06F 16/176 (2019.01) [G06F 16/252 (2019.01); G06Q 30/016 (2013.01); H04L 67/131 (2022.05)] 20 Claims
OG exemplary drawing
 
1. A method for managing real-time collaboration for a data processing flow at an application, comprising:
creating, at the application, the data processing flow in response to a first user input sent from a first user device operated by a first user, wherein the first user can access the data processing flow based at least in part on the creating the data processing flow in response to the first user input;
hosting, at the application, the data processing flow based at least in part on the creating the data processing flow, wherein the data processing flow comprises a sequence of data processes associated with data of a database system, and wherein the application provides interactive interfaces of the data processing flow comprising one or more elements representing one or more actions to execute using the data and one or more connectors representing one or more paths for executing the one or more actions at runtime, the one or more actions comprising a read operation, a write operation, a collect operation, a modify operation, or any combination thereof for the data;
receiving a second user input sent from the first user device indicating to share the data processing flow with at least a plurality of users for editing by the plurality of users;
granting the plurality of users access to the data processing flow based at least in part on the second user input indicating to share the data processing flow with at least the plurality of users;
sending data indicating the data processing flow to a plurality of user devices corresponding to the plurality of users based at least in part on the second user input indicating to share the data processing flow;
receiving, at the application and via the interactive interfaces of the data processing flow corresponding to the plurality of user devices, a plurality of user inputs from the plurality of users operating the plurality of user devices in communication with the application;
modifying the data processing flow based at least in part on the received plurality of user inputs; and
sending, via an application programming interface (API) that provides compatibility between the application and the database system, the data processing flow for execution at a device based at least in part on the modifying the data processing flow.