IP Library Granted Patent US 12682022
Granted Patent B2
US 12682022 · App. 18/088,864 · Granted Jul 14, 2026

System, method, and computer program product for workspace creation in embedded applications

Inventors: Jingjing Zhou (Mountain View, CA); Lisa Panda (Mountain View, CA); Dhanraj Jadhav (Mountain View, CA); Neha Kalekar (Mountain View, CA); Lennon Liao (Mountain View, CA)
Assignees: Atlassian US, Inc.; Atlassian Pty, Ltd.
G06F21/12G06F21/31
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 12682022
App. No.
18/088,864
Granted
Jul 14, 2026
Kind
B2
Abstract

Embodiments of the present disclosure provide for improved interoperable data management between a user-accessed software application and an embedded software application. In some contexts, a user-accessed application provides both its own functionality as well as enabling access to functionality of an embedded application. The embedded application is accessed via a data-driven connection that provides several technical advantages and addresses various data interoperability and persistence problems. In some embodiments, a user-accessed application may be configured to provide functionality of multiple embedded applications consistent with the innovations herein described.

Claims (71)

1 . An apparatus comprising at least one processor and at least one non-transitory memory including computer-coded instructions thereon, the computer coded instructions, with the at least one processor, configure the apparatus to:

initiate, via a user-accessed application, a data-driven connection with an embedded application via a user-accessed application account, wherein:

(i) the user-accessed application account is (a) associated with the user-accessed application and (b) independent of an embedded app user account that provides access to one or more first functionalities associated with the embedded application, wherein the one or more first functionalities correspond to a license permission to access the embedded application,

(ii) a first executable code base defining the user-accessed application is at least partially distinct from a second executable code base defining the embedded application, and

(iii) the embedded application corresponds to a user-accessed app representation maintained within the user-accessed application; and

cause rendering of an integrated interface by the user-accessed application, wherein:

(i) the integrated interface comprises an embedded app engagement element that provides access to one or more second functionalities in a context of an embedded app workspace data object through the data-driven connection,

(ii) the one or more second functionalities comprise a level of functionality that is greater than the one or more first functionalities,

(iii) the embedded app workspace data object is structured for processing via the user-accessed application, and

(iv) the embedded app workspace data object is generated using the one or more second functionalities, via the data-driven connection and with the user-accessed application account, agnostic of user permission associated with the user-accessed application account being allowed to access the one or more first functionalities associated with the embedded application, and

in response to user interaction, via the user-accessed application account, with the embedded app engagement element, cause updating of the embedded app workspace data object utilizing the data-driven connection.

2 . The apparatus of claim 1 , wherein the apparatus is further configured to:

receive an authorization token, wherein the authorization token is generated based at least in part on receiving a global embedded application permission to create the embedded app workspace data object.

3 . The apparatus of claim 2 , wherein the apparatus is further configured to:

request a share token associated with the authorization token;

receive the share token, wherein the share token is generated based at least in part on receiving a user-accessed application user permission to create the embedded app workspace data object by the user-accessed application account; and

generate the embedded app workspace data object based at least in part on the share token.

4 . The apparatus of claim 1 , wherein the embedded app workspace data object is generated based at least in part on a user-accessed application user permission to create the embedded app workspace data object by the user-accessed application account.

5 . The apparatus according to claim 1 , wherein the apparatus is further configured to:

grant administrative users with permission to create the embedded app workspace data object via the user-accessed application without the license permission to access the embedded application.

6 . The apparatus according to claim 1 , wherein the apparatus is further configured to:

establish an authenticated session with the embedded application via the user-accessed application based at least in part on user authentication credentials.

7 . The apparatus of claim 1 , wherein the data-driven connection is facilitated by one or more application programming interfaces that enable a user to access particular embedded application functionality based at least in part on an authenticated identity of the user.

8 . The apparatus of claim 1 , wherein the user-accessed application allows access to the one or more first functionalities associated with the embedded application via the data-driven connection enabling communication between the user-accessed application and the embedded application.

9 . The apparatus of claim 1 , wherein the apparatus is further configured to:

transmit information identifying the user-accessed application to the embedded application via the data-driven connection; and

receive embedded app authentication credentials based at least in part on response information to the information identifying the user-accessed application from the embedded application.

10 . The apparatus of claim 1 , wherein the embedded app workspace data object comprises a workspace identifier, one or more page identifiers, and one or more user identifiers.

11 . The apparatus of claim 10 , wherein the embedded app workspace data object comprises one or more embedded app data objects associated with the one or more page identifiers.

12 . The apparatus of claim 11 , wherein the embedded app workspace data object comprises one or more resource links to the one or more embedded app data objects.

13 . A computer-executed method comprising:

initiating, via a user-accessed application, a data-driven connection with an embedded application via a user-accessed application account, wherein:

(i) the user-accessed application account is (a) associated with the user-accessed application and (b) independent of an embedded app user account that provides access to one or more first functionalities associated with the embedded application, wherein the one or more first functionalities correspond to a license permission to access the embedded application,

(ii) a first executable code base defining the user-accessed application is at least partially distinct from a second executable code base defining the embedded application, and

(iii) the embedded application corresponds to a user-accessed app representation maintained within the user-accessed application; and

causing rendering of an integrated interface by the user-accessed application, wherein:

(i) the integrated interface comprises an embedded app engagement element that provides access to one or more second functionalities in a context of an embedded app workspace data object through the data-driven connection,

(ii) the one or more second functionalities comprise a level of functionality that is greater than the one or more first functionalities,

(iii) the embedded app workspace data object is structured for processing via the user-accessed application, and

(iv) the embedded app workspace data object is generated using the one or more second functionalities, via the data-driven connection and with the user-accessed application account, agnostic of user permission associated with the user-accessed application account being allowed to access the one or more first functionalities associated with the embedded application, and

in response to user interaction, via the user-accessed application account, with the embedded app engagement element, causing updating of the embedded app workspace data object utilizing the data-driven connection.

14 . The computer-executed method of claim 13 , further comprising:

receiving an authorization token, wherein the authorization token is generated based at least in part on receiving a global embedded application permission to create the embedded app workspace data object.

15 . The computer-executed method of claim 14 , further comprising:

requesting a share token associated with the authorization token;

receiving the share token, wherein the share token is generated based at least in part on receiving a user-accessed application user permission to create the embedded app workspace data object by the user-accessed application account; and

generating the embedded app workspace data object based at least in part on the share token.

16 . The computer-executed method of claim 13 , wherein the embedded app workspace data object is generated based at least in part on a user-accessed application user permission to create the embedded app workspace data object by the user-accessed application account.

17 . The computer-executed method according to claim 13 , further comprising:

granting administrative users with permission to create the embedded app workspace data object via the user-accessed application without the license permission to access the embedded application.

18 . The computer-executed method according to claim 13 , further comprising:

establishing an authenticated session with the embedded application via the user-accessed application based at least in part on user authentication credentials.

19 . The computer-executed method of claim 13 , wherein the data-driven connection is facilitated by one or more application programming interfaces that enable a user to access particular embedded application functionality based at least in part on an authenticated identity of the user.

20 . The computer-executed method of claim 13 , wherein the user-accessed application allows access to the one or more first functionalities associated with the embedded application via the data-driven connection enabling communication between the user-accessed application and the embedded application.

21 . The computer-executed method of claim 13 , further comprising:

transmitting information identifying the user-accessed application to the embedded application via the data-driven connection; and

receiving embedded app authentication credentials based at least in part on response information to the information identifying the user-accessed application from the embedded application.

22 . The computer-executed method of claim 13 , wherein the embedded app workspace data object comprises a workspace identifier, one or more page identifiers, and one or more user identifiers.

23 . The computer-executed method of claim 22 , wherein the embedded app workspace data object comprises one or more embedded app data objects associated with the one or more page identifiers.

24 . The computer-executed method of claim 23 , wherein the embedded app workspace data object comprises one or more resource links to the one or more embedded app data objects.

25 . A computer program product comprising at least one non-transitory computer-readable storage medium storing computer program code that, in execution with at least one processor, configures the at least one processor for:

initiating, via a user-accessed application, a data-driven connection with an embedded application via a user-accessed application account, wherein:

(i) the user-accessed application account is (a) associated with the user-accessed application and (b) independent of an embedded app user account that provides access to one or more first functionalities associated with the embedded application, wherein the one or more first functionalities correspond to a license permission to access the embedded application,

(ii) a first executable code base defining the user-accessed application is at least partially distinct from a second executable code base defining the embedded application, and

(iii) wherein the embedded application corresponds to a user-accessed app representation maintained within the user-accessed application; and

causing rendering of an integrated interface by the user-accessed application, wherein:

(i) the integrated interface comprises an embedded app engagement element that provides access to one or more second functionalities in a context of an embedded app workspace data object through the data-driven connection,

(ii) the one or more second functionalities comprise a level of functionality that is greater than the one or more first functionalities,

(iii) the embedded app workspace data object is structured for processing via the user-accessed application, and

(iv) the embedded app workspace data object is generated using the one or more second functionalities, via the data-driven connection and with the user-accessed application account, agnostic of user permission associated with the user-accessed application account being allowed to access the one or more first functionalities associated with the embedded application, and

in response to user interaction, via the user-accessed application account, with the embedded app engagement element, causing updating of the embedded app workspace data object utilizing the data-driven connection.